1 #include "services_dune.fcl"
2 #include "caldata_dune.fcl"
3 #include "hitfindermodules_dune.fcl"
4 #include "cluster_dune.fcl"
5 #include "trackfindermodules_dune.fcl"
6 #include "pandoramodules_dune.fcl"
7 #include "calorimetry_dune10kt.fcl"
8 #include "mctrutht0matching.fcl"
10 #include "opticaldetectormodules_dune.fcl"
11 #include "trackshowerhits.fcl"
12 #include "showerfindermodules_dune.fcl"
13 #include "emshower3d.fcl"
19 # Load the service that manages root files for histograms.
20 TFileService: { fileName: "reco_hist.root" }
23 RandomNumberGenerator: {} #ART native random number generator
24 message: @local::dune_message_services_prod_debug
25 FileCatalogMetadata: @local::art_file_catalog_mc
26 @table::dunefd_services
28 #source is now a root file
31 module_type: RootInput
32 maxEvents: 10 # Number of events to create
33 saveMemoryObjectThreshold: 0
36 # Define and configure some modules to do work on each event.
37 # First modules are defined; they are scheduled later.
38 # Modules are grouped by type.
45 rns: { module_type: RandomNumberSaver }
46 # convert raw::RawDigit to recob::wire
47 caldata: @local::dunefd_calwire
49 gaushit: @local::dunefd_gaushitfinder
50 fasthit: @local::dunefd_fasthitfinder
51 # cchit: @local::dunefd_clustercrawlerhit
52 # disambiguation cheater that removes duplicate hits
53 dcheat: @local::dunefd_disambigcheat
54 fasthitdc: @local::dunefd_disambigcheat
55 # dcheatcc: @local::dune35t_disambigcheat
56 # reconstruction using gaushit and disambiguration cheater
57 lineclusterdc: @local::dunefd_linecluster
58 trajclusterdc: @local::standard_trajcluster
59 # costrkdc: @local::dunefd_cosmictracker
60 calodc: @local::dune35t_calomc
61 pandoradc: @local::dunefd_pandora
62 # pandora stitching module goes here when it's ready
63 pandoracalodc: @local::dune10kt_calomc
64 pmtrackdc: @local::dunefd_pmalgtrackmaker
65 pmtrackcalodc: @local::dune10kt_calomc
66 pmtrackpfpdc: @local::dunefd_pmalgtrackmaker
67 pmtrackpfpcalodc: @local::dune10kt_calomc
68 pmtracktcdc: @local::dunefd_pmalgtrackmaker
69 pmtracktccalodc: @local::dune10kt_calomc
71 # actual disambiguation
72 hitfd: @local::dunefd_hitfinderfd
73 # reconstruction using disambiguated hits
74 linecluster: @local::dune35t_linecluster
75 trajcluster: @local::standard_trajcluster
76 calo: @local::dune35t_calomc
77 pandora: @local::dunefd_pandora
78 # pandora stitching module goes here when it's ready
79 pandoracalo: @local::dune10kt_calomc
80 pmtrack: @local::dunefd_pmalgtrackmaker
81 pmtrackcalo: @local::dune10kt_calomc
82 pmtrackpfp: @local::dunefd_pmalgtrackmaker
83 pmtrackpfpcalo: @local::dune10kt_calomc
84 pmtracktc: @local::dunefd_pmalgtrackmaker
85 pmtracktccalo: @local::dune10kt_calomc
86 # photon detector reconstruction
87 ophit: @local::dune35t_ophit
88 opflash: @local::dune35t_opflash
89 trkshowersplit: @local::standard_trackshowerhits
90 trkshowersplitdc: @local::standard_trackshowerhits
91 blurredclusterdc: @local::dune10kt_blurredcluster
92 emshowerdc: @local::dune10kt_emshower
93 emshower3ddc: @local::dune10kt_emshower3d
94 mergeemshower3ddc: @local::dune10kt_mergeemshower3d
95 blurredcluster: @local::dune10kt_blurredcluster
96 emshower: @local::dune10kt_emshower
97 emshower3d: @local::dune10kt_emshower3d
98 mergeemshower3d: @local::dune10kt_mergeemshower3d
101 #define the producer and filter modules for this path, order matters,
102 #filters reject all following items. see lines starting physics.producers below
104 #optical hits and flashes
108 #hit reco with cheated disambiguation
109 gaushit, dcheat, #cchit, fasthit, fasthitdc,
110 #cluster reco with cheated disambiguation
111 lineclusterdc, trajclusterdc,
114 #pandora with cheated disambiguation
115 pandoradc, #pandora stitcher goes here
117 #pmatrack with cheated disambiguation
118 pmtrackdc, pmtrackcalodc,
119 pmtrackpfpdc, pmtrackpfpcalodc,
120 pmtracktcdc, pmtracktccalodc,
121 #shower reconstruction
122 blurredclusterdc, emshowerdc, #emshower3ddc, mergeemshower3ddc,
126 linecluster, trajcluster,
130 pandora, #pandora stitcher goes here
133 pmtrack, pmtrackcalo,
134 pmtrackpfp, pmtrackpfpcalo,
135 pmtracktc, pmtracktccalo,
136 #shower reconstruction
137 blurredcluster, emshower#, emshower3d, mergeemshower3d
140 #define the output stream, there could be more than one if using filters
143 #trigger_paths is a keyword and contains the paths that modify the art::event,
144 #ie filters and producers
145 trigger_paths: [reco]
147 #end_paths is a keyword and contains the paths that do not modify the art::Event,
148 #ie analyzers and output streams. these all run simultaneously
152 #block to define where the output goes. if you defined a filter in the physics
153 #block and put it in the trigger_paths then you need to put a SelectEvents: {SelectEvents: [XXX]}
154 #entry in the output stream you want those to go to, where XXX is the label of the filter module(s)
159 module_type: RootOutput
160 fileName: "%ifb_reco.root"
161 dataTier: "full-reconstructed"
163 saveMemoryObjectThreshold: 0
166 ### Here, we overwrite ALL module labels with the ones defined above.
167 physics.producers.fasthitdc.ChanHitLabel: "fasthit"
168 physics.producers.lineclusterdc.HitFinderModuleLabel: "dcheat"
169 physics.producers.trajclusterdc.TrajClusterAlg.HitFinderModuleLabel: "dcheat"
170 physics.producers.trajclusterdc.TrajClusterAlg.MaxWireSkipNoSignal: 2
171 physics.producers.trajclusterdc.TrajClusterAlg.HitErrFac: 0.4
172 physics.producers.trajclusterdc.TrajClusterAlg.KinkAngCut: 0.6
173 physics.producers.trajclusterdc.TrajClusterAlg.SkipAlgs: ["ChainMerge", "MaskHits", "RevProp"]
175 physics.producers.calodc.TrackModuleLabel: "costrkdc"
176 physics.producers.calodc.SpacePointModuleLabel: "costrkdc"
178 physics.producers.trkshowersplitdc.HitModuleLabel: "lineclusterdc"
179 physics.producers.trkshowersplit.HitModuleLabel: "linecluster"
181 physics.producers.pmtrackdc.HitModuleLabel: "trkshowersplitdc"
182 physics.producers.pmtrackdc.ClusterModuleLabel: "lineclusterdc"
183 physics.producers.pmtrackdc.CluMatchingAlg: 1
184 physics.producers.pmtrackdc.RunVertexing: true
185 physics.producers.pmtrackdc.FlipToBeam: true
186 physics.producers.pmtrackdc.MakePFPs: true
188 physics.producers.pmtrack.HitModuleLabel: "trkshowersplit"
189 physics.producers.pmtrack.ClusterModuleLabel: "linecluster"
190 physics.producers.pmtrack.CluMatchingAlg: 1
191 physics.producers.pmtrack.RunVertexing: true
192 physics.producers.pmtrack.FlipToBeam: true
193 physics.producers.pmtrack.MakePFPs: true
195 physics.producers.pmtracktcdc.HitModuleLabel: "dcheat"
196 physics.producers.pmtracktcdc.ClusterModuleLabel: "trajclusterdc"
197 physics.producers.pmtracktcdc.CluMatchingAlg: 1
198 physics.producers.pmtracktcdc.RunVertexing: true
199 physics.producers.pmtracktcdc.FlipToBeam: true
200 physics.producers.pmtracktcdc.MakePFPs: true
201 physics.producers.pmtracktcdc.MinSeedSize2ndPass: 2
203 physics.producers.pmtracktc.HitModuleLabel: "hitfd"
204 physics.producers.pmtracktc.ClusterModuleLabel: "trajcluster"
205 physics.producers.pmtracktc.CluMatchingAlg: 1
206 physics.producers.pmtracktc.RunVertexing: true
207 physics.producers.pmtracktc.FlipToBeam: true
208 physics.producers.pmtracktc.MakePFPs: true
209 physics.producers.pmtracktc.MinSeedSize2ndPass: 2
211 physics.producers.pmtrackpfpdc.HitModuleLabel: "lineclusterdc"
212 physics.producers.pmtrackpfpdc.ClusterModuleLabel: "pandoradc"
213 physics.producers.pmtrackpfpdc.CluMatchingAlg: 3
214 #physics.producers.pmtrackpfpdc.TrackingSkipPdg: [0] #deprecated
215 physics.producers.pmtrackpfpdc.RunVertexing: true
216 physics.producers.pmtrackpfpdc.FlipToBeam: true
217 physics.producers.pmtrackpfpdc.MakePFPs: true
219 physics.producers.pmtrackpfp.HitModuleLabel: "linecluster"
220 physics.producers.pmtrackpfp.ClusterModuleLabel: "pandora"
221 physics.producers.pmtrackpfp.CluMatchingAlg: 3
222 #physics.producers.pmtrackpfp.TrackingSkipPdg: [0] #deprecated
223 physics.producers.pmtrackpfp.RunVertexing: true
224 physics.producers.pmtrackpfp.FlipToBeam: true
225 physics.producers.pmtrackpfp.MakePFPs: true
227 physics.producers.pmtrackcalo.TrackModuleLabel: "pmtrack"
228 physics.producers.pmtrackcalo.SpacePointModuleLabel: "pmtrack"
229 physics.producers.pmtrackcalo.T0ModuleLabel: ""
230 physics.producers.pmtrackcalo.MakeTree: false
231 physics.producers.pmtrackcalodc.TrackModuleLabel: "pmtrackdc"
232 physics.producers.pmtrackcalodc.SpacePointModuleLabel: "pmtrackdc"
233 physics.producers.pmtrackcalodc.T0ModuleLabel: ""
234 physics.producers.pmtrackcalodc.MakeTree: false
236 physics.producers.pmtracktccalo.TrackModuleLabel: "pmtracktc"
237 physics.producers.pmtracktccalo.SpacePointModuleLabel: "pmtracktc"
238 physics.producers.pmtracktccalo.T0ModuleLabel: ""
239 physics.producers.pmtracktccalo.MakeTree: false
240 physics.producers.pmtracktccalodc.TrackModuleLabel: "pmtracktcdc"
241 physics.producers.pmtracktccalodc.SpacePointModuleLabel: "pmtracktcdc"
242 physics.producers.pmtracktccalodc.T0ModuleLabel: ""
243 physics.producers.pmtracktccalodc.MakeTree: false
245 physics.producers.pmtrackpfpcalo.TrackModuleLabel: "pmtrackpfp"
246 physics.producers.pmtrackpfpcalo.SpacePointModuleLabel: "pmtrackpfp"
247 physics.producers.pmtrackpfpcalo.T0ModuleLabel: ""
248 physics.producers.pmtrackpfpcalo.MakeTree: false
249 physics.producers.pmtrackpfpcalodc.TrackModuleLabel: "pmtrackpfpdc"
250 physics.producers.pmtrackpfpcalodc.SpacePointModuleLabel: "pmtrackpfpdc"
251 physics.producers.pmtrackpfpcalodc.T0ModuleLabel: ""
252 physics.producers.pmtrackpfpcalodc.MakeTree: false
254 physics.producers.linecluster.HitFinderModuleLabel: "hitfd"
255 physics.producers.trajcluster.TrajClusterAlg.HitFinderModuleLabel: "hitfd"
256 physics.producers.trajcluster.TrajClusterAlg.MaxWireSkipNoSignal: 2
257 physics.producers.trajcluster.TrajClusterAlg.HitErrFac: 0.4
258 physics.producers.trajcluster.TrajClusterAlg.KinkAngCut: 0.6
259 physics.producers.trajcluster.TrajClusterAlg.SkipAlgs: ["ChainMerge", "MaskHits", "RevProp"]
261 physics.producers.calo.TrackModuleLabel: "costrk"
262 physics.producers.calo.SpacePointModuleLabel: "costrk"
263 #physics.producers.kalmanhit.HitModuleLabel: "hitfd"
264 #physics.producers.kalmanhit.ClusterModuleLabel: "fuzzy"
266 #Pandora configurations
267 physics.producers.pandoradc.HitFinderModuleLabel: "lineclusterdc"
268 physics.producers.pandoracalodc.TrackModuleLabel: "pandoradc"
269 physics.producers.pandoracalodc.SpacePointModuleLabel: "pandoradc"
270 physics.producers.pandoracalodc.T0ModuleLabel: ""
271 physics.producers.pandoracalodc.MakeTree: false
273 physics.producers.pandora.HitFinderModuleLabel: "linecluster"
274 physics.producers.pandoracalo.TrackModuleLabel: "pandora"
275 physics.producers.pandoracalo.SpacePointModuleLabel: "pandora"
276 physics.producers.pandoracalo.T0ModuleLabel: ""
277 physics.producers.pandoracalo.MakeTree: false
279 #Optical detector configuration
280 physics.producers.ophit.InputModule: "opdigi"
281 physics.producers.opflash.InputModule: "ophit"
283 #shower configuration
284 physics.producers.blurredclusterdc.HitsModuleLabel: "lineclusterdc"
285 physics.producers.blurredclusterdc.TrackModuleLabel: "pmtrackdc"
286 physics.producers.blurredclusterdc.CreateDebugPDF: false
287 physics.producers.blurredclusterdc.MergeClusters: false
288 physics.producers.blurredclusterdc.GlobalTPCRecon: true
289 physics.producers.blurredclusterdc.ShowerReconOnly: false
290 physics.producers.blurredclusterdc.VertexModuleLabel: "lineclusterdc"
292 physics.producers.emshowerdc.ClusterModuleLabel: "blurredclusterdc"
293 physics.producers.emshowerdc.HitsModuleLabel: "lineclusterdc"
294 physics.producers.emshowerdc.TrackModuleLabel: "pmtrackdc"
296 physics.producers.emshower3ddc.HitsModuleLabel: "lineclusterdc"
297 physics.producers.emshower3ddc.ClustersModuleLabel: "blurredclusterdc"
298 physics.producers.emshower3ddc.Trk3DModuleLabel: "pmtrackdc"
300 physics.producers.mergeemshower3ddc.HitsModuleLabel: "lineclusterdc"
301 physics.producers.mergeemshower3ddc.ClustersModuleLabel: "blurredclusterdc"
302 physics.producers.mergeemshower3ddc.Trk3DModuleLabel: "emshower3ddc"
303 physics.producers.mergeemshower3ddc.VtxModuleLabel: "emshower3ddc"
304 physics.producers.mergeemshower3ddc.WideConeAngle: 20
306 physics.producers.blurredcluster.HitsModuleLabel: "linecluster"
307 physics.producers.blurredcluster.TrackModuleLabel: "pmtrack"
308 physics.producers.blurredcluster.CreateDebugPDF: false
309 physics.producers.blurredcluster.MergeClusters: false
310 physics.producers.blurredcluster.GlobalTPCRecon: true
311 physics.producers.blurredcluster.ShowerReconOnly: false
312 physics.producers.blurredcluster.VertexModuleLabel: "linecluster"
314 physics.producers.emshower.ClusterModuleLabel: "blurredcluster"
315 physics.producers.emshower.HitsModuleLabel: "linecluster"
316 physics.producers.emshower.TrackModuleLabel: "pmtrack"
318 physics.producers.emshower3d.HitsModuleLabel: "linecluster"
319 physics.producers.emshower3d.ClustersModuleLabel: "blurredcluster"
320 physics.producers.emshower3d.Trk3DModuleLabel: "pmtrack"
322 physics.producers.mergeemshower3d.HitsModuleLabel: "linecluster"
323 physics.producers.mergeemshower3d.ClustersModuleLabel: "blurredcluster"
324 physics.producers.mergeemshower3d.Trk3DModuleLabel: "emshower3d"
325 physics.producers.mergeemshower3d.VtxModuleLabel: "emshower3d"
326 physics.producers.mergeemshower3d.WideConeAngle: 20