addnoise_findprim1400_snana.fcl
Go to the documentation of this file.
1 # addnoise_findprim_daqsimanas.fcl
2 
3 # Read in (presumably noise-free) waveforms, add noise and pedestals,
4 # then find trigger primitives on the (now noisy) waveforms, and save
5 # the trigger primitives (as "Hits") to an output TTree.
6 
7 # Any number of trigger primitive finders can be run: useful for
8 # running the same finder with multiple parameter settings, for
9 # example. The output of each trigger primitive finder should be
10 # connected to a DaqSimAna analyzer
11 
12 #include "SNAna.fcl"
13 #include "trigprim.fcl"
14 BEGIN_PROLOG
15 trigprim_snana: {
16  @table::standard_snana
17  SaveNeighbourADCs: false
18  SaveTruth: false
19 
20 }
21 END_PROLOG
22 #include "opticaldetectormodules_dune.fcl"
23 #include "standard_detsim_dune10kt_1x2x6.fcl"
24 
25 
26 process_name: PrimSim
27 
28 services: @local::dunefd_simulation_services
29 services.TFileService: { fileName: "SNAna_trigprim1400.root" }
30 services.TimeTracker: {}
31 services.MemoryTracker: { } # default is one
32 services.RandomNumberGenerator: {} #ART native random number generator
33 // services.FileCatalogMetadata: @local::art_file_catalog_mc
34 services.NuRandomService: @local::per_event_NuRandomService # seedservice.fcl
35 services.message: @local::dune_message_services_prod
36 #source is now a root file
37 source: {
38  module_type: RootInput
39  maxEvents: -1 # Number of events to create
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  producers: {
47  simwire: {
48  module_type: "SimWireDUNE"
49  SimChannelLabel: "largeant"
50  NoiseOn: true
51  PedestalOn: true
52  DistortOn: false
53  SuppressOn: false
54  KeepEmptyChannels: true
55  AdcSimulator: "adcsim_ideal"
56  UseRawDigitInput: true
57  RawDigitInputLabel: "daq"
58  }
59 
60  ophit: @local::dune35t_ophit
61 
62  # You can add any number of trigger primitive finders here. Make
63  # sure each one has a distinct name, and has a corresponding
64  # daqsimana analyzer otherwise you won't get a corresponding
65  # TTree in the output file. Also make sure to add it to the "simulate" list below
66  trigprim1400: @local::trigprimpass1
67 
68  rns: { module_type: "RandomNumberSaver" }
69  }
70 
71  analyzers: {
72  # Create an SNAna for each trigger primitive finders. Make
73  # sure to add each one to the "ana" list below
74  snanatrigprim1400: @local::trigprim_snana
75  }
76 
77  simulate: [ rns, simwire, ophit, trigprim1400]
78  ana: [ snanatrigprim1400]
79 
80  trigger_paths: [simulate]
81  end_paths: [ ana ]
82 
83 }
84 
85 # Modify the settings of each of the trigger primitive finders. If you
86 # want to use a different trigger primitive finder class, set
87 # "physics.producers.<itemname>.finder.tool_type: MyNewTriggerPrimitiveFinderTool"
88 physics.producers.trigprim1400.finder.Threshold: 1400
89 
90 # Set the HitLabel to make sure each DaqAnaSim reads hits from its
91 # corresponding TriggerPrimitiveFinder
92 physics.analyzers.snanatrigprim1400.HitLabel: "trigprim1400"
93 
94 # Only save IDEs in one of the output trees, since they're always the same and will only take up space otherwise
95 physics.analyzers.snanatrigprim1400.SaveIDEs: true
96 physics.analyzers.snanatrigprim1400.SaveTruth: true
97 
98 # =====================================================================
99 # You probably won't need to change anything below here
100 
101 # Shut up the backtracker
102 services.message.destinations.LogStandardOut.categories.BackTracker.limit: 0
103 services.message.destinations.LogStandardError.categories.BackTracker.limit: 0
104 
105 # Display all the INFO message for SNAna_module
106 services.message.destinations.LogStandardOut.categories.SNAna_module.limit:-1
107 
108 # If you want to have the mf::LogDebug() messages, uncomment the following:
109 # services.message.destinations.LogStandardOut.threshold:"DEBUG"
110 # services.message.destinations.LogStandardOut.categories.SNAna_module.limit:-1
111 # services.message.destinations.LogStandardOut.categories.default.limit:0
112 
113 
114 # DetSim services. These are used by SimWire to add noise and
115 # pedestals to the incoming (noise-free) waveforms
116 services.SimChannelExtractService: @local::scxgeneric
117 services.ChannelNoiseService: @local::chnoiseold
118 services.PedestalAdditionService: @local::padprovided
119 services.AdcDistortService: @local::stuckbits
120 services.AdcSuppressService: @local::zsnone
121 services.AdcCompressService: @local::cmpreplace
122 services.DetPedestalService: @local::dune_fixedpeds
123 
124 #Optical detector configuration
125 physics.producers.ophit.InputModule: "opdigi"