dune10kt_workspace_buildopticallibrary_grid.fcl
Go to the documentation of this file.
1 #include "services_dune.fcl"
2 #include "backtrackerservice.fcl"
3 #include "particleinventoryservice.fcl"
4 #include "singles.fcl"
5 #include "largeantmodules.fcl"
6 #include "detsimmodules.fcl"
7 #include "opticaldetectormodules_dune.fcl"
8 #include "opticaldetectorservices_dune.fcl"
9 #include "photolibbuild_services_dune.fcl"
10 #include "photpropservices_dune.fcl"
11 #include "lightsource.fcl"
12 
13 
14 process_name: LibraryBuild
15 
16 
17 
18 
19 
20 services:
21 {
22  # Load the service that manages root files for histograms.
23  TFileService: { fileName: "PhotonLibraryFile_dune10kt_v1_workspace.root" }
24  TimeTracker: {}
25  RandomNumberGenerator: {} #ART native random number generator
26  @table::dunefd_photolibbuild_services
27  message: @local::standard_info
28  BackTrackerService: @local::dunefd_backtrackerservice # defined in backtrackerservice.fcl
29  ParticleInventoryService: @local::dunefd_particleinventoryservice # defined in backtrackerservice.fcl
30 }
31 
32 
33 services.Geometry.GDML: "dune10kt_v1_workspace.gdml"
34 services.Geometry.ROOT: "dune10kt_v1_workspace.gdml"
35 services.Geometry.SortingParameters.DetectorVersion: "dune10kt_v1_workspace"
36 
37 services.OpDetResponseInterface.LongAxis: z
38 
39 #Start each new event with an empty event.
40 source:
41 {
42  module_type: EmptyEvent
43  maxEvents: 2 # Number of events to create
44  firstRun: 1 # Run number to use for this file
45  firstEvent: 1 # number of first event in the file
46 }
47 
48 # Define and configure some modules to do work on each event.
49 # First modules are defined; they are scheduled later.
50 # Modules are grouped by type.
51 physics:
52 {
53 
54  producers:
55  {
56  generator: @local::standard_lightsource
57  largeant: @local::standard_largeant
58  }
59 
60  analyzers:
61  {
62  pmtresponse: @local::dune35t_simphotoncounter # defined in opticaldetectormodules.fcl
63  }
64 
65  #define the producer and filter modules for this path, order matters,
66  #filters reject all following items. see lines starting physics.producers below
67  simulate: [ generator, largeant ]
68  analyzeIt: [ pmtresponse ]
69  #define the output stream, there could be more than one if using filters
70  stream1: [ ]
71 
72  #trigger_paths is a keyword and contains the paths that modify the art::event,
73  #ie filters and producers
74  trigger_paths: [simulate]
75 
76  #end_paths is a keyword and contains the paths that do not modify the art::Event,
77  #ie analyzers and output streams. these all run simultaneously
78  end_paths: [analyzeIt, stream1]
79 }
80 
81 #block to define where the output goes. if you defined a filter in the physics
82 #block and put it in the trigger_paths then you need to put a SelectEvents: {SelectEvents: [XXX]}
83 #entry in the output stream you want those to go to, where XXX is the label of the filter module(s)
84 outputs:
85 {
86  out1:
87  {
88  module_type: RootOutput
89  fileName: "notused.root" #default file name, can override from command line with -o or --output
90  }
91 }
92 
93 
94 
95 
96 ##### Parameter changes for the generator (lightsource) #####
97 
98 # do not allow lightsource to write output into root file
99 physics.producers.generator.FillTree: false
100 
101 ##### Parameter changes for the pmt respnse analyzer (simphotoncounter) #####
102 
103 physics.analyzers.pmtresponse.MakeAllPhotonsTree: false
104 physics.analyzers.pmtresponse.MakeDetectedPhotonsTree: false
105 physics.analyzers.pmtresponse.MakeOpDetsTree: false
106 physics.analyzers.pmtresponse.MakeOpDetEventsTree: false
107 
108 
109 # To disable wireplane absorption, uncomment this line
110 #services.LArG4Parameters.OpticalParamModels: ["TransparentPlaneAction"]
111 
112 
113 
114 # Number of voxels
115 services.PhotonVisibilityService.NX: 100
116 services.PhotonVisibilityService.NY: 100
117 services.PhotonVisibilityService.NZ: 100