test_build_oplib_dune35t.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: "test_PhotonLibraryFile_dune35ton.root" }
24  TimeTracker: {}
25  RandomNumberGenerator: {} #ART native random number generator
26  @table::dune35t_photolibbuild_services
27  BackTrackerService: @local::dune35t_backtrackerservice # defined in backtrackerservice.fcl
28  ParticleInventoryService: @local::standard_particleinventoryservice # defined in backtrackerservice.fcl
29  message: @local::standard_info
30 }
31 
32 
33 #Start each new event with an empty event.
34 source:
35 {
36  module_type: EmptyEvent
37  maxEvents: 1 # Number of events to create
38  firstRun: 1 # Run number to use for this file
39  firstEvent: 1 # number of first event in the file
40 }
41 
42 # Define and configure some modules to do work on each event.
43 # First modules are defined; they are scheduled later.
44 # Modules are grouped by type.
45 physics:
46 {
47 
48  producers:
49  {
50  generator: @local::standard_lightsource
51  largeant: @local::standard_largeant
52  }
53 
54  analyzers:
55  {
56  pmtresponse: @local::dune35t_simphotoncounter # defined in opticaldetectormodules.fcl
57  }
58 
59  #define the producer and filter modules for this path, order matters,
60  #filters reject all following items. see lines starting physics.producers below
61  simulate: [ generator, largeant ]
62  analyzeIt: [ pmtresponse ]
63  #define the output stream, there could be more than one if using filters
64  stream1: [ ]
65 
66  #trigger_paths is a keyword and contains the paths that modify the art::event,
67  #ie filters and producers
68  trigger_paths: [simulate]
69 
70  #end_paths is a keyword and contains the paths that do not modify the art::Event,
71  #ie analyzers and output streams. these all run simultaneously
72  end_paths: [analyzeIt, stream1]
73 }
74 
75 #block to define where the output goes. if you defined a filter in the physics
76 #block and put it in the trigger_paths then you need to put a SelectEvents: {SelectEvents: [XXX]}
77 #entry in the output stream you want those to go to, where XXX is the label of the filter module(s)
78 outputs:
79 {
80  out1:
81  {
82  module_type: RootOutput
83  fileName: "test_opticallibrary_dune35t.root" #default file name, can override from command line with -o or --output
84  }
85 }
86 
87 
88 
89 
90 ##### Parameter changes for the generator (lightsource) #####
91 
92 # do not allow lightsource to write output into root file
93 physics.producers.generator.FillTree: false
94 
95 ##### Parameter changes for the pmt respnse analyzer (simphotoncounter) #####
96 
97 physics.analyzers.pmtresponse.MakeAllPhotonsTree: false
98 physics.analyzers.pmtresponse.MakeDetectedPhotonsTree: false
99 physics.analyzers.pmtresponse.MakeOpDetsTree: false
100 physics.analyzers.pmtresponse.MakeOpDetEventsTree: false
101 
102 
103 # To disable wireplane absorption, uncomment this line
104 #services.LArG4Parameters.OpticalParamModels: ["TransparentPlaneAction"]
105 
106 
107 
108 #services.PhotonVisibilityService.NX: 30
109 #services.PhotonVisibilityService.NY: 30
110 #services.PhotonVisibilityService.NZ: 30
111 #physics.producers.generator.FirstVoxel: 1000
112 #physics.producers.generator.LastVoxel: 1020
113 #physics.producers.generator.N: 500
114 
115 #physics.analyzers.pmtresponse.Verbosity: 3
116 
117 physics.producers.generator.N: 10
118 
119 
120 # Number of voxels
121 services.PhotonVisibilityService.NX: 1
122 services.PhotonVisibilityService.NY: 20
123 services.PhotonVisibilityService.NZ: 5
124 
125 services.PhotonVisibilityService.UseCryoBoundary: false
126 
127 # IF UseCryoBoundary is set to false, so use the following parameters in cm
128 services.PhotonVisibilityService.XMin: -8.
129 services.PhotonVisibilityService.XMax: -6.
130 services.PhotonVisibilityService.YMin: -100.
131 services.PhotonVisibilityService.YMax: 0
132 services.PhotonVisibilityService.ZMin: 60.
133 services.PhotonVisibilityService.ZMax: 90.