standard_g4_dunevd10kt.fcl
Go to the documentation of this file.
1 #include "LArG4_dune.fcl"
2 #include "IonAndScint_dune.fcl"
3 #include "elecdrift_dune.fcl"
4 #include "PDFastSim_dune.fcl"
5 #include "services_dune.fcl"
6 
7 process_name: G4
8 
9 services:
10 {
11  # Load the service that manages root files for histograms.
12  TFileService: { fileName: "g4_hist.root" }
13  TimeTracker: {}
14  MemoryTracker: {} # default is one
15  RandomNumberGenerator: {} #ART native random number generator
16  FileCatalogMetadata: @local::art_file_catalog_mc
17 
18  @table::dunefdvd_simulation_services
19 }
20 
21 #source is now a root file
22 source:
23 {
24  module_type: RootInput
25  maxEvents: -1 # Number of events to create
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  largeant: @local::dunefd_larg4
37  IonAndScint: @local::dunefdvd_ionandscint
38  IonAndScintExternal: @local::dunefdvd_ionandscint_external
39  elecDrift: @local::dunefd_elecdrift
40  PDFastSimAr: @local::dunevd_pdfastsim_par_ar_fastonly
41  PDFastSimArExternal: @local::dunevd_pdfastsim_par_ar_external_fastonly
42  PDFastSimXe: @local::dunevd_pdfastsim_par_xe
43  PDFastSimXeExternal: @local::dunevd_pdfastsim_par_xe_external
44  rns: { module_type: "RandomNumberSaver" }
45  }
46 
47  #define the producer and filter modules for this path, order matters,
48  #filters reject all following items. see lines starting physics.producers below
49  simulate: [ rns, largeant , IonAndScint, IonAndScintExternal, elecDrift, PDFastSimAr, PDFastSimXe, PDFastSimArExternal, PDFastSimXeExternal ]
50 
51  #define the output stream, there could be more than one if using filters
52  stream1: [ out1 ]
53 
54  #trigger_paths is a keyword and contains the paths that modify the art::event,
55  #ie filters and producers
56  trigger_paths: [simulate]
57 
58  #end_paths is a keyword and contains the paths that do not modify the art::Event,
59  #ie analyzers and output streams. these all run simultaneously
60  end_paths: [stream1]
61 }
62 
63 #block to define where the output goes. if you defined a filter in the physics
64 #block and put it in the trigger_paths then you need to put a SelectEvents: {SelectEvents: [XXX]}
65 #entry in the output stream you want those to go to, where XXX is the label of the filter module(s)
66 outputs:
67 {
68  out1:
69  {
70  module_type: RootOutput
71  fileName: "%ifb_g4.root"
72  dataTier: "simulated"
73  compressionLevel: 1
74  }
75 }