Skip to content

Commit 9ae0b8f

Browse files
committed
add special grouping due to dead 32 channels on collection plane
1 parent dc64c2b commit 9ae0b8f

1 file changed

Lines changed: 14 additions & 5 deletions

File tree

sbndcode/WireCell/cfg/pgrapher/experiment/sbnd/chndb-base.jsonnet

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,14 @@ function(params, anode, field, n, rms_cuts=[])
2222
// coherent noise filtering.
2323
// 5638 is the number of channels in a single APA, (1984*2 + 1670),
2424
// including the 6 channel gap.
25-
// The induction planes have to types of ch grouping (due to FEMB),
26-
// one where the grouping is 32 channels wide and one where it is 128 channels wide.
27-
// The collection planes are grouped by 64.
25+
// The induction planes have two types of ch grouping (due to FEMB installation)
26+
// one where the grouping is 32 channels wide and one where it is 128
27+
// (but split into 2 groups of 64) channels wide.
28+
// This grouping is flipped for the same plane in the second APA.
29+
// The collection planes are grouped by 64.
30+
// Due to a group of dead 32 channels in collection plane in APA0,
31+
// we specify separate groups of 32 (dead) and 32 (alive) within that group of 64
32+
// so that coherent noise filtering is applied properly to the alive channels.
2833

2934
groups: [std.range( 0 + g*32 , 0 + (g+1)*32 - 1) for g in std.range(0,25)] + # first section of u0
3035
[std.range( 832 + g*64 , 832 + (g+1)*64 - 1) for g in std.range(0,17)] + # second section of u0
@@ -34,9 +39,13 @@ function(params, anode, field, n, rms_cuts=[])
3439
[std.range(5638 + g*64 , 5638 + (g+1)*64 - 1) for g in std.range(0,17)] + # first section of u1
3540
[std.range(6790 + g*32 , 6790 + (g+1)*32 - 1) for g in std.range(0,25)] + # second section of u1
3641
[std.range(7622 + g*32 , 7622 + (g+1)*32 - 1) for g in std.range(0,25)] + # first section of v1
37-
[std.range(8454 + g*64 , 8454 + (g+1)*64 - 1) for g in std.range(0,17)] + # second section of v1
42+
[std.range(8454 + g*64 , 8454 + (g+1)*64 - 1) for g in std.range(0,17)] + # second section of v1
3843

39-
[std.range(3968 + n * 5638 + g*64 , 3968 + n * 5638 + (g+1)*64 - 1) for g in std.range(0,12)] + # first half of w
44+
[std.range(3968 + n * 5638 + g*64 , 3968 + n * 5638 + (g+1)*64 - 1) for g in std.range(0,2)] + # first three groups of w
45+
[std.range(4160 , 4192 - 1)] + # w apa0 4th group, first 32 dead wire (for completeness)
46+
[std.range(4192 , 4224 - 1)] + # w apa0 4th group, remaining 32 alive wire (next to dead wire)
47+
[std.range(9798 , 9862 - 1)] + # w apa1 4th group of 64 (alive)
48+
[std.range(4224 + n * 5638 + g*64 , 4224 + n * 5638 + (g+1)*64 - 1) for g in std.range(0,8)] + # first half of w (excluding first 4 groups)
4049
[std.range(4806 + n * 5638 + g*64 , 4806 + n * 5638 + (g+1)*64 - 1) for g in std.range(0,12)] , # second half of w
4150

4251
// Externally determined "bad" channels.

0 commit comments

Comments
 (0)