prodsingle.fcl
Go to the documentation of this file.
1 #NuTools Services
2 #include "seedservice.fcl"
3 
4 #GArSoft Services
5 #include "DetectorClocks.fcl"
6 #include "DetectorProperties.fcl"
7 #include "GArProperties.fcl"
8 #include "ECALProperties.fcl"
9 #include "Geometry.fcl"
10 #include "RunHistory.fcl"
11 
12 #Plugins
13 #include "SingleGen.fcl"
14 #include "GArG4.fcl"
15 
16 # eventually will need to include configuration to simulate the electronics
17 
18 process_name: SinglesGen
19 
20 services:
21 {
22  # Load the service that manages root files for histograms.
23  TFileService: { fileName: "single_hist.root" }
24  TimeTracker: {}
25  RandomNumberGenerator: {} #ART native random number generator
26  #See Geometry.fcl for the list of geometries available
27  GeometryGAr: @local::nd_hall_mpd_only_SPYv3_geo
28  GeometryGArConfigurationWriter: {}
29  ExptGeoHelperInterface: @local::standard_geometry_helper
30  DetectorClocks: @local::standard_clocks
31  DetectorProperties: @local::standard_detproperties
32  GArProperties: @local::standard_garproperties
33  ECALProperties: @local::standard_ecalproperties
34  NuRandomService: @local::standard_NuRandomService
35  MagneticField: @local::standard_mag_garsoft
36 #RunHistory: @local::standard_runhistory
37 }
38 
39 
40 #Start each new event with an empty event.
41 source:
42 {
43  module_type: EmptyEvent
44  timestampPlugin: { plugin_type: "GeneratedEventTimestamp" }
45  maxEvents: 10 # Number of events to create
46  firstRun: 1 # Run number to use for this file
47  firstEvent: 1 # number of first event in the file
48 }
49 
50 # Define and configure some modules to do work on each event.
51 # First modules are defined; they are scheduled later.
52 # Modules are grouped by type.
53 physics:
54 {
55 
56  producers:
57  {
58  generator: @local::standard_singlep_cdr
59  geant: @local::standard_geant
60  rns: { module_type: "RandomNumberSaver" }
61  }
62 
63  #define the producer and filter modules for this path, order matters,
64  #filters reject all following items. see lines starting physics.producers below
65  simulate: [ generator, geant, rns ]
66 
67  #define the output stream, there could be more than one if using filters
68  stream1: [ out1 ]
69 
70  #trigger_paths is a keyword and contains the paths that modify the ::art::event,
71  #ie filters and producers
72  trigger_paths: [ simulate ]
73 
74 }
75 
76 #block to define where the output goes. if you defined a filter in the physics
77 #block and put it in the trigger_paths then you need to put a SelectEvents: {SelectEvents: [XXX]}
78 #entry in the output stream you want those to go to, where XXX is the label of the filter module(s)
79 outputs:
80 {
81  out1:
82  {
83  module_type: RootOutput
84  fileName: "single_gen.root" #default file name, can override from command line with -o or --output
85  }
86 }