1 #include "hitfindermodules.fcl"
2 #include "clusteralgorithms.fcl"
3 #include "disambigalgorithms.fcl"
8 standard_disambigcheat:
10 module_type: "DisambigCheater"
11 ChanHitLabel: "gaushit"
14 standard_disambigfromsp:
16 module_type: "DisambigFromSpacePoints"
17 HitModuleLabel: "gaushit"
18 SpModuleLabel: "reco3d"
19 ExcludeTPCs: [] # if there are TPC volumes with no actual drift towards wires, exclude them here
20 UseNeighbors: true # use neigboring hits to resolve hits missed by spacepoints
21 NumNeighbors: 2 # number of neigboring hits to resolve hits missed by spacepoints
22 MaxDistance: 1000 # neighborhood max distance [cm] used to resolve hits missed with spacepoints
23 MoveLeftovers: "first" # "repeat" - duplicate undisambiguated hits to every allowed wire segment
24 # "first" - put undisambiguated hits on the first allowed wire segment
25 # "drop" - drop undisambiguated hits from the output
26 MonitoringPlots: false # create histograms of no. of unresolved hits at each stage, per plane
31 module_type: "HitRepeater"
32 ChanHitLabel: "gaushit"
37 module_type: "EmLikeHits"
38 HitModuleLabel: "hit" # hits used to reconstruct tagged tracks
39 Trk3DModuleLabel: "track" # tagged tracks (hadron/muon- or cascade-like)
42 # This is the showerhitseparator that divides the output from MVA methods
43 # # identifying the shower hits and track hits.
44 standard_showerhitseparator:
46 module_type: "ShowerHitSeparator"
47 MVALabel: "emtrkmichelid:emtrkmichel"
48 HitLabel: "linecluster"
55 module_type: "APAHitFinder"
56 DisambigAlg: @local::apa_disambigalg
57 ChanHitLabel: "gaushit"
61 dunefd_disambigfromsp: @local::standard_disambigfromsp
62 dunefd_disambigfromsp.SpModuleLabel: "spsolve"
63 dunefd_disambigfromsp.ExcludeTPCs: [] # workspace has no outer TPCs, but full FD has, I think
64 dunefd_disambigfromsp.MoveLeftovers: "repeat"
66 pdune_disambigfromsp: @local::standard_disambigfromsp
67 pdune_disambigfromsp.ExcludeTPCs: []
68 pdune_disambigfromsp.MoveLeftovers: "repeat"
70 dunefddphase_gaushitfinder: @local::gaus_hitfinder
71 #dunefddphase_gaushitfinder.MinSig: [6.0, 6.0]
72 #dunefddphase_gaushitfinder.MinWidth: [1.0, 1.0]
73 dunefddphase_gaushitfinder.HitFinderToolVec.CandidateHitsPlane0.RoiThreshold: 6.0
74 dunefddphase_gaushitfinder.HitFinderToolVec.CandidateHitsPlane1.RoiThreshold: 6.0
75 dunefddphase_gaushitfinder.InitWidth: [6.0, 6.0]
76 dunefddphase_gaushitfinder.AreaNorms: [13.25, 13.25]
77 #dunefddphase_gaushitfinder.Chi2NDFRetry: 1000.
79 dunefddphase_dprawhitfinder: @local::dpraw_hitfinder
81 dune35t_hit_repeater: @local::hit_repeater
82 dune35t_disambigcheat: @local::standard_disambigcheat
84 dune35t_gaushitfinder: @local::gaus_hitfinder
85 dune35t_apahitfinder: @local::apa_hitfinder
86 dune35t_emlikehits: @local::emlikehits
87 dune35t_hitcheater: @local::standard_hitcheater
89 #dune35t_gaushitfinder.MinSig: [6.0, 6.0, 6.0]
90 #dune35t_gaushitfinder.MinWidth: [1.0, 1.0, 1.0]
91 dune35t_gaushitfinder.HitFinderToolVec.CandidateHitsPlane0.RoiThreshold: 6.0
92 dune35t_gaushitfinder.HitFinderToolVec.CandidateHitsPlane1.RoiThreshold: 6.0
93 dune35t_gaushitfinder.HitFinderToolVec.CandidateHitsPlane2.RoiThreshold: 6.0
94 dune35t_gaushitfinder.InitWidth: [6.0, 6.0, 6.0]
95 dune35t_gaushitfinder.AreaNorms: [13.25, 13.25, 13.25]
96 #dune35t_gaushitfinder.Chi2NDFRetry: 1000.
100 TimeCut: 3. #tolerance for 3 view hits matching, in ticks
101 DistanceCut: 1. #tolerance to determine whether wires cross, in cm
102 DistanceCutClu: 4. #tolerance to get disambiguated hits around a given hit, in cm
103 TimeWiggle: 5. #Buffer to extend cluster windows by to exclude small clusters
104 # of mis-identified hits.
105 ColChannelWiggle: 5 #Buffer to extend cluster windows by to exclude small clusters
106 # of mis-identified hits.
107 DoCleanUpHits: true #clean up wrong hit triplets
108 DBScanAlg: @local::standard_dbscanalg
111 dune35t_disambigalg.DBScanAlg.eps: 13.
112 dune35t_disambigalg.DBScanAlg.epstwo: 15.
114 dune35t_TimeBasedDisambigAlg:
116 TimeCut: 3. #tolerance for 3 view hits matching, in ticks
117 DistanceCut: 1. #tolerance to determine whether wires cross, in cm
118 DistanceCutClu: 4. #tolerance to get disambiguated hits around a given hit, in cm
119 TimeWiggle: 5. #Buffer to extend cluster windows by to exclude small clusters
120 # of mis-identified hits.
121 ColChannelWiggle: 5 #Buffer to extend cluster windows by to exclude small clusters
122 # of mis-identified hits.
125 dune35t_hitfinder35t:
127 module_type: "HitFinder35t"
128 DisambigAlg: @local::dune35t_disambigalg
129 TimeBasedDisambigAlg: @local::dune35t_TimeBasedDisambigAlg
130 ChanHitLabel: "gaushit"
131 Algorithm: "TripletMatch"
136 module_type: "HitHandScan"
137 HandScanFileName: "/dune/app/users/mthiesse/PersistentFiles/handscan.txt"
138 PreviousHitModuleLabel: "hit35t"
141 dune35t_hitlinefitalg:
146 IterationsMultiplier: 20
147 InclusionThreshold: 2
151 dune35t_hitfindercounters:
153 module_type: "HitFinderCounter35t"
155 HitsModuleLabel: "gaushit"
156 CounterModuleLabel: "SplitterInput:TRIGGER"
157 CounterDir: "/dune/app/users/mthiesse/PersistentFiles/"
158 CounterFile: "counterInformation.txt"
159 CoincidenceTolerance: 2
160 fConvCountTimeToTicks: 32
162 AdjacentWireWidth: 10
163 AdjacentTimeWidth: 100
164 CollectionTimeWidth: 50
165 DoHitLineFitAlg: false
166 HitLineFitAlg: @local::dune35t_hitlinefitalg
169 dune35t_hitfindercounters_sim: @local::dune35t_hitfindercounters
170 dune35t_hitfindercounters_sim.CounterModuleLabel: "simcounter"
171 dune35t_hitfindercounters_sim.CounterDir: "/dune/app/users/mthiesse/PersistentFiles/"
172 dune35t_hitfindercounters_sim.CounterFile: "counterInformation_sim.txt"
175 dune35t_fasthitfinder: @local::standard_fasthitfinder
176 dune35t_fasthitfinder.MinSigInd: 5.0
177 dune35t_fasthitfinder.MinSigCol: 5.0
179 dune35t_clustercrawlerhit: @local::standard_clustercrawlerhit
180 dune35t_clustercrawlerhit.CCHitFinderAlg.ChiNorms: [ 0.31, 0.62, 0.6 ]
181 dune35t_clustercrawlerhit.CCHitFinderAlg.MinPeak: [ 3., 3., 3. ]
182 dune35t_clustercrawlerhit.CCHitFinderAlg.MinRMS: [ 2.3, 2.3, 2.1 ]
183 dune35t_clustercrawlerhit.CCHitFinderAlg.AllowNoHitWire: 2
185 dunefd_disambigcheat: @local::standard_disambigcheat
186 dunefd_gaushitfinder: @local::dune35t_gaushitfinder
187 dunefd_apahitfinder: @local::apa_hitfinder
188 dunefd_hitcheater: @local::standard_hitcheater
189 dunefd_fasthitfinder: @local::dune35t_fasthitfinder
190 dunefd_clustercrawlerhit: @local::dune35t_clustercrawlerhit
191 dunefd_hitfinderfd: @local::dune35t_hitfinder35t
192 dunefd_hitfinderfd.DisambigAlg.DoCleanUpHits: false
193 dunefd_hitfinderfd.DisambigAlg.DistanceCutClu: 100
195 # gauss hit finder for VD module
196 dunevdfd_gaushitfinder: @local::gaus_hitfinder
197 dunevdfd_gaushitfinder.HitFinderToolVec.CandidateHitsPlane0.RoiThreshold: 0.6
198 dunevdfd_gaushitfinder.HitFinderToolVec.CandidateHitsPlane1.RoiThreshold: 0.6
199 dunevdfd_gaushitfinder.HitFinderToolVec.CandidateHitsPlane2.RoiThreshold: 0.6
200 dunevdfd_gaushitfinder.InitWidth: [6.0, 6.0, 6.0]
201 dunevdfd_gaushitfinder.AreaNorms: [13.25, 13.25, 13.25]
202 dunevdfd_gaushitfinder.MaxMultiHit: 4
203 dunevdfd_gaushitfinder.Chi2NDF: 50
204 dunevdfd_gaushitfinder.LongMaxHits: [ 25, 25, 25 ]
205 dunevdfd_gaushitfinder.LongPulseWidth: [ 10, 10, 10 ]
206 dunevdfd_gaushitfinder.PeakFitter: @local::peakfitter_mrqdt
207 dunevdfd_gaushitfinder.CalDataModuleLabel: "wclsdatanfsp:gauss"
209 protodunespmc_gaushitfinder: @local::gaus_hitfinder
210 protodunespmc_gaushitfinder.HitFinderToolVec.CandidateHitsPlane0.RoiThreshold: 0.6
211 protodunespmc_gaushitfinder.HitFinderToolVec.CandidateHitsPlane1.RoiThreshold: 0.6
212 protodunespmc_gaushitfinder.HitFinderToolVec.CandidateHitsPlane2.RoiThreshold: 0.6
213 protodunespmc_gaushitfinder.InitWidth: [6.0, 6.0, 6.0]
214 protodunespmc_gaushitfinder.AreaNorms: [13.25, 13.25, 13.25]
215 protodunespmc_gaushitfinder.MaxMultiHit: 4
216 protodunespmc_gaushitfinder.Chi2NDF: 50
217 protodunespmc_gaushitfinder.LongMaxHits: [ 25, 25, 25 ]
218 protodunespmc_gaushitfinder.LongPulseWidth: [ 10, 10, 10 ]
219 protodunespmc_gaushitfinder.PeakFitter: @local::peakfitter_mrqdt
221 dune35t_rmshitfinderalg:
225 SigmaRiseThreshold: 2.0
226 SigmaFallThreshold: 0.25
229 dune35t_robusthitfinder:
231 module_type: "RobustHitFinder"
233 Efield: [ 0.25, 0.620, 0.777, 1.772 ] #kV/cm --> 60kV cathode voltage
234 CounterT0ModuleLabel: "t0counter"
235 WireModuleLabel: "caldata"
236 DigitModuleLabel: "caldata"
238 DoRawDigitAssns: false
239 HitGeomDistanceCut: 25
244 MakeupMissedHits: true
245 MissedBufferTicksLow: 0
246 MissedBufferTicksHigh: 0
247 HitLineFitAlg: @local::dune35t_hitlinefitalg
248 RMSHitFinderAlg: @local::dune35t_rmshitfinderalg
249 UseMeasuredCounterPositions: true
250 ConstantHitWidth: true
256 dune35t_robusthitfindersim: @local::dune35t_robusthitfinder
257 dune35t_robusthitfindersim.SearchPreTicks: 100
258 dune35t_robusthitfindersim.SearchPostTicks: 4400
259 dune35t_robusthitfindersim.HitGeomDistanceCut: 25
260 dune35t_robusthitfindersim.UseMeasuredCounterPositions: false
261 dune35t_robusthitfindersim.Simulation: true
263 protodunesp_disambig:
265 module_type: "HitFinderProtoDUNESP"
266 # so far there's only one algorithm so this value is ignored.
267 ChanHitLabel: "gaushit"
268 Algorithm: "Placeholder_Value"
276 dune35t_trackhitbacktracker:
278 module_type: "TrackHitBacktracker"
279 WireModuleLabel: "caldata"
280 TrackModuleLabel: "pmtrack"
281 PrevHitModuleLabel: "linecluster"
282 PreBaselineTicks: 100
283 PostBaselineTicks: 100
284 PulseStartWidthMult: 1.0
285 PulseEndWidthMult: 1.5