ATLAS Offline Software
MC16.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2 from Campaigns.Utils import Campaign
3 
4 
5 def MC16a(flags):
6  """MC16a flags for MC to match 2015 and 2016 data"""
7  flags.Input.MCCampaign = Campaign.MC16a
8 
9  flags.Beam.NumberOfCollisions = 20.
10 
11  from LArConfiguration.LArConfigRun2 import LArConfigRun2PileUp
12  LArConfigRun2PileUp(flags)
13  flags.Digitization.HighGainEMECIW = True
14 
15  # pile-up
16  flags.Digitization.PU.NumberOfLowPtMinBias = 44.3839246425
17  flags.Digitization.PU.NumberOfHighPtMinBias = 0.116075313
18  flags.Digitization.PU.BunchStructureConfig = 'RunDependentSimData.BunchStructure_2015'
19  flags.Digitization.PU.ProfileConfig = 'RunDependentSimData.PileUpProfile_run284500_MC16a'
20 
21 
22 def MC16d(flags):
23  """MC16d flags for MC to match 2017 data"""
24  flags.Input.MCCampaign = Campaign.MC16d
25 
26  flags.Beam.NumberOfCollisions = 20.
27 
28  from LArConfiguration.LArConfigRun2 import LArConfigRun2PileUp
29  LArConfigRun2PileUp(flags)
30 
31  # pile-up
32  flags.Digitization.PU.NumberOfLowPtMinBias = 80.290021063135
33  flags.Digitization.PU.NumberOfHighPtMinBias = 0.2099789464
34  flags.Digitization.PU.BunchStructureConfig = 'RunDependentSimData.BunchStructure_2017'
35  flags.Digitization.PU.ProfileConfig = 'RunDependentSimData.PileUpProfile_run300000_MC16d'
36 
37 
38 def MC16e(flags):
39  """MC16e flags for MC to match 2018 data"""
40  flags.Input.MCCampaign = Campaign.MC16e
41 
42  flags.Beam.NumberOfCollisions = 20.
43 
44  from LArConfiguration.LArConfigRun2 import LArConfigRun2PileUp
45  LArConfigRun2PileUp(flags)
46 
47  # pile-up
48  flags.Digitization.PU.NumberOfLowPtMinBias = 99.2404608
49  flags.Digitization.PU.NumberOfHighPtMinBias = 0.2595392
50  flags.Digitization.PU.BunchStructureConfig = 'RunDependentSimData.BunchStructure_2017'
51  flags.Digitization.PU.ProfileConfig = 'RunDependentSimData.PileUpProfile_run310000_MC16e'
52 
53 
54 def MC16NoPileUp(flags):
55  """MC16 flags for MC without pile-up"""
56  flags.Input.MCCampaign = Campaign.MC16a
57 
58  flags.Beam.NumberOfCollisions = 0.
59 
60  from LArConfiguration.LArConfigRun2 import LArConfigRun2NoPileUp
62 
63 
65  """MC16 flags for simulation without specifying conditions IoVs"""
66  flags.Input.MCCampaign = Campaign.MC16a
67 
68  from SimulationConfig.SimEnums import TruthStrategy
69  flags.Sim.PhysicsList = 'FTFP_BERT_ATL'
70  flags.Sim.TruthStrategy = TruthStrategy.MC15aPlus
71 
72  flags.Sim.TRTRangeCut = 30.0
73  flags.Sim.TightMuonStepping = True
74 
75  from SimulationConfig.G4Optimizations import enableBeamPipeKill, enableFrozenShowersFCalOnly
76  enableBeamPipeKill(flags)
77  if flags.Sim.ISF.Simulator.isFullSim():
79 
80 
82  """MC16 flags for Simulation"""
83  MC16SimulationNoIoV(flags)
84 
85  flags.Input.RunNumbers = [284500]
86  flags.Input.OverrideRunNumber = True
87  flags.Input.LumiBlockNumbers = [1] # dummy value
88 
89 
90 def MC16Simulation(flags):
91  """MC16 flags for Simulation (alias)"""
python.G4Optimizations.enableBeamPipeKill
def enableBeamPipeKill(flags)
Definition: G4Optimizations.py:16
python.MC16.MC16SimulationNoIoV
def MC16SimulationNoIoV(flags)
Definition: MC16.py:64
python.MC16.MC16e
def MC16e(flags)
Definition: MC16.py:38
python.LArConfigRun2.LArConfigRun2PileUp
def LArConfigRun2PileUp(flags)
Definition: LArConfigRun2.py:3
python.MC16.MC16d
def MC16d(flags)
Definition: MC16.py:22
python.MC16.MC16SimulationSingleIoV
def MC16SimulationSingleIoV(flags)
Definition: MC16.py:81
python.LArConfigRun2.LArConfigRun2NoPileUp
def LArConfigRun2NoPileUp(flags)
Definition: LArConfigRun2.py:13
python.G4Optimizations.enableFrozenShowersFCalOnly
def enableFrozenShowersFCalOnly(flags)
Definition: G4Optimizations.py:5
python.MC16.MC16Simulation
def MC16Simulation(flags)
Definition: MC16.py:90
python.MC16.MC16a
def MC16a(flags)
Definition: MC16.py:5
python.MC16.MC16NoPileUp
def MC16NoPileUp(flags)
Definition: MC16.py:54