LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
sample_gen.fcl
Go to the documentation of this file.
1 #include "services_microboone.fcl"
2 #include "singles_microboone.fcl"
3 #include "largeantmodules_microboone.fcl"
4 #include "detsimmodules_microboone.fcl"
5 
6 process_name: MCShowerSampleGen
7 
8 services:
9 {
10  # Load the service that manages root files for histograms.
11  TFileService: { fileName: "gen_hist.root" }
12  TimeTracker: {}
13  RandomNumberGenerator: {} #ART native random number generator
14  @table::microboone_simulation_services
15 }
16 
17 
18 #Start each new event with an empty event.
19 source:
20 {
21  module_type: EmptyEvent
22  timestampPlugin: { plugin_type: "GeneratedEventTimestamp" }
23  maxEvents: 5 # Number of events to create
24  firstRun: 1 # Run number to use for this file
25  firstEvent: 1 # number of first event in the file
26 }
27 
28 # Define and configure some modules to do work on each event.
29 # First modules are defined; they are scheduled later.
30 # Modules are grouped by type.
31 physics:
32 {
33 
34  producers:
35  {
36  generator: @local::microboone_singlep
37  largeant: @local::microboone_largeant
38  }
39 
40  analyzers:
41  {
42  }
43 
44  #define the producer and filter modules for this path, order matters,
45  #filters reject all following items. see lines starting physics.producers below
46  simulate: [ generator, largeant ]
47  analyzeIt: []
48  #define the output stream, there could be more than one if using filters
49  stream1: [ out1 ]
50 
51  #trigger_paths is a keyword and contains the paths that modify the art::event,
52  #ie filters and producers
53  trigger_paths: [simulate]
54 
55  #end_paths is a keyword and contains the paths that do not modify the art::Event,
56  #ie analyzers and output streams. these all run simultaneously
57  end_paths: [analyzeIt, stream1]
58 }
59 
60 #block to define where the output goes. if you defined a filter in the physics
61 #block and put it in the trigger_paths then you need to put a SelectEvents: {SelectEvents: [XXX]}
62 #entry in the output stream you want those to go to, where XXX is the label of the filter module(s)
63 outputs:
64 {
65  out1:
66  {
67  module_type: RootOutput
68  fileName: "gen_11.root" #default file name, can override from command line with -o or --output
69  }
70 }
71 
72 # set quantum efficiency supressed scint yield to 0.03 * 24000
73 #services.DetectorPropertiesService.ScintYield: 24000
74 
75 # enable optical physics in LArG4
76 #services.LArG4Parameters.EnabledPhysics: [ "Em",
77 # "FastOptical",
78 # "SynchrotronAndGN",
79  # "Ion",
80  # "Hadron",
81  # "Decay",
82  # "HadronElastic",
83  # "Stopping",
84  # "NeutronTrackingCut" ]
85 
86 # enable this custom physics list
87 #services.LArG4Parameters.UseCustomPhysics: true
88 
89 # disable cerenkov light
90 services.DetectorPropertiesService.EnableCerenkovLight: false
91 services.LArG4Parameters.KeepEMShowerDaughters: true
92 services.LArG4Parameters.StoreTrajectories: true
93 
94 physics.producers.generator.PDG: [ 13 ]
95 
96 physics.producers.generator.AngleDist: 0
97 physics.producers.generator.Theta0YZ: [ 0 ]
98 physics.producers.generator.SigmaThetaYZ: [ 0.0 ]
99 
100 physics.producers.generator.Theta0XZ: [ 0.0 ]
101 physics.producers.generator.SigmaThetaXZ: [ 0.0 ]
102 
103 physics.producers.generator.X0: [ 50.0 ]
104 physics.producers.generator.Y0: [ 0.0 ]
105 physics.producers.generator.Z0: [ -100.0 ]
106 physics.producers.generator.SigmaX: [ 0.0 ]
107 physics.producers.generator.SigmaY: [ 0.0 ]
108 physics.producers.generator.SigmaZ: [ 0.0 ]
109 physics.producers.generator.T0: [ 0.0 ]
110 physics.producers.generator.P0: [ 1.0 ]
111 physics.producers.generator.SigmaP: [ 0. ]
112 physics.producers.generator.PDist: 0
113 
114 
115 
116