2 # File:    trigger_icarus.fcl 
    3 # Purpose: Configurations of ICARUS trigger related algorithm. 
    4 # Author:  Gianluca Petrillo (petrillo@slac.stanford.edu) 
    7 # Configurations are provided for algorithms related to triggering. 
    9 # Current offer includes: 
   11 # * trigger gate builder tool configurations: tools to create discriminated 
   12 #     waveforms out of full PMT waveforms 
   15 # 20210727 (petrillo@slac.stanford.edu) 
   16 #   updated the selection of thresholds 
   24 ################################################################################ 
   26 ################################################################################ 
   30   spill_duration: 
"1.6 us" 
   34   POT_per_batch: 5e12 # to be checked
 
   40 #--- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
   44   spill_duration: 
"9.5 us" 
   48   POT_per_batch: 5e12 # to be checked
 
   55 ################################################################################ 
   56 ###  Trigger gate builders 
   57 ################################################################################ 
   59 ### A "trigger gate" is a gate signal (i.e. open or closed vs. time) related 
   60 ### to a PMT channel and typically used for triggering. 
   62 ### We have a few algorithms available, and these are their standard 
   64 ### Note that some of the parameters here are very hard to call "standard" in 
   65 ### that they are just a matter of choice: see e.g. the discrimination 
   71 # icarus_triggergate_basic: basic configuration to be included in the full 
   72 #   algorithm configuration 
   74 # It includes the threshold and a single "universal" baseline level. 
   76 icarus_triggergate_basic: {
 
   78   # waveform baseline [ADC counts] 
   81   # thresholds for channel trigger gate opening [ADC counts] 
   82   # roughly equivalent to the amplitudes of 
   83   # [ 0.5, 4.0, 7.0, 12.0 ] photoelectrons or 
   84   # [ 3.5, 25.0, 50.0, 75.0 ] mV 
   85   ChannelThresholds: [ 30, 200, 400, 600 ]
 
   87 } # icarus_triggergate_basic
 
   90 # the pairing scheme is: 
   92 #    ~50 ~50 ~50 ~50 ~50 ~50 ~50 ~50 ~50 ~50 ~50 
   93 #   | cm| cm| cm| cm| cm| cm| cm| cm| cm| cm| cm| 
   94 #   |   |   |   |   |   |   |   |   |   |   |   | 
   95 #   '   '   '   '   '   '   '   '   '   '   '   ' 
   96 #      ,O   O.         ,O   O.         ,O   O.     ---------. 
   98 #   O'         `O   O'         `O   O'         `O  ---------< 
  100 #       O---O          (O) (O)          O---O      ---------<' 
  102 #   O.         ,O   O.         ,O   O.         ,O  ---------<' 
  103 #     \       /       \       /       \       /              `~52 cm 
  104 #      `O   O'         `O   O'         `O   O'     ----------' 
  106 # replicated thrice per side per module; 
  107 # three rows below represent each of these units. 
  109 # The channel numbering scheme is: 
  116 # ||   |        4    7             14 | 17             24   27      | 
  117 # ||   |   1              9   11      |      19   21             29 | 
  118 # ||   |        3    6             13 | 16             23   26      | 
  119 # ||   |   0              8   10      |      18   20             28 | 
  120 # ||   |        2    5             12 | 15             22   25      | 
  123 # ##=====================================================================> z 
  126 # (patterns can be generated with the `LVDSpatterns.py` script distributed 
  132   [   0,  2 ], [   1,  4 ], [   3,  6 ], [   5,  8 ], [   7,  9 ], [  10, 12 ], [  11, 14 ], [  13 ],    
 
  133   [  15, 18 ], [  16 ],     [  17, 19 ], [  20, 22 ], [  21, 24 ], [  23, 26 ], [  25, 28 ], [  27, 29 ],
 
  134   [  30, 32 ], [  31, 34 ], [  33, 36 ], [  35, 38 ], [  37, 39 ], [  40, 42 ], [  41, 44 ], [  43 ],    
 
  135   [  45, 48 ], [  46 ],     [  47, 49 ], [  50, 52 ], [  51, 54 ], [  53, 56 ], [  55, 58 ], [  57, 59 ],
 
  136   [  60, 62 ], [  61, 64 ], [  63, 66 ], [  65, 68 ], [  67, 69 ], [  70, 72 ], [  71, 74 ], [  73 ],    
 
  137   [  75, 78 ], [  76 ],     [  77, 79 ], [  80, 82 ], [  81, 84 ], [  83, 86 ], [  85, 88 ], [  87, 89 ],
 
  140   [  90, 92 ], [  91, 94 ], [  93, 96 ], [  95, 98 ], [  97, 99 ], [ 100,102 ], [ 101,104 ], [ 103 ],    
 
  141   [ 105,108 ], [ 106 ],     [ 107,109 ], [ 110,112 ], [ 111,114 ], [ 113,116 ], [ 115,118 ], [ 117,119 ],
 
  142   [ 120,122 ], [ 121,124 ], [ 123,126 ], [ 125,128 ], [ 127,129 ], [ 130,132 ], [ 131,134 ], [ 133 ],    
 
  143   [ 135,138 ], [ 136 ],     [ 137,139 ], [ 140,142 ], [ 141,144 ], [ 143,146 ], [ 145,148 ], [ 147,149 ],
 
  144   [ 150,152 ], [ 151,154 ], [ 153,156 ], [ 155,158 ], [ 157,159 ], [ 160,162 ], [ 161,164 ], [ 163 ],    
 
  145   [ 165,168 ], [ 166 ],     [ 167,169 ], [ 170,172 ], [ 171,174 ], [ 173,176 ], [ 175,178 ], [ 177,179 ],
 
  148   [ 180,182 ], [ 181,184 ], [ 183,186 ], [ 185,188 ], [ 187,189 ], [ 190,192 ], [ 191,194 ], [ 193 ],    
 
  149   [ 195,198 ], [ 196 ],     [ 197,199 ], [ 200,202 ], [ 201,204 ], [ 203,206 ], [ 205,208 ], [ 207,209 ],
 
  150   [ 210,212 ], [ 211,214 ], [ 213,216 ], [ 215,218 ], [ 217,219 ], [ 220,222 ], [ 221,224 ], [ 223 ],    
 
  151   [ 225,228 ], [ 226 ],     [ 227,229 ], [ 230,232 ], [ 231,234 ], [ 233,236 ], [ 235,238 ], [ 237,239 ],
 
  152   [ 240,242 ], [ 241,244 ], [ 243,246 ], [ 245,248 ], [ 247,249 ], [ 250,252 ], [ 251,254 ], [ 253 ],    
 
  153   [ 255,258 ], [ 256 ],     [ 257,259 ], [ 260,262 ], [ 261,264 ], [ 263,266 ], [ 265,268 ], [ 267,269 ],
 
  156   [ 270,272 ], [ 271,274 ], [ 273,276 ], [ 275,278 ], [ 277,279 ], [ 280,282 ], [ 281,284 ], [ 283 ],    
 
  157   [ 285,288 ], [ 286 ],     [ 287,289 ], [ 290,292 ], [ 291,294 ], [ 293,296 ], [ 295,298 ], [ 297,299 ],
 
  158   [ 300,302 ], [ 301,304 ], [ 303,306 ], [ 305,308 ], [ 307,309 ], [ 310,312 ], [ 311,314 ], [ 313 ],    
 
  159   [ 315,318 ], [ 316 ],     [ 317,319 ], [ 320,322 ], [ 321,324 ], [ 323,326 ], [ 325,328 ], [ 327,329 ],
 
  160   [ 330,332 ], [ 331,334 ], [ 333,336 ], [ 335,338 ], [ 337,339 ], [ 340,342 ], [ 341,344 ], [ 343 ],    
 
  161   [ 345,348 ], [ 346 ],     [ 347,349 ], [ 350,352 ], [ 351,354 ], [ 353,356 ], [ 355,358 ], [ 357,359 ]
 
  166 ################################################################################ 
  167 ### PMT channels with issues 
  170 # the following PMT were found to have issues during commissioning 
  171 # on January 2021 (or earlier). 
  172 # See e.g. SBN DocDB 20696 (see plots on slide 7). 
  175    70, 106, 217,                     # 
PMT not working [SBN DocDB 20696]
 
  176    54,  58,  67,  98, 112, 153, 254  # hot channels [SBN DocDB 20696] 
 
  179 # default selection of PMT channels to ignore 
  183 ################################################################################ 
  185 ### icarus_dynamictriggergate: variable length gates 
  187 icarus_dynamictriggergate: {
 
  189   tool_type: DynamicTriggerGateBuilderTool
 
  191   @table::icarus_triggergate_basic
 
  193 } # icarus_dynamictriggergate
 
  196 ################################################################################ 
  198 ### icarus_dynamictriggergate: fixed length gates 
  200 icarus_fixedtriggergate: {
 
  202   tool_type: FixedTriggerGateBuilderTool
 
  204   @table::icarus_triggergate_basic
 
  206   # minimum duration of a trigger gate 
  209 } # icarus_fixedtriggergate
 
  213 ################################################################################ 
  214 icarus_region_finder: {
 
  216   # waveform baseline [ADC counts] 
  219   # minimum sampled value for a region to start 
  220   EnablingThreshold: @local::icarus_triggergate_basic.ChannelThresholds[0]
 
  222   # sampled value below which a region ends (default: as `EnablingThreshold`) 
  223   # DisablingThreshold: 5 
  225   # how many samples above threshold for a region to start 
  226   MinSamplesAboveThreshold: 3  # 
default 
  228   # how many samples below threshold for a region to end 
  229   # (default: as `MinSamplesAboveThreshold`) 
  230   # MinSamplesBelowThreshold: 3 
  232 } # icarus_region_finder
 
  235 ################################################################################ 
  236 ###  Legacy configurations 
  237 ################################################################################ 
  239 ### this pairing scheme is equivalent to the one in 
  240 ### `icarus_trigger_channel_pairings` but coded with the old PMT mapping 
  243 # The channel numbering scheme is: 
  255 icarus_trigger_channel_pairings_single_wire_geo: [
 
  258   [   0,  4 ], [   2,  8 ], [  12,  6 ], [  10, 16 ], [  14, 18 ], [  20, 24 ], [  22, 28 ], [  26 ],
 
  259   [  30, 36 ], [  32 ],     [  34, 38 ], [  40, 44 ], [  42, 48 ], [  46, 52 ], [  50, 56 ], [  54, 58 ],
 
  260   [  60, 64 ], [  62, 68 ], [  66, 72 ], [  70, 76 ], [  74, 78 ], [  80, 84 ], [  82, 88 ], [  86 ],
 
  261   [  90, 96 ], [  92 ],     [  94, 98 ], [ 100,104 ], [ 106,112 ], [ 102,108 ], [ 110,116 ], [ 114,118 ],
 
  262   [ 120,124 ], [ 122,128 ], [ 126,132 ], [ 130,136 ], [ 134,138 ], [ 140,144 ], [ 142,148 ], [ 146 ],
 
  263   [ 150,156 ], [ 152 ],     [ 154,158 ], [ 160,164 ], [ 162,168 ], [ 166,172 ], [ 170,176 ], [ 174,178 ],
 
  266   [   1,  5 ], [   3,  9 ], [  13,  7 ], [  11, 17 ], [  15, 19 ], [  21, 25 ], [  23, 29 ], [  27 ],
 
  267   [  31, 37 ], [  33 ],     [  35, 39 ], [  41, 45 ], [  43, 49 ], [  47, 53 ], [  51, 57 ], [  55, 59 ],
 
  268   [  61, 65 ], [  63, 69 ], [  67, 73 ], [  71, 77 ], [  75, 79 ], [  81, 85 ], [  83, 89 ], [  87 ],
 
  269   [  91, 97 ], [  93 ],     [  95, 99 ], [ 101,105 ], [ 107,113 ], [ 103,109 ], [ 111,117 ], [ 115,119 ],
 
  270   [ 121,125 ], [ 123,129 ], [ 127,133 ], [ 131,137 ], [ 135,139 ], [ 141,145 ], [ 143,149 ], [ 147 ],
 
  271   [ 151,157 ], [ 153 ],     [ 155,159 ], [ 161,165 ], [ 163,169 ], [ 167,173 ], [ 171,177 ], [ 175,179 ],
 
  274   [ 180,184 ], [ 182,188 ], [ 192,186 ], [ 190,196 ], [ 194,198 ], [ 200,204 ], [ 202,208 ], [ 206 ],
 
  275   [ 210,216 ], [ 212 ],     [ 214,218 ], [ 220,224 ], [ 222,228 ], [ 226,232 ], [ 230,236 ], [ 234,238 ],
 
  276   [ 240,244 ], [ 242,248 ], [ 246,252 ], [ 250,256 ], [ 254,258 ], [ 260,264 ], [ 262,268 ], [ 266 ],
 
  277   [ 270,276 ], [ 272 ],     [ 274,278 ], [ 280,284 ], [ 286,292 ], [ 282,288 ], [ 290,296 ], [ 294,298 ],
 
  278   [ 300,304 ], [ 302,308 ], [ 306,312 ], [ 310,316 ], [ 314,318 ], [ 320,324 ], [ 322,328 ], [ 326 ],
 
  279   [ 330,336 ], [ 332 ],     [ 334,338 ], [ 340,344 ], [ 342,348 ], [ 346,352 ], [ 350,356 ], [ 354,358 ],
 
  282   [ 181,185 ], [ 183,189 ], [ 193,187 ], [ 191,197 ], [ 195,199 ], [ 201,205 ], [ 203,209 ], [ 207 ],
 
  283   [ 211,217 ], [ 213 ],     [ 215,219 ], [ 221,225 ], [ 223,229 ], [ 227,233 ], [ 231,237 ], [ 235,239 ],
 
  284   [ 241,245 ], [ 243,249 ], [ 247,253 ], [ 251,257 ], [ 255,259 ], [ 261,265 ], [ 263,269 ], [ 267 ],
 
  285   [ 271,277 ], [ 273 ],     [ 275,279 ], [ 281,285 ], [ 287,293 ], [ 283,289 ], [ 291,297 ], [ 295,299 ],
 
  286   [ 301,305 ], [ 303,309 ], [ 307,313 ], [ 311,317 ], [ 315,319 ], [ 321,325 ], [ 323,329 ], [ 327 ],
 
  287   [ 331,337 ], [ 333 ],     [ 335,339 ], [ 341,345 ], [ 343,349 ], [ 347,353 ], [ 351,357 ], [ 355,359 ]
 
  289 ] # icarus_trigger_channel_pairings_single_wire_geo
 
  292 ################################################################################ 
BEGIN_PROLOG icarus_trigger_channel_ignore
 
BEGIN_PROLOG icarus_trigger_channel_pairings
 
BEGIN_PROLOG GateDuration
 
BEGIN_PROLOG BNB_settings
 
BEGIN_PROLOG icarus_trigger_channel_ignore_202101