@@ -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