CMS 3D CMS Logo

g4SimHits_cfi.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
4 
5 
7 
8 
10 
11 
12 from Configuration.Eras.Modifier_h2tb_cff import h2tb
13 
14 
15 
16 common_heavy_suppression = cms.PSet(
17  NeutronThreshold = cms.double(30.0),
18  ProtonThreshold = cms.double(30.0),
19  IonThreshold = cms.double(30.0)
20 )
21 
22 common_maximum_time = cms.PSet(
23  MaxTrackTime = cms.double(500.0), # ns
24  MaxTrackTimeForward = cms.double(2000.0), # ns
25  MaxTimeNames = cms.vstring(),
26  MaxTrackTimes = cms.vdouble(), # ns
27  MaxZCentralCMS = cms.double(50.0), # m
28  DeadRegions = cms.vstring('QuadRegion','InterimRegion'),
29  CriticalEnergyForVacuum = cms.double(2.0), # MeV
30  CriticalDensity = cms.double(1e-15) # g/cm3
31 )
32 
33 h2tb.toModify(common_maximum_time,
34  MaxTrackTime = cms.double(1000.0),
35  DeadRegions = cms.vstring()
36 )
37 
38 common_UsePMT = cms.PSet(
39  UseR7600UPMT = cms.bool(False)
40 )
41 
42 common_UseHF = cms.PSet(
43  Lambda1 = cms.double(280.0),
44  Lambda2 = cms.double(700.0),
45  Gain = cms.double(0.33),
46  CheckSurvive = cms.bool(False),
47  FibreR = cms.double(0.3)
48 )
49 
50 common_UseLuminosity = cms.PSet(
51  InstLuminosity = cms.double(0.),
52  DelivLuminosity = cms.double(5000.)
53 )
54 
55 common_MCtruth = cms.PSet(
56  DoFineCalo = cms.bool(False),
57  SaveCaloBoundaryInformation = cms.bool(False),
58  # currently unused; left in place for future studies
59  EminFineTrack = cms.double(10000.0),
60  FineCaloNames = cms.vstring('ECAL', 'HCal', 'HGCal', 'HFNoseVol', 'VCAL'),
61  FineCaloLevels = cms.vint32(4, 4, 8, 3, 3),
62  UseFineCalo = cms.vint32(2, 3),
63 )
64 
65 
66 from Configuration.ProcessModifiers.fineCalo_cff import fineCalo
67 fineCalo.toModify(common_MCtruth,
68  DoFineCalo = True,
69  UseFineCalo = [2],
70  EminFineTrack = 0.0,
71 )
72 
73 
74 from Configuration.Eras.Modifier_phase2_hgcal_cff import phase2_hgcal
75 phase2_hgcal.toModify(common_MCtruth,
76  SaveCaloBoundaryInformation = True
77 )
78 
79 g4SimHits = cms.EDProducer("OscarMTProducer",
80  g4GeometryDD4hepSource = cms.bool(False),
81  NonBeamEvent = cms.bool(False),
82  EventVerbose = cms.int32(0),
83  UseG4EventManager = cms.bool(True),
84  UseMagneticField = cms.bool(True),
85  UseCommandBaseScorer = cms.bool(False),
86  StoreRndmSeeds = cms.bool(False),
87  RestoreRndmSeeds = cms.bool(False),
88  PhysicsTablesDirectory = cms.untracked.string(''),
89  StorePhysicsTables = cms.untracked.bool(False),
90  RestorePhysicsTables = cms.untracked.bool(False),
91  UseParametrisedEMPhysics = cms.untracked.bool(True),
92  ThresholdForGeometryExceptions = cms.double(0.1),
93  TraceExceptions = cms.bool(False),
94  CheckGeometry = cms.untracked.bool(False),
95  OnlySDs = cms.vstring('ZdcSensitiveDetector', 'TotemT2ScintSensitiveDetector', 'TotemSensitiveDetector', 'RomanPotSensitiveDetector', 'PLTSensitiveDetector', 'MuonSensitiveDetector', 'MtdSensitiveDetector', 'BCM1FSensitiveDetector', 'EcalSensitiveDetector', 'CTPPSSensitiveDetector', 'BSCSensitiveDetector', 'CTPPSDiamondSensitiveDetector', 'FP420SensitiveDetector', 'BHMSensitiveDetector', 'CastorSensitiveDetector', 'CaloTrkProcessing', 'HcalSensitiveDetector', 'TkAccumulatingSensitiveDetector'),
96  Init = cms.PSet(
97  DefaultVoxelDensity = cms.double(2.0),
98  VoxelRegions = cms.vstring(),
99  VoxelDensityPerRegion = cms.vdouble()
100  ),
101  G4CheckOverlap = cms.untracked.PSet(
102  OutputBaseName = cms.string('2022'),
103  MaterialFlag = cms.bool(True),
104  GeomFlag = cms.bool(True),
105  OverlapFlag = cms.bool(False),
106  RegionFlag = cms.bool(True), # if true - selection by G4Region name
107  gdmlFlag = cms.bool(False), # if true - dump gdml file
108  Verbose = cms.bool(True),
109  Tolerance = cms.double(0.0),
110  Resolution = cms.int32(10000),
111  ErrorThreshold = cms.int32(1),
112  Level = cms.int32(1),
113  Depth = cms.int32(3), # -1 means check whatever depth
114  PVname = cms.string(''),
115  LVname = cms.string(''),
116  NodeNames = cms.vstring('World')
117  ),
118  G4Commands = cms.vstring(),
119  G4CommandsEndRun = cms.vstring(),
120  SteppingVerbosity = cms.untracked.int32(0),
121  StepVerboseThreshold = cms.untracked.double(0.1), # in GeV
122  VerboseEvents = cms.untracked.vint32(),
123  VertexNumber = cms.untracked.vint32(),
124  VerboseTracks = cms.untracked.vint32(),
125  FileNameField = cms.untracked.string(''),
126  FileNameGDML = cms.untracked.string(''),
127  FileNameRegions = cms.untracked.string(''),
128  Watchers = cms.VPSet(),
129  HepMCProductLabel = cms.InputTag("generatorSmeared"),
130  theLHCTlinkTag = cms.InputTag("LHCTransport"),
131  LHCTransport = cms.bool(False),
132  CustomUIsession = cms.untracked.PSet(
133  Type = cms.untracked.string("MessageLogger"), # alternatives: MessageLoggerThreadPrefix, FilePerThread
134  ThreadPrefix = cms.untracked.string("W"), # for MessageLoggerThreadPrefix
135  ThreadFile = cms.untracked.string("sim_output_thread"), # for FilePerThread
136  ),
137  MagneticField = cms.PSet(
138  UseLocalMagFieldManager = cms.bool(False),
139  Verbosity = cms.bool(False),
140  ConfGlobalMFM = cms.PSet(
141  Volume = cms.string('OCMS'),
142  OCMS = cms.PSet(
143  Stepper = cms.string('CMSTDormandPrince45'),
144  Type = cms.string('CMSIMField'),
145  StepperParam = cms.PSet(
146  VacRegions = cms.vstring(),
147 # VacRegions = cms.vstring('DefaultRegionForTheWorld','BeamPipeVacuum','BeamPipeOutside'),
148  EnergyThTracker = cms.double(0.2),
149  RmaxTracker = cms.double(8000),
150  ZmaxTracker = cms.double(11000),
151  MaximumEpsilonStep = cms.untracked.double(0.01),
152  DeltaOneStep = cms.double(0.001),
153  DeltaOneStepTracker = cms.double(1e-4),
154  MaximumLoopCounts = cms.untracked.double(1000.0),
155  DeltaChord = cms.double(0.002),
156  DeltaChordTracker = cms.double(0.001),
157  MinStep = cms.double(0.1),
158  DeltaIntersectionAndOneStep = cms.untracked.double(-1.0),
159  DeltaIntersection = cms.double(0.0001),
160  DeltaIntersectionTracker = cms.double(1e-6),
161  MaxStep = cms.double(150.),
162  MinimumEpsilonStep = cms.untracked.double(1e-05),
163  EnergyThSimple = cms.double(0.015),
164  DeltaChordSimple = cms.double(0.1),
165  DeltaOneStepSimple = cms.double(0.1),
166  DeltaIntersectionSimple = cms.double(0.01),
167  MaxStepSimple = cms.double(50.),
168  )
169  )
170  ),
171  delta = cms.double(1.0)
172  ),
173  Physics = cms.PSet(
174  common_maximum_time,
175  # NOTE : if you want EM Physics only,
176  # please select "SimG4Core/Physics/DummyPhysics" for type
177  # and turn ON DummyEMPhysics
178  #
179  type = cms.string('SimG4Core/Physics/FTFP_BERT_EMM'),
180  DummyEMPhysics = cms.bool(False),
181  # 1 will print cuts as they get set from DD
182  # 2 will do as 1 + will dump Geant4 table of cuts
183  Verbosity = cms.untracked.int32(0),
184  # EM physics options
185  CutsPerRegion = cms.bool(True),
186  CutsOnProton = cms.bool(True),
187  DefaultCutValue = cms.double(1.0),
188  G4BremsstrahlungThreshold = cms.double(0.5),
189  G4MuonBremsstrahlungThreshold = cms.double(10000.),
190  G4TrackingCut = cms.double(0.025),
191  G4MscRangeFactor = cms.double(0.04),
192  G4MscGeomFactor = cms.double(2.5),
193  G4MscSafetyFactor = cms.double(0.6),
194  G4MscLambdaLimit = cms.double(1.0), # in mm
195  G4MscStepLimit = cms.string("UseSafety"),
196  G4GammaGeneralProcess = cms.bool(True),
197  G4ElectronGeneralProcess = cms.bool(False),
198  G4TransportWithMSC = cms.int32(2), # 1 - fEnabled, 2 - fMultipleSteps
199  PhotoeffectBelowKShell = cms.bool(False),
200  G4HepEmActive = cms.bool(False),
201  G4MuonPairProductionByMuon = cms.bool(False),
202  ReadMuonData = cms.bool(False),
203  Region = cms.string(''),
204  TrackingCut = cms.bool(False),
205  SRType = cms.bool(True),
206  FlagMuNucl = cms.bool(False),
207  FlagFluo = cms.bool(False),
208  EMPhysics = cms.untracked.bool(True),
209  # Hadronic physics options
210  HadPhysics = cms.untracked.bool(True),
211  FlagBERT = cms.untracked.bool(False),
212  EminFTFP = cms.double(3.), # in GeV
213  EmaxBERT = cms.double(6.), # in GeV
214  EminQGSP = cms.double(12.), # in GeV
215  EmaxFTFP = cms.double(25.), # in GeV
216  EmaxBERTpi = cms.double(12.), # in GeV
217  G4NeutronGeneralProcess = cms.bool(False),
218  G4BCHadronicProcess = cms.bool(False),
219  G4LightHyperNucleiTracking = cms.bool(False),
220  ThermalNeutrons = cms.untracked.bool(False),
221  # Exotica
222  MonopoleCharge = cms.untracked.int32(1),
223  MonopoleDeltaRay = cms.untracked.bool(True),
224  MonopoleMultiScatter = cms.untracked.bool(False),
225  MonopoleTransport = cms.untracked.bool(True),
226  MonopoleMass = cms.untracked.double(0),
227  ExoticaTransport = cms.untracked.bool(False),
228  ExoticaPhysicsSS = cms.untracked.bool(False),
229  RhadronPhysics = cms.bool(False),
230  DarkMPFactor = cms.double(1.0),
231  # GFlash methods
232  LowEnergyGflashEcal = cms.bool(False),
233  LowEnergyGflashEcalEmax = cms.double(0.02), # in GeV
234  GflashEcal = cms.bool(False),
235  GflashHcal = cms.bool(False),
236  GflashEcalHad = cms.bool(False),
237  GflashHcalHad = cms.bool(False),
238  bField = cms.double(3.8),
239  energyScaleEB = cms.double(1.032),
240  energyScaleEE = cms.double(1.024),
241  # Russian roulette
242  RusRoElectronEnergyLimit = cms.double(0.0),
243  RusRoEcalElectron = cms.double(1.0),
244  RusRoHcalElectron = cms.double(1.0),
245  RusRoMuonIronElectron = cms.double(1.0),
246  RusRoPreShowerElectron = cms.double(1.0),
247  RusRoCastorElectron = cms.double(1.0),
248  RusRoWorldElectron = cms.double(1.0),
249  # Tracking and step limiters
250  ElectronStepLimit = cms.bool(False),
251  ElectronRangeTest = cms.bool(False),
252  PositronStepLimit = cms.bool(False),
253  ProtonRegionLimit = cms.bool(False),
254  PionRegionLimit = cms.bool(False),
255  LimitsPerRegion = cms.vstring('EcalRegion','HcalRegion'),
256  EnergyLimitsE = cms.vdouble(0.,0.0),
257  EnergyLimitsH = cms.vdouble(0.,0.0),
258  EnergyFactorsE = cms.vdouble(1.,0.0),
259  EnergyRMSE = cms.vdouble(0.0,0.0),
260  MinStepLimit = cms.double(1.0),
261  ModifyTransportation = cms.bool(False),
262  ThresholdWarningEnergy = cms.untracked.double(100.0), #in MeV
263  ThresholdImportantEnergy = cms.untracked.double(250.0), #in MeV
264  ThresholdTrials = cms.untracked.int32(10)
265  ),
266  Generator = cms.PSet(
267  common_maximum_time,
268  HectorEtaCut,
269  HepMCProductLabel = cms.InputTag('generatorSmeared'),
270  ApplyPCuts = cms.bool(True),
271  ApplyPtransCut = cms.bool(False),
272  MinPCut = cms.double(0.04),
273  MaxPCut = cms.double(99999.0),
274  ApplyEtaCuts = cms.bool(True),
275  MinEtaCut = cms.double(-5.5),
276  MaxEtaCut = cms.double(5.5),
277  RDecLenCut = cms.double(2.9),
278  LDecLenCut = cms.double(30.0),
279  ApplyPhiCuts = cms.bool(False),
280  MinPhiCut = cms.double(-3.14159265359),
281  MaxPhiCut = cms.double(3.14159265359),
282  ApplyLumiMonitorCuts = cms.bool(False),
283  Verbosity = cms.untracked.int32(0),
284  PDGselection = cms.PSet(
285  PDGfilterSel = cms.bool(False),
286  PDGfilter = cms.vint32(21,1,2,3,4,5,6)
287  )
288  ),
289  RunAction = cms.PSet(
290  StopFile = cms.string('')
291  ),
292  EventAction = cms.PSet(
293  debug = cms.untracked.bool(False),
294  StopFile = cms.string(''),
295  PrintRandomSeed = cms.bool(False),
296  CollapsePrimaryVertices = cms.bool(False)
297  ),
298  StackingAction = cms.PSet(
299  common_heavy_suppression,
300  common_maximum_time,
301  KillDeltaRay = cms.bool(False),
302  TrackNeutrino = cms.bool(False),
303  KillHeavy = cms.bool(False),
304  KillGamma = cms.bool(True),
305  GammaThreshold = cms.double(0.0001),
306  SaveFirstLevelSecondary = cms.untracked.bool(False),
307  SavePrimaryDecayProductsAndConversionsInTracker = cms.untracked.bool(False),
308  SavePrimaryDecayProductsAndConversionsInCalo = cms.untracked.bool(False),
309  SavePrimaryDecayProductsAndConversionsInMuon = cms.untracked.bool(False),
310  SaveAllPrimaryDecayProductsAndConversions = cms.untracked.bool(True),
311  RusRoGammaEnergyLimit = cms.double(5.0),
312  RusRoEcalGamma = cms.double(0.3),
313  RusRoHcalGamma = cms.double(0.3),
314  RusRoMuonIronGamma = cms.double(0.3),
315  RusRoPreShowerGamma = cms.double(0.3),
316  RusRoCastorGamma = cms.double(0.3),
317  RusRoWorldGamma = cms.double(0.3),
318  RusRoNeutronEnergyLimit = cms.double(10.0),
319  RusRoEcalNeutron = cms.double(0.1),
320  RusRoHcalNeutron = cms.double(0.1),
321  RusRoMuonIronNeutron = cms.double(0.1),
322  RusRoPreShowerNeutron = cms.double(0.1),
323  RusRoCastorNeutron = cms.double(0.1),
324  RusRoWorldNeutron = cms.double(0.1),
325  RusRoProtonEnergyLimit = cms.double(0.0),
326  RusRoEcalProton = cms.double(1.0),
327  RusRoHcalProton = cms.double(1.0),
328  RusRoMuonIronProton = cms.double(1.0),
329  RusRoPreShowerProton = cms.double(1.0),
330  RusRoCastorProton = cms.double(1.0),
331  RusRoWorldProton = cms.double(1.0)
332  ),
333  TrackingAction = cms.PSet(
334  common_MCtruth,
335  DetailedTiming = cms.untracked.bool(False),
336  CheckTrack = cms.untracked.bool(False),
337  EndPrintTrackID = cms.int32(0)
338  ),
339  SteppingAction = cms.PSet(
340  common_maximum_time,
341  MaxNumberOfSteps = cms.int32(20000),
342  EkinNames = cms.vstring(),
343  EkinThresholds = cms.vdouble(),
344  EkinParticles = cms.vstring()
345  ),
346  TrackerSD = cms.PSet(
347  ZeroEnergyLoss = cms.bool(False),
348  PrintHits = cms.bool(False),
349  ElectronicSigmaInNanoSeconds = cms.double(12.06),
350  NeverAccumulate = cms.bool(False),
351  EnergyThresholdForPersistencyInGeV = cms.double(0.2),
352  EnergyThresholdForHistoryInGeV = cms.double(0.05)
353  ),
354  MuonSD = cms.PSet(
355  EnergyThresholdForPersistency = cms.double(1.0),
356  PrintHits = cms.bool(False),
357  AllMuonsPersistent = cms.bool(True),
358  UseDemoHitRPC = cms.bool(True),
359  UseDemoHitGEM = cms.bool(True),
360  HaveDemoChambers = cms.bool(True)
361  ),
362  CaloSD = cms.PSet(
363  common_heavy_suppression,
364  common_MCtruth,
365  SuppressHeavy = cms.bool(False),
366  EminTrack = cms.double(1.0),
367  TmaxHit = cms.double(1000.0),
368  HCNames = cms.vstring('EcalHitsEB','EcalHitsEE','EcalHitsES','HcalHits','ZDCHITS'),
369  EminHits = cms.vdouble(0.015,0.010,0.0,0.0,0.0),
370  EminHitsDepth = cms.vdouble(0.0,0.0,0.0,0.0,0.0),
371  TmaxHits = cms.vdouble(500.0,500.0,500.0,500.0,2000.0),
372  UseResponseTables = cms.vint32(0,0,0,0,0),
373  BeamPosition = cms.double(0.0),
374  CorrectTOFBeam = cms.bool(False),
375  DetailedTiming = cms.untracked.bool(False),
376  UseMap = cms.untracked.bool(False),
377  Verbosity = cms.untracked.int32(0),
378  CheckHits = cms.untracked.int32(25)
379  ),
380  CaloResponse = cms.PSet(
381  UseResponseTable = cms.bool(True),
382  ResponseScale = cms.double(1.0),
383  ResponseFile = cms.FileInPath('SimG4CMS/Calo/data/responsTBpim50.dat')
384  ),
385  ECalSD = cms.PSet(
386  common_UseLuminosity,
387  UseBirkLaw = cms.bool(True),
388  BirkL3Parametrization = cms.bool(True),
389  BirkSlope = cms.double(0.253694),
390  BirkCut = cms.double(0.1),
391  BirkC1 = cms.double(0.03333),
392  BirkC3 = cms.double(1.0),
393  BirkC2 = cms.double(0.0),
394  SlopeLightYield = cms.double(0.02),
395  StoreSecondary = cms.bool(False),
396  TimeSliceUnit = cms.double(1),
397  IgnoreTrackID = cms.bool(False),
398  XtalMat = cms.untracked.string('E_PbWO4'),
399  TestBeam = cms.untracked.bool(False),
400  NullNumbering = cms.untracked.bool(False),
401  StoreRadLength = cms.untracked.bool(False),
402  ScaleRadLength = cms.untracked.double(1.0),
403  StoreLayerTimeSim = cms.untracked.bool(False),
404  AgeingWithSlopeLY = cms.untracked.bool(False),
405  Detectors = cms.untracked.int32(3),
406  DumpGeometry = cms.untracked.int32(0)
407  ),
408  HCalSD = cms.PSet(
409  common_UseLuminosity,
410  UseBirkLaw = cms.bool(True),
411  BirkC3 = cms.double(1.75),
412  BirkC2 = cms.double(0.142),
413  BirkC1 = cms.double(0.0060),
414  UseShowerLibrary = cms.bool(True),
415  UseParametrize = cms.bool(False),
416  UsePMTHits = cms.bool(False),
417  UseFibreBundleHits = cms.bool(False),
418  TestNumberingScheme = cms.bool(False),
419  doNeutralDensityFilter = cms.bool(False),
420  EminHitHB = cms.double(0.0),
421  EminHitHE = cms.double(0.0),
422  EminHitHO = cms.double(0.0),
423  EminHitHF = cms.double(0.0),
424  BetaThreshold = cms.double(0.7),
425  TimeSliceUnit = cms.double(1),
426  IgnoreTrackID = cms.bool(False),
427  HBDarkening = cms.bool(False),
428  HEDarkening = cms.bool(False),
429  HFDarkening = cms.bool(False),
430  UseHF = cms.untracked.bool(True),
431  ForTBH2 = cms.untracked.bool(False),
432  ForTBHCAL = cms.untracked.bool(False),
433  UseLayerWt = cms.untracked.bool(False),
434  WtFile = cms.untracked.string('None'),
435  TestNS = cms.untracked.bool(False),
436  DumpGeometry = cms.untracked.bool(False),
437  HFDarkeningParameterBlock = HFDarkeningParameterBlock
438  ),
439  CaloTrkProcessing = cms.PSet(
440  common_MCtruth,
441  TestBeam = cms.bool(False),
442  EminTrack = cms.double(0.01),
443  PutHistory = cms.bool(False),
444  ),
445  HFShower = cms.PSet(
446  common_UsePMT,
447  common_UseHF,
448  PEPerGeV = cms.double(0.31),
449  TrackEM = cms.bool(False),
450  UseShowerLibrary = cms.bool(True),
451  UseHFGflash = cms.bool(False),
452  EminLibrary = cms.double(0.0),
453  LambdaMean = cms.double(350.0),
454  ApplyFiducialCut = cms.bool(True),
455  RefIndex = cms.double(1.459),
456  Aperture = cms.double(0.33),
457  ApertureTrapped = cms.double(0.22),
458  CosApertureTrapped= cms.double(0.5),
459  SinPsiMax = cms.untracked.double(0.5),
460  ParametrizeLast = cms.untracked.bool(False),
461  HFShowerBlock = cms.PSet(refToPSet_ = cms.string("HFShowerBlock"))
462  ),
463  HFShowerLibrary = cms.PSet(
464  HFLibraryFileBlock = cms.PSet(refToPSet_ = cms.string("HFLibraryFileBlock"))
465  ),
466  HFShowerPMT = cms.PSet(
467  common_UsePMT,
468  common_UseHF,
469  PEPerGeVPMT = cms.double(1.0),
470  RefIndex = cms.double(1.52),
471  Aperture = cms.double(0.99),
472  ApertureTrapped = cms.double(0.22),
473  CosApertureTrapped= cms.double(0.5),
474  SinPsiMax = cms.untracked.double(0.5)
475  ),
476  HFShowerStraightBundle = cms.PSet(
477  common_UsePMT,
478  common_UseHF,
479  FactorBundle = cms.double(1.0),
480  RefIndex = cms.double(1.459),
481  Aperture = cms.double(0.33),
482  ApertureTrapped = cms.double(0.22),
483  CosApertureTrapped= cms.double(0.5),
484  SinPsiMax = cms.untracked.double(0.5)
485  ),
486  HFShowerConicalBundle = cms.PSet(
487  common_UsePMT,
488  common_UseHF,
489  FactorBundle = cms.double(1.0),
490  RefIndex = cms.double(1.459),
491  Aperture = cms.double(0.33),
492  ApertureTrapped = cms.double(0.22),
493  CosApertureTrapped= cms.double(0.5),
494  SinPsiMax = cms.untracked.double(0.5)
495  ),
496  HFGflash = cms.PSet(
497  BField = cms.untracked.double(3.8),
498  WatcherOn = cms.untracked.bool(True),
499  FillHisto = cms.untracked.bool(True)
500  ),
501  CastorSD = cms.PSet(
502  useShowerLibrary = cms.bool(True),
503  minEnergyInGeVforUsingSLibrary = cms.double(1.0),
504  nonCompensationFactor = cms.double(0.817),
505  Verbosity = cms.untracked.int32(0)
506  ),
507  CastorShowerLibrary = cms.PSet(
508  FileName = cms.FileInPath('SimG4CMS/Forward/data/CastorShowerLibrary_CMSSW500_Standard.root'),
509  BranchEvt = cms.untracked.string('hadShowerLibInfo.'),
510  BranchEM = cms.untracked.string('emParticles.'),
511  BranchHAD = cms.untracked.string('hadParticles.'),
512  Verbosity = cms.untracked.bool(False)
513  ),
514  BHMSD = cms.PSet(
515  Verbosity = cms.untracked.int32(0)
516  ),
517  MtdSD = cms.PSet(
518  Verbosity = cms.untracked.int32(0),
519  TimeSliceUnit = cms.double(0.01), #stepping = 10 ps (for timing)
520  IgnoreTrackID = cms.bool(False),
521  EminHit = cms.double(0.0),
522  CheckID = cms.untracked.bool(True),
523  EnergyThresholdForPersistencyInGeV = cms.double(1e9), # keep temporarily old behaviour
524  EnergyThresholdForHistoryInGeV = cms.double(1e9) # keep temporarily old behaviour)
525  ),
526  HGCSD = cms.PSet(
527  Verbosity = cms.untracked.int32(0),
528  TimeSliceUnit = cms.double(0.001), #stepping = 1 ps (for timing)
529  IgnoreTrackID = cms.bool(False),
530  EminHit = cms.double(0.0),
531  FiducialCut = cms.bool(False),
532  DistanceFromEdge = cms.double(1.0),
533  StoreAllG4Hits = cms.bool(False),
534  RejectMouseBite = cms.bool(False),
535  RotatedWafer = cms.bool(False),
536  CornerMinMask = cms.int32(0),
537  HitCollection = cms.int32(1),
538  WaferAngles = cms.untracked.vdouble(90.0,30.0),
539  WaferSize = cms.untracked.double(123.7),
540  MouseBite = cms.untracked.double(2.5),
541  CheckID = cms.untracked.bool(False),
542  UseDetector = cms.untracked.int32(3),
543  Detectors = cms.untracked.int32(2),
544  MissingWaferFile = cms.untracked.string("")
545  ),
546  HGCScintSD = cms.PSet(
547  Verbosity = cms.untracked.int32(0),
548  EminHit = cms.double(0.0),
549  UseBirkLaw = cms.bool(True),
550  BirkC3 = cms.double(1.75),
551  BirkC2 = cms.double(0.142),
552  BirkC1 = cms.double(0.0052),
553  FiducialCut = cms.bool(False),
554  DistanceFromEdge = cms.double(1.0),
555  StoreAllG4Hits = cms.bool(False),
556  CheckID = cms.untracked.bool(False),
557  TileFileName = cms.untracked.string("")
558  ),
559  HFNoseSD = cms.PSet(
560  Verbosity = cms.untracked.int32(0),
561  TimeSliceUnit = cms.double(0.001), #stepping = 1 ps (for timing)
562  IgnoreTrackID = cms.bool(False),
563  EminHit = cms.double(0.0),
564  FiducialCut = cms.bool(False),
565  DistanceFromEdge = cms.double(1.0),
566  StoreAllG4Hits = cms.bool(False),
567  RejectMouseBite = cms.bool(False),
568  RotatedWafer = cms.bool(False),
569  CornerMinMask = cms.int32(0),
570  WaferAngles = cms.untracked.vdouble(90.0,30.0),
571  CheckID = cms.untracked.bool(True),
572  ),
573  TotemRPSD = cms.PSet(
574  Verbosity = cms.int32(0)
575  ),
576  TotemSD = cms.PSet(
577  Verbosity = cms.untracked.int32(0)
578  ),
579  TotemT2ScintSD = cms.PSet(
580  UseBirkLaw = cms.bool(True),
581  BirkC3 = cms.double(1.75),
582  BirkC2 = cms.double(0.142),
583  BirkC1 = cms.double(0.006),
584  TimeSliceUnit = cms.double(1),
585  IgnoreTrackID = cms.bool(False),
586  ),
587  PPSDiamondSD = cms.PSet(
588  Verbosity = cms.int32(0)
589  ),
590  PPSPixelSD = cms.PSet(
591  Verbosity = cms.untracked.int32(0)
592  ),
593  ZdcSD = cms.PSet(
594  Verbosity = cms.int32(0),
595  UseShowerLibrary = cms.bool(True),
596  UseShowerHits = cms.bool(False),
597  FiberDirection = cms.double(45.0),
598  ZdcHitEnergyCut = cms.double(10.0)
599  ),
600  ZdcShowerLibrary = cms.PSet(
601  Verbosity = cms.untracked.int32(0)
602  ),
603  FP420SD = cms.PSet(
604  Verbosity = cms.untracked.int32(2)
605  ),
606  BscSD = cms.PSet(
607  Verbosity = cms.untracked.int32(0)
608  ),
609  PltSD = cms.PSet(
610  EnergyThresholdForPersistencyInGeV = cms.double(0.2),
611  EnergyThresholdForHistoryInGeV = cms.double(0.05)
612  ),
613  Bcm1fSD = cms.PSet(
614  EnergyThresholdForPersistencyInGeV = cms.double(0.010),
615  EnergyThresholdForHistoryInGeV = cms.double(0.005)
616  ),
617  HcalTB02SD = cms.PSet(
618  UseBirkLaw = cms.untracked.bool(False),
619  BirkC1 = cms.untracked.double(0.013),
620  BirkC3 = cms.untracked.double(1.75),
621  BirkC2 = cms.untracked.double(0.0568)
622  ),
623  EcalTBH4BeamSD = cms.PSet(
624  UseBirkLaw = cms.bool(False),
625  BirkC1 = cms.double(0.013),
626  BirkC3 = cms.double(1.75),
627  BirkC2 = cms.double(0.0568)
628  ),
629  HGCalTestBeamSD = cms.PSet(
630  Material = cms.string('Scintillator'),
631  UseBirkLaw = cms.bool(False),
632  BirkC1 = cms.double(0.013),
633  BirkC3 = cms.double(1.75),
634  BirkC2 = cms.double(0.0568),
635  ),
636  HcalTB06BeamSD = cms.PSet(
637  UseBirkLaw = cms.bool(False),
638  BirkC1 = cms.double(0.013),
639  BirkC3 = cms.double(1.75),
640  BirkC2 = cms.double(0.0568)
641  ),
642  AHCalSD = cms.PSet(
643  UseBirkLaw = cms.bool(True),
644  BirkC3 = cms.double(1.75),
645  BirkC2 = cms.double(0.142),
646  BirkC1 = cms.double(0.0052),
647  EminHit = cms.double(0.0),
648  TimeSliceUnit = cms.double(1),
649  IgnoreTrackID = cms.bool(False),
650  ),
651 )
652 
655 from Configuration.Eras.Modifier_run2_common_cff import run2_common
656 
657 
660 from Configuration.Eras.Modifier_run2_HCAL_2017_cff import run2_HCAL_2017
661 run2_HCAL_2017.toModify( g4SimHits, HCalSD = dict( TestNumberingScheme = True ) )
662 
663 
666 from Configuration.Eras.Modifier_run3_common_cff import run3_common
667 run3_common.toModify( g4SimHits, CastorSD = dict( useShowerLibrary = False ) )
668 run3_common.toModify( g4SimHits, LHCTransport = True )
669 
670 
673 from Configuration.Eras.Modifier_pp_on_PbPb_run3_cff import pp_on_PbPb_run3
674 pp_on_PbPb_run3.toModify( g4SimHits, LHCTransport = False )
675 
676 
679 from Configuration.Eras.Modifier_phase2_timing_cff import phase2_timing
680 phase2_timing.toModify( g4SimHits, ECalSD = dict(
681  StoreLayerTimeSim = True,
682  TimeSliceUnit = 0.001 )
683 )
684 
685 
688 from Configuration.ProcessModifiers.ecal_component_cff import ecal_component
689 from Configuration.ProcessModifiers.ecal_component_finely_sampled_waveforms_cff import ecal_component_finely_sampled_waveforms
690 (ecal_component | ecal_component_finely_sampled_waveforms).toModify(g4SimHits,ECalSD = dict(StoreLayerTimeSim = True, SlopeLightYield = 0.0))
691 
692 
695 from Configuration.Eras.Modifier_h2tb_cff import h2tb
696 h2tb.toModify(g4SimHits,
697  OnlySDs = ['EcalSensitiveDetector', 'CaloTrkProcessing', 'HcalTB06BeamDetector', 'HcalSensitiveDetector'],
698  ECalSD = dict(
699  TestBeam = True ),
700  CaloSD = dict(
701  EminHits = [0.0, 0.0, 0.0, 0.0, 0.0],
702  TmaxHits = [1000.0, 1000.0, 1000.0, 1000.0, 2000.0] ),
703  CaloTrkProcessing = dict(
704  TestBeam = True ),
705  HCalSD = dict(
706  ForTBHCAL = True )
707 )
708 
709 
712 from Configuration.ProcessModifiers.dd4hep_cff import dd4hep
713 dd4hep.toModify( g4SimHits, g4GeometryDD4hepSource = True )
714 
715 
718 
719 from Configuration.Eras.Modifier_phase2_common_cff import phase2_common
720 phase2_common.toModify(g4SimHits,
721  OnlySDs = ['ZdcSensitiveDetector', 'RomanPotSensitiveDetector', 'PLTSensitiveDetector', 'MuonSensitiveDetector', 'MtdSensitiveDetector', 'BCM1FSensitiveDetector', 'EcalSensitiveDetector', 'CTPPSSensitiveDetector', 'HGCalSensitiveDetector', 'CTPPSDiamondSensitiveDetector', 'FP420SensitiveDetector', 'BHMSensitiveDetector', 'HFNoseSensitiveDetector', 'HGCScintillatorSensitiveDetector', 'CaloTrkProcessing', 'HcalSensitiveDetector', 'TkAccumulatingSensitiveDetector'],
722  LHCTransport = False,
723  MuonSD = dict(
724  HaveDemoChambers = False )
725 )
726 
727 from Configuration.Eras.Modifier_hgcaltb_cff import hgcaltb
728 hgcaltb.toModify(g4SimHits,
729  OnlySDs = ['AHcalSensitiveDetector', 'HGCSensitiveDetector', 'HGCalSensitiveDetector', 'HGCalTB1601SensitiveDetector', 'HcalTB06BeamDetector'],
730  NonBeamEvent = True,
731  UseMagneticField = False,
732  CaloSD = dict(
733  EminHits = [0.0, 0.0, 0.0, 0.0, 0.0],
734  TmaxHits = [1000.0, 1000.0, 1000.0, 1000.0, 2000.0] ),
735  CaloTrkProcessing = dict(
736  TestBeam = True ),
737  HCalSD = dict(
738  ForTBHCAL = True)
739 )
740 
741 from Configuration.Eras.Modifier_phase2_hgcalV18_cff import phase2_hgcalV18
742 phase2_hgcalV18.toModify(g4SimHits,
743  HGCSD = dict(
744  HitCollection = 2)
745 )
HF Raddam Dose Class in /SimG4CMS/Calo.