CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
Eras.Eras Class Reference
Inheritance diagram for Eras.Eras:

Public Member Functions

def __init__ (self)
 
def addEra (self, name, obj)
 
def inspect (self, name=None, onlyChosen=False, details=True)
 
def inspectEra (self, e, details)
 
def inspectModifier (self, m, details)
 

Public Attributes

 pythonCfgLines
 

Detailed Description

Dummy container for all the cms.Modifier instances that config fragments
can use to selectively configure depending on what scenario is active.

Definition at line 5 of file Eras.py.

Constructor & Destructor Documentation

◆ __init__()

def Eras.Eras.__init__ (   self)

Definition at line 10 of file Eras.py.

10  def __init__(self):
11  allEras=['Run1_pA',
12  'Run1_peripheralPbPb',
13  'Run2_50ns',
14  'Run2_50ns_HIPM',
15  'Run2_25ns',
16  'Run2_25ns_HIPM',
17  'Run2_25ns_peripheralPbPb',
18  'Run2_HI',
19  'Run2_2016',
20  'Run2_2016_HIPM',
21  'Run2_2016_trackingLowPU',
22  'Run2_2016_pA',
23  'Run2_2017',
24  'Run2_2017_noMkFit',
25  'Run2_2017_FastSim', #new modifier for Phase1 FastSim, skips the muon GEM sequence
26  'Run2_2017_trackingRun2',
27  'Run2_2017_trackingLowPU',
28  'Run2_2017_pp_on_XeXe',
29  'Run2_2017_ppRef',
30  'Run2_2018',
31  'Run2_2018_FastSim', #new modifier for Phase1 FastSim, skips the muon GEM sequence
32  'Run2_2018_pp_on_AA',
33  'Run2_2018_pp_on_AA_noHCALmitigation',
34  'Run2_2018_highBetaStar',
35  'Run2_2018_noMkFit',
36  'Run3',
37  'Run3_2023',
38  'Run3_2024',
39  'Run3_2025',
40  'Run3_noMkFit',
41  'Run3_pp_on_PbPb',
42  'Run3_pp_on_PbPb_approxSiStripClusters',
43  'Run3_pp_on_PbPb_2023',
44  'Run3_pp_on_PbPb_approxSiStripClusters_2023',
45  'Run3_dd4hep',
46  'Run3_DDD',
47  'Run3_FastSim',
48  'Run3_2023_FastSim',
49  'Run3_2023_ZDC',
50  'Run3_2023_UPC',
51  'Phase2',
52  'Phase2C9',
53  'Phase2C10',
54  'Phase2C11',
55  'Phase2C12',
56  'Phase2C9_dd4hep',
57  'Phase2C10_dd4hep',
58  'Phase2C11_dd4hep',
59  'Phase2C11I13',
60  'Phase2C12_dd4hep',
61  'Phase2C11M9',
62  'Phase2C11I13M9',
63  'Phase2C11I13T25M9',
64  'Phase2C11I13T26M9',
65  'Phase2C17I13M9',
66  'Phase2C20I13M9',
67  'Phase2C22I13M9'
68  ]
69 
70  internalUseMods = ['run2_common', 'run2_25ns_specific',
71  'run2_50ns_specific', 'run2_HI_specific',
72  'stage1L1Trigger', 'fastSim',
73  'peripheralPbPb', 'pA_2016',
74  'run2_HE_2017', 'stage2L1Trigger', 'stage2L1Trigger_2017', 'stage2L1Trigger_2018', 'stage2L1Trigger_2021',
75  'run2_HF_2017', 'run2_HCAL_2017', 'run2_HEPlan1_2017', 'run2_HB_2018','run2_HE_2018',
76  'run3_HB', 'run3_HFSL', 'run3_common', 'run3_RPC',
77  'phase1Pixel', 'run3_GEM', 'run2_GEM_2017',
78  'run2_CSC_2018',
79  'phase2_common', 'phase2_tracker',
80  'phase2_muon', 'phase2_GEM', 'phase2_GE0',
81  'phase2_hgcal', 'phase2_timing', 'phase2_hfnose', 'phase2_hgcalV10', 'phase2_hgcalV11', 'phase2_hgcalV12',
82  'phase2_timing_layer', 'phase2_etlV4', 'phase2_hcal', 'phase2_ecal','phase2_ecal_devel', 'phase2_ecalTP_devel',
83  'phase2_trigger',
84  'phase2_squarePixels', 'phase2_3DPixels',
85  'trackingLowPU', 'trackingPhase1',
86  'ctpps', 'ctpps_2016', 'ctpps_2017', 'ctpps_2018', 'ctpps_2022',
87  'trackingPhase2PU140','highBetaStar_2018',
88  'tracker_apv_vfp30_2016', 'pf_badHcalMitigationOff',
89  'run2_miniAOD_80XLegacy','run2_miniAOD_94XFall17',
90  'run3_miniAOD_12X',
91  'run2_nanoAOD_106Xv2',
92  'run3_nanoAOD_122', 'run3_nanoAOD_124',
93  'run3_ecal_devel',
94  'run3_upc',
95  'hcalHardcodeConditions', 'hcalSkipPacker',
96  'run2_HLTconditions_2016','run2_HLTconditions_2017','run2_HLTconditions_2018',
97  'bParking']
98  internalUseModChains = ['run2_2017_noTrackingModifier', 'trackingMkFitProd']
99 
100  self.pythonCfgLines = {}
101 
102  for e in allEras:
103  eObj=getattr(__import__('Configuration.Eras.Era_'+e+'_cff',globals(),locals(),[e],0),e)
104  self.addEra(e,eObj)
105  self.pythonCfgLines[e] = 'from Configuration.Eras.Era_'+e+'_cff import '+e
106 
107  for e in internalUseMods:
108  eObj=getattr(__import__('Configuration.Eras.Modifier_'+e+'_cff',globals(),locals(),[e],0),e)
109  self.addEra(e,eObj)
110  self.pythonCfgLines[e] = 'from Configuration.Eras.Modifier_'+e+'_cff import '+e
111 
112  for e in internalUseModChains:
113  eObj=getattr(__import__('Configuration.Eras.ModifierChain_'+e+'_cff',globals(),locals(),[e],0),e)
114  self.addEra(e,eObj)
115  self.pythonCfgLines[e] = 'from Configuration.Eras.ModifierChain_'+e+'_cff import '+e
116 
117 
def __init__(self, dataset, job_number, job_id, job_name, isDA, isMC, applyBOWS, applyEXTRACOND, extraconditions, runboundary, lumilist, intlumi, maxevents, gt, allFromGT, alignmentDB, alignmentTAG, apeDB, apeTAG, bowDB, bowTAG, vertextype, tracktype, refittertype, ttrhtype, applyruncontrol, ptcut, CMSSW_dir, the_dir)

Member Function Documentation

◆ addEra()

def Eras.Eras.addEra (   self,
  name,
  obj 
)

Definition at line 118 of file Eras.py.

118  def addEra(self,name,obj):
119  setattr(self,name,obj)
120 

◆ inspect()

def Eras.Eras.inspect (   self,
  name = None,
  onlyChosen = False,
  details = True 
)

Definition at line 135 of file Eras.py.

References Eras.Eras.inspectEra(), mps_monitormerge.items, and print().

135  def inspect(self,name=None,onlyChosen=False,details=True):
136  if name==None:
137  print('Inspecting the known eras', end=' ')
138  if onlyChosen: print(' (all active)')
139  else: print('(all eras defined)')
140  else:
141  print('Inspecting the '+name+' era', end=' ')
142 
143  allEras=[]
144  for key, value in self.__dict__.items():
145  if isinstance(value, ModifierChain): allEras.append(key)
146 
147  for e in allEras:
148  if name is not None and name==e:
149  self.inspectEra(e,details)
150  if name is None:
151  if not onlyChosen or getattr(self,e).isChosen():
152  self.inspectEra(e,details)
153 
154 eras=Eras()
155 
156 
157 #eras.inspect()
158 
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47
Definition: Eras.py:1

◆ inspectEra()

def Eras.Eras.inspectEra (   self,
  e,
  details 
)

Definition at line 124 of file Eras.py.

References Eras.Eras.inspectModifier(), and print().

Referenced by Eras.Eras.inspect().

124  def inspectEra(self,e,details):
125  print('\nEra:',e)
126  print(' isChosen:',getattr(self,e)._isChosen())
127  if details: print(' Modifiers:')
128  nmod=0
129  for value in getattr(self,e).__dict__['_ModifierChain__chain']:
130  if isinstance(value, Modifier):
131  nmod=nmod+1
132  if details: self.inspectModifier(value,details)
133  print(' ',nmod,'modifiers defined')
134 
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47

◆ inspectModifier()

def Eras.Eras.inspectModifier (   self,
  m,
  details 
)

Definition at line 121 of file Eras.py.

References print().

Referenced by Eras.Eras.inspectEra().

121  def inspectModifier(self,m,details):
122  print(' ',m.__dict__ ['_Modifier__processModifiers'])
123 
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47

Member Data Documentation

◆ pythonCfgLines

Eras.Eras.pythonCfgLines

Definition at line 100 of file Eras.py.