Skip to content

Commit 7178355

Browse files
Merge pull request #606 from SBNSoftware/feature/lynnt_wirecell_teardrops
WireCell NF+SP updates (teardrop mitigation)
2 parents 28c5f9c + 6ca9a98 commit 7178355

6 files changed

Lines changed: 26 additions & 10 deletions

File tree

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

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,18 @@ function(params, anode, field, n, rms_cuts=[])
2020
// For MicroBooNE, channel groups is a 2D list. Each element is
2121
// one group of channels which should be considered together for
2222
// coherent noise filtering.
23-
// 5638 is the number of channels in a single APA, (1984*2 + 1670), including the 6 channel gap.
24-
// 4806 is the number of channels for both induction + half of real collection wires + 6 channel gap
25-
groups: [std.range( 0 + n * 5638 + g*32, 0 + n * 5638 + (g+1)*32 - 1) for g in std.range(0,150)] +
26-
[std.range(4806 + n * 5638 + g*32, 4806 + n * 5638 + (g+1)*32 - 1) for g in std.range(0,26)] ,
23+
// 5638 is the number of channels in a single APA, (1984*2 + 1670),
24+
// 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.
2728

29+
groups: [std.range( 0 + n * 5638 + g*32 , 0 + n * 5638 + (g+1)*32 - 1) for g in std.range(0,26)] + # first section of u
30+
[std.range( 832 + n * 5638 + g*128, 832 + n * 5638 + (g+1)*128 - 1) for g in std.range(0,9)] + # second section of u
31+
[std.range(1984 + n * 5638 + g*128, 1984 + n * 5638 + (g+1)*128 - 1) for g in std.range(0,9)] + # first section of v
32+
[std.range(3136 + n * 5638 + g*32 , 3136 + n * 5638 + (g+1)*32 - 1) for g in std.range(0,26)] + # second section of v
33+
[std.range(3974 + n * 5638 + g*64 , 3974 + n * 5638 + (g+1)*64 - 1) for g in std.range(0,13)] + # first half of w
34+
[std.range(4806 + n * 5638 + g*64 , 4806 + n * 5638 + (g+1)*64 - 1) for g in std.range(0,13)] , # second half of w
2835

2936
// Externally determined "bad" channels.
3037
//

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

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,18 @@ function(params, anode, field, n, rms_cuts=[])
2020
// For MicroBooNE, channel groups is a 2D list. Each element is
2121
// one group of channels which should be considered together for
2222
// coherent noise filtering.
23-
groups: [std.range( 0 + n * 5638 + g*32, 0 + n * 5638 + (g+1)*32 - 1) for g in std.range(0,149)] +
24-
[std.range(4806 + n * 5638 + g*32, 4806 + n * 5638 + (g+1)*32 - 1) for g in std.range(0,25)] ,
23+
// 5638 is the number of channels in a single APA, (1984*2 + 1670),
24+
// 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.
2528

29+
groups: [std.range( 0 + n * 5638 + g*32 , 0 + n * 5638 + (g+1)*32 - 1) for g in std.range(0,26)] + # first section of u
30+
[std.range( 832 + n * 5638 + g*128, 832 + n * 5638 + (g+1)*128 - 1) for g in std.range(0,9)] + # second section of u
31+
[std.range(1984 + n * 5638 + g*128, 1984 + n * 5638 + (g+1)*128 - 1) for g in std.range(0,9)] + # first section of v
32+
[std.range(3136 + n * 5638 + g*32 , 3136 + n * 5638 + (g+1)*32 - 1) for g in std.range(0,26)] + # second section of v
33+
[std.range(3974 + n * 5638 + g*64 , 3974 + n * 5638 + (g+1)*64 - 1) for g in std.range(0,13)] + # first half of w
34+
[std.range(4806 + n * 5638 + g*64 , 4806 + n * 5638 + (g+1)*64 - 1) for g in std.range(0,13)] , # second half of w
2635

2736
// Externally determined "bad" channels.
2837
//

sbndcode/WireCell/cfg/pgrapher/experiment/sbnd/nf.jsonnet

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ function(params, anode, chndbobj, n, name='', dft=default_dft)
6161
wc.tn(single),
6262
],
6363
grouped_filters: [
64-
// wc.tn(grouped),
64+
wc.tn(grouped),
6565
],
6666
channel_status_filters: [
6767
],

sbndcode/WireCell/cfg/pgrapher/experiment/sbnd/params.jsonnet

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ base {
123123
// The "absolute" time (ie, relative to trigger time?) that the lower edge
124124
// of final readout tick #0 should correspond to. This is a
125125
// "fixed" notion.
126-
local tick0_time = -200*wc.us,
126+
local tick0_time = -205*wc.us, // updated in January 2025, front porch in data = 410 ticks
127127

128128
// Open the ductor's gate a bit early.
129129
local response_time_offset = $.det.response_plane / $.lar.drift_speed,

sbndcode/WireCell/cfg/pgrapher/experiment/sbnd/sp-filters.jsonnet

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ local wf(name, data={}) = {
7575
[
7676
lf('ROI_tight_lf', { tau: 0.0185 * wc.megahertz }), // 0.02
7777
lf('ROI_tighter_lf', { tau: 0.145 * wc.megahertz }), // 0.1
78-
lf('ROI_loose_lf', { tau: 0.00175 * wc.megahertz }), // 0.0025
78+
lf('ROI_loose_lf', { tau: 0.006 * wc.megahertz }), // updated from 0.00175 for data teardrop removal
7979

8080
hf('Gaus_tight'),
8181
hf('Gaus_wide', { sigma: 0.10 * wc.megahertz }),

sbndcode/WireCell/cfg/pgrapher/experiment/sbnd/wcls-sim-drift-depoflux-nf-sp.jsonnet

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ local wcls_depoflux_writer = g.pnode({
116116
field_response: wc.tn(tools.field),
117117
tick: 0.5 * wc.us,
118118
window_start: 0.0 * wc.ms,
119-
window_duration: self.tick * 3400,
119+
window_duration: self.tick * params.daq.nticks,
120120
nsigma: 3.0,
121121

122122
reference_time: -1700 * wc.us,

0 commit comments

Comments
 (0)