1 #include "services_dune.fcl"
4 #include "largeantmodules_dune.fcl"
5 #include "detsimmodules_dune.fcl"
6 #include "mccheatermodules.fcl"
7 #include "caldata_dune.fcl"
8 ##include "cluster_dune.fcl"
11 # This fcl file begins by reading up a txt file of HEPEvt events (in/atmo00001.txt).
12 # It then runs a series of producers and one analyzer. It runs the evts through a
13 # filter looking for primary K+'s and outputs those events to one file, while
14 # writing every single event to another file.
21 # Load the service that manages root files for histograms.
22 TFileService: { fileName: "ndk_hist_atmo.root" }
24 MemoryTracker: { } # default is one
25 RandomNumberGenerator: {} #ART native random number generator
26 @table::dunefd_simulation_services
29 services.LArFFT.FFTOption: ""
30 services.Geometry.GDML: "dune4apa36deg.gdml"
31 services.Geometry.ROOT: "dune4apa36deg.gdml"
33 #Start each new event with an empty event.
36 module_type: EmptyEvent
37 timestampPlugin: { plugin_type: "GeneratedEventTimestamp" }
41 # Define and configure some modules to do work on each event.
42 # First modules are defined; they are scheduled later.
43 # Modules are grouped by type.
49 generator: @local::argoneut_nuance
50 largeant: @local::dunefd_largeant
51 daq: @local::dunefd_simwire
52 backtrack: @local::standard_backtrackerloader
53 caldata: @local::dunefd_calwire
54 gaushit: @local::dunefd_gaushitfinder
55 hitcheat: @local::dunefd_hitcheater
56 apahit: @local::dunefd_apahitfinder
57 # fuzzy: @local::dunefd_fuzzycluster
58 rns: { module_type: "RandomNumberSaver" }
63 largana: @local::microboone_largeantana
69 module_type: FilterPrimaryPDG
70 GeantModuleLabel: "largeant"
71 PrimaryParticles: [ 321 ] # find one of these and it's satisfied. 321==K+
75 #define the producer and filter modules for this path, order matters,
77 #simulate: [ generator, largeant, daq, backtrack, caldata, gaushit, hitcheat, apahit, rns ]
79 mode0: [ generator, largeant, daq, backtrack, caldata, gaushit, hitcheat, apahit, rns ]
80 mode1: [ generator, largeant, daq, backtrack, caldata, gaushit, hitcheat, apahit, rns, selectMode1 ] #
84 #define the output stream, there could be more than one if using filters
86 stream: [ out1, out2 ]
88 #trigger_paths is a keyword and contains the paths that modify the art::event,
89 #ie filters and producers
90 # trigger_paths: [simulate]
91 trigger_paths: [ mode0, mode1]
93 #end_paths is a keyword and contains the paths that do not modify the art::Event,
94 #ie analyzers and output streams. these all run simultaneously
95 # end_paths: [larana, stream1]
96 end_paths: [larana, stream]
99 #block to define where the output goes. if you defined a filter in the physics
100 #block and put it in the trigger_paths then you need to put a SelectEvents: {SelectEvents: [XXX]}
101 #entry in the output stream you want those to go to, where XXX is the label of the filter module(s)
106 module_type: RootOutput
107 fileName: "atmo.00003.root" #default file name, can override from command line with -o or --output
108 # SelectEvents: { SelectEvents: [ mode0 ] }
111 module_type: RootOutput
112 fileName: "atmo.00003.strange.root"
113 SelectEvents: { SelectEvents: [ mode1 ] }
118 physics.producers.generator.module_type: "NDKGen"
119 physics.producers.generator.NdkFile: "/dune/app/users/echurch/lgm/in/atmo.00001.txt"
120 physics.producers.generator.fseed: 314159
121 #physics.producers.largeant.DumpParticleList: true
123 physics.producers.apahit.DisambigAlg.UseEndP: false
124 physics.producers.apahit.DisambigAlg.CompareViews: false