opticaldetectormodules.fcl
Go to the documentation of this file.
1 #include "trackfinderalgorithms.fcl"
2 #include "calorimetry.fcl"
3 
4 BEGIN_PROLOG
5 
6 ###################################################################
7 # Added July-2013: These are the parameters/modules associated with
8 # the MicroBooNE PMT ADC and FEMs.
9 ###################################################################
10 
11 standard_optdetdigitizer:
12 {
13  module_type: "OptDetDigitizer" # The module we're trying to execute
14  InputModule: "largeant" # The name of the process that generated the photons
15  SimGainSpread: true
16 }
17 
18 ###################################################################
19 
20 
21 standard_beamflashcompat:
22 {
23  module_type: "BeamFlashCompatibilityCheck"
24  TrackModuleLabel: "beziertracker"
25  FlashModuleLabel: "opflash"
26  BezierResolution: 100
27  SingleChannelCut: 4
28  IntegralCut: 4
29 }
30 
31 ###################################################################
32 
33 
34 standard_flashclustermatch:
35 {
36  module_type: "FlashClusterMatch"
37  ClusterModuleLabel: "fuzzycluster"
38  FlashModuleLabel: "opflash"
39  SingleChannelCut: 5
40  IntegralCut: 5
41  MinSptsForOverlap: 5
42  SpacePointAlg: @local::standard_spacepointalg
43  CaloAlg: @local::standard_calorimetryalgmc
44 
45 }
46 
47 ###################################################################
48 
49 
50 standard_fifohistana:
51 {
52  module_type: "FIFOHistogramAna"
53  InputModule: "daq"
54 }
55 
56 ###################################################################
57 
58 #
59 # OpHit finding algorithms
60 #
61 
62 standard_algo_sipm:
63 {
64  Name: "SiPM"
65  ADCThreshold: 13
66  MinWidth: 60
67  SecondThreshold: 1
68  Pedestal: 1500
69 }
70 
71 standard_algo_threshold:
72 {
73  Name: "Threshold"
74  StartADCThreshold : 3
75  EndADCThreshold : 2
76  NSigmaThresholdStart : 5
77  NSigmaThresholdEnd : 3
78 }
79 
80 standard_algo_fixedwindow:
81 {
82  Name: "FixedWindow"
83  StartIndex: 0
84  EndIndex: 20
85 }
86 
87 standard_algo_slidingwindow:
88 {
89  Name: "SlidingWindow"
90  NumPreSample: 3
91  ADCThreshold: 4
92  NSigmaThreshold: 4
93  EndADCThreshold: 2
94  EndNSigmaThreshold: 1
95  Verbosity: false
96 }
97 
98 standard_algo_cfd:
99 {
100  Name: "CFD"
101  # CFD fraction
102  Fraction: 0.9
103  # CFD number of samples delay
104  Delay: 2
105  # Number of samples to average before pulse
106  # to use as constant baseline under waveform
107  # BaselinePreSample: 5
108  # Threshold * mode_sigma used to determine if we inside a peak
109  # for CFD crossing
110  PeakThresh: 7.5
111  # Threshold * mode_sigma to determine ending of inside peak @ pulse start
112  StartThresh: 5.0
113  # Threshold * mode_sigma to determine pulse ending @ tail
114  EndThresh: 1.5
115 }
116 
117 ###################################################################
118 
119 #
120 # Pedestal algorithms
121 #
122 
123 standard_algo_pedestal_edges:
124 {
125  Name: "Edges"
126  NumSampleFront: 3
127  NumSampleTail: 3
128  Method: 0
129 }
130 
131 standard_algo_pedestal_rollingmean:
132 {
133  Name: "RollingMean"
134  SampleSize: 2
135  MaxSigma: 0.5
136  PedRangeMax: 2150
137  PedRangeMin: 100
138 }
139 
140 standard_algo_pedestal_rmsslider:
141 {
142  Name: "RmsSlider"
143  SampleSize: 7
144  Threshold: 0.6
145  MaxSigma: 0.5
146  PedRangeMax: 2150
147  PedRangeMin: 100
148  Verbose: false
149  NWaveformsToFile: 12
150 }
151 
152 standard_algo_pedestal_ub:
153 {
154  Name: "UB"
155  BeamGateSamples : 1500
156  # You need to include parameters fed to PedTruncatedMean since that
157  # algo is called for beam gate sample as well
158  # Sliding mean number of samples
159  SampleSize: 2
160  MaxSigma: 0.5
161  PedRangeMax: 2150
162  PedRangeMin: 100
163 
164  # RandomRange: 5
165  # RandomRangeDivisions: 4.0
166  Threshold: 4
167  # Number of ADC count to shift during random sampling
168  # RandomRangeShift: -0.5
169  # This parameter get's multiplied by mode_sigma to determine
170  # whether or not samples are close enough to be filled with random baseline
171  # between gaps
172  DiffBetweenGapsThreshold: 2
173  DiffADCCounts: 2
174  NPrePostSamples: 5
175 }
176 
177 ###################################################################
178 
179 standard_preco_manager:
180 {
181  module_type: "PulseRecoManager"
182 }
183 
184 ###################################################################
185 
186 standard_ophit:
187 {
188  module_type: "OpHitFinder"
189  GenModule: "generator"
190  InputModule: "optreadout"
191  InputLabels: [ "" ]
192  ChannelMasks: []
193  HitThreshold: 0.2 # PE
194  UseCalibrator: false # If set to false, SPE parameters below
195  # are used
196  AreaToPE: false # Use area to calculate number of PEs
197  SPEArea: 1330 # If AreaToPE is true, this number is
198  # used as single PE area (in ADC counts)
199  SPEShift: 0 # Baseline offset in ADC->SPE conversion
200  reco_man: @local::standard_preco_manager
201  HitAlgoPset: @local::standard_algo_threshold
202  PedAlgoPset: @local::standard_algo_pedestal_edges
203 }
204 
205 ###################################################################
206 
207 standard_opflash:
208 {
209  module_type: "OpFlashFinder"
210  InputModule: "ophit"
211  BinWidth: 1 # us | Pulse finding parameters
212  FlashThreshold: 2 # PE
213  WidthTolerance: 0.5 # unitless
214  TrigCoinc: 2.5 # in microseconds!
215 }
216 
217 ###################################################################
218 
219 standard_ledcalibrationana:
220 {
221  module_type: "LEDCalibrationAna"
222  InputModule: "daq"
223  TriggerDelay: 0
224  CoincThreshold: 5
225  TriggerChannel: 32
226  AreaMin: 0
227  AreaMax: 30000
228  AreaDivs: 200
229  MaxTimeMean: 700
230  MaxTimeThresh: 50
231  MakeNonCoincTree: true
232  reco_man: @local::standard_preco_manager
233  algo_threshold: @local::standard_algo_threshold
234 }
235 
236 ###################################################################
237 
238 standard_simphotoncounter:
239 {
240  module_type: "SimPhotonCounter"
241  Verbosity: 0
242  InputModule: "largeant"
243  MakeAllPhotonsTree: true
244  MakeDetectedPhotonsTree: true
245  MakeOpDetsTree: true
246  MakeOpDetEventsTree: true
247 }
248 
249 
250 standard_opdigiana:
251 {
252  module_type: "OpDigiAna"
253  InputModule: "opdigi"
254  InstanceName: ""
255  ZeroSupThresh: 0.5
256 
257  MakeBipolarHist: true
258  MakeUnipolarHist: true
259 }
260 
261 standard_flashpurity:
262 {
263  module_type: "FlashPurityCheckAna"
264  GenieGenModuleLabel: "generator"
265  TrackModuleLabel: "beziertracker"
266  MatchModuleLabel: "beamflashcompat"
267  OpFlashModuleLabel: "opflash"
268 }
269 
270 
271 standard_opflashtruth:
272 {
273  module_type: "OpFlashMCTruthAna"
274  TruthInputModule: "nugenerator"
275  FlashInputModule: "opflash"
276 
277 }
278 
279 standard_opflashana:
280 {
281  module_type: "OpFlashAna"
282  OpFlashModuleLabel: "opflash"
283  OpHitModuleLabel: "ophit"
284  YMin: -50
285  YMax: 50
286  ZMin: 0
287  ZMax: 1200
288 
289  MakeFlashTimeHist: false
290  MakeFlashPosHist: false
291  MakePerFlashHists: false
292 
293  MakePerFlashTree: true
294  MakePerOpHitTree: true
295  MakeFlashBreakdownTree: true
296  MakeFlashHitMatchTree: true
297  MakePerEventFlashTree: false
298 
299 }
300 
301 standard_opdigi:
302 {
303  module_type: "OpMCDigi"
304  InputModule: "largeant"
305  QE: 0.01
306  SaturationScale: 2000
307  DarkRate: 10000
308  CompressionType: "none" #
309 }
310 
311 standard_tracktimeassoc:
312 {
313  module_type: "TrackTimeAssoc"
314  TrackModuleLabel: "beziertracker"
315  FlashModuleLabel: "opflash"
316  BezierResolution: 100
317  PairingMode: 1
318  LengthCut: 20
319  PECut: 20
320 }
321 
322 
323 standard_tracktimeassocana:
324 {
325  module_type: "TrackTimeAssocAna"
326  MatchModuleLabel: "tracktimeassoc"
327 }
328 
329 standard_bodataframeinput:
330 {
331  module_type: "BoDataFrameInput"
332  InputFile: "rawdata.txt"
333 }
334 
335 standard_stitchpmtframes:
336 {
337  module_type: "StitchPMTFrames"
338  InputModule: "bodataframeinput"
339  FrameSize: 2048
340  ADCOffset: 2048
341 }
342 
343 standard_simphotoncounteralg:
344 {
345  SimPhotonCounterParams:
346  [
347  {
348  MinPromptTime: -9e9
349  MaxPromptTime: 100
350  MinLateTime: 100
351  MaxLateTime: 9e9
352  MinWavelength: 0
353  MaxWavelength: 1e6
354  }
355  ]
356 }
357 
358 standard_flashhypothesisanaalg:
359 {
360  SimPhotonCounterIndex: 0
361  dEdx: 2.1
362  XOffset: 0.0
363  SimPhotonCounterAlgParams: @local::standard_simphotoncounteralg
364 }
365 
366 standard_flashhypothesisanamodule:
367 {
368  module_type: "FlashHypothesisAna"
369  MCTrackLabel: "mctrack"
370  MCSimPhotonsLabel: "largeant"
371  FlashHypothesisAnaAlgParams: @local::standard_flashhypothesisanaalg
372 }
373 
374 standard_opflashsimpleanamodule:
375 {
376  module_type: "OpFlashSimpleAna"
377  OpFlashModuleLabel: "opflash"
378  OpHitModuleLabel: "ophit"
379  MakeOpDetPEHist: "true"
380 }
381 
382 microboone_opdetreformatter:
383 {
384  module_type: "OpticalRawDigitReformatter"
385  GenModule: "generator"
386  InputModule: "optreadout"
387 }
388 
389 
390 microboone_simphotoncounter: @local::standard_simphotoncounter
391 microboone_opdigi: @local::standard_opdigi
392 microboone_tracktimeassoc: @local::standard_tracktimeassoc
393 microboone_opflashtruth: @local::standard_opflashtruth
394 
395 microboone_opdigiana: @local::standard_opdigiana
396 microboone_opflashana: @local::standard_opflashana
397 
398 #microboone_optdetdigitizer: @local::standard_optdetdigitizer
399 #microboone_optical_readout: @local::standard_optical_readout
400 
401 END_PROLOG