prodsingle_iceberg.fcl
Go to the documentation of this file.
1 #include "services_dune.fcl"
2 #include "singles_dune.fcl"
3 #include "largeantmodules_dune.fcl"
4 #include "detsimmodules_dune.fcl"
5 
6 process_name: SinglesGen
7 
8 services:
9 {
10  # Load the service that manages root files for histograms.
11  TFileService: { fileName: "single_iceberg_hist.root" }
12  TimeTracker: {}
13  RandomNumberGenerator: {} #ART native random number generator
14  @table::dunefd_simulation_services
15 
16  ExptGeoHelperInterface: @local::dune_geometry_helper
17  Geometry: @local::iceberg_geo
18  GeometryConfigurationWriter: {}
19  DetectorClocksService: @local::dunefd_detectorclocks
20  DetectorPropertiesService: @local::protodune_detproperties
21  LArPropertiesService: @local::dunefd_properties
22  DatabaseUtil: @local::dunefd_database
23  ChannelStatusService: @local::dunefd_channel_status
24 }
25 
26 
27 #Start each new event with an empty event.
28 source:
29 {
30  module_type: EmptyEvent
31  timestampPlugin: { plugin_type: "GeneratedEventTimestamp" }
32  maxEvents: 1
33  firstRun: 1 # Run number to use for this file
34  firstEvent: 1 # number of first event in the file
35 }
36 
37 # Define and configure some modules to do work on each event.
38 # First modules are defined; they are scheduled later.
39 # Modules are grouped by type.
40 physics:
41 {
42 
43  producers:
44  {
45  generator: @local::iceberg_singlep
46  largeant: @local::dunefd_largeant
47  daq: @local::dunefd_simwire
48  rns: { module_type: "RandomNumberSaver" }
49  }
50 
51  #define the producer and filter modules for this path, order matters,
52  #filters reject all following items. see lines starting physics.producers below
53  simulate: [ generator, largeant, daq, rns ]
54 
55  #define the output stream, there could be more than one if using filters
56  stream1: [ out1 ]
57 
58  #trigger_paths is a keyword and contains the paths that modify the art::event,
59  #ie filters and producers
60  trigger_paths: [simulate]
61 
62  #end_paths is a keyword and contains the paths that do not modify the art::Event,
63  #ie analyzers and output streams. these all run simultaneously
64  end_paths: [stream1]
65 }
66 
67 #block to define where the output goes. if you defined a filter in the physics
68 #block and put it in the trigger_paths then you need to put a SelectEvents: {SelectEvents: [XXX]}
69 #entry in the output stream you want those to go to, where XXX is the label of the filter module(s)
70 outputs:
71 {
72  out1:
73  {
74  module_type: RootOutput
75  fileName: "single_iceberg_gen.root" #default file name, can override from command line with -o or --output
76  }
77 }
78