1 #include "services_microboone.fcl"
2 #include "backtrackerservice.fcl"
3 #include "particleinventoryservice.fcl"
5 #include "largeantmodules.fcl"
6 #include "detsimmodules.fcl"
7 #include "opticaldetectormodules.fcl"
8 #include "photpropservices.fcl"
9 #include "lightsource.fcl"
12 process_name: LibraryBuild
20 # Load the service that manages root files for histograms.
21 TFileService: { fileName: "PhotonLibraryFile.root" }
23 RandomNumberGenerator: {} #ART native random number generator
24 @table::microboone_simulation_services
25 BackTrackerService: @local::microboone_backtrackerservice # defined in backtrackerservice.fcl
26 ParticleInventoryService: @local::standard_particleinventoryservice # defined in backtrackerservice.fcl
30 services.PhotonVisibilityService: @local::standard_photonvisibilityservice_buildlib
32 services.SignalShapingServiceMicroBooNE: ""
34 #Start each new event with an empty event.
37 module_type: EmptyEvent
38 timestampPlugin: { plugin_type: "GeneratedEventTimestamp" }
39 maxEvents: 2 # Number of events to create
40 firstRun: 1 # Run number to use for this file
41 firstEvent: 1 # number of first event in the file
44 # Define and configure some modules to do work on each event.
45 # First modules are defined; they are scheduled later.
46 # Modules are grouped by type.
52 generator: @local::microboone_lightsource
53 largeant: @local::microboone_largeant
58 pmtresponse: @local::microboone_simphotoncounter
61 #define the producer and filter modules for this path, order matters,
62 #filters reject all following items. see lines starting physics.producers below
63 simulate: [ generator, largeant ]
64 analyzeIt: [ pmtresponse ]
65 #define the output stream, there could be more than one if using filters
68 #trigger_paths is a keyword and contains the paths that modify the art::event,
69 #ie filters and producers
70 trigger_paths: [simulate]
72 #end_paths is a keyword and contains the paths that do not modify the art::Event,
73 #ie analyzers and output streams. these all run simultaneously
74 end_paths: [analyzeIt, stream1]
77 #block to define where the output goes. if you defined a filter in the physics
78 #block and put it in the trigger_paths then you need to put a SelectEvents: {SelectEvents: [XXX]}
79 #entry in the output stream you want those to go to, where XXX is the label of the filter module(s)
84 module_type: RootOutput
85 fileName: "single_gen_uboone.root" #default file name, can override from command line with -o or --output
89 # Begin optical specific parts:
91 # set quantum efficiency supressed scint yield to 0.03 * 24000
92 services.DetectorPropertiesService.ScintYield: 72
94 # enable optical physics in LArG4
95 services.LArG4Parameters.EnabledPhysics: [ "Em",
103 "NeutronTrackingCut" ]
105 # enable this custom physics list
106 services.LArG4Parameters.UseCustomPhysics: true
108 # do not allow lightsource to write output into root file
109 physics.producers.generator.FillTree: false
112 physics.analyzers.pmtresponse.MakeAllPhotonsTree: false
113 physics.analyzers.pmtresponse.MakeDetectedPhotonsTree: false
114 physics.analyzers.pmtresponse.MakeSimPhotonssTree: false
115 physics.analyzers.pmtresponse.MakeEventsTree: false