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_2016_UPC',
24  'Run2_2017',
25  'Run2_2017_noMkFit',
26  'Run2_2017_FastSim', #new modifier for Phase1 FastSim, skips the muon GEM sequence
27  'Run2_2017_trackingRun2',
28  'Run2_2017_trackingLowPU',
29  'Run2_2017_pp_on_XeXe',
30  'Run2_2017_ppRef',
31  'Run2_2018',
32  'Run2_2018_FastSim', #new modifier for Phase1 FastSim, skips the muon GEM sequence
33  'Run2_2018_pp_on_AA',
34  'Run2_2018_pp_on_AA_noHCALmitigation',
35  'Run2_2018_highBetaStar',
36  'Run2_2018_noMkFit',
37  'Run3',
38  'Run3_2023',
39  'Run3_2024',
40  'Run3_2025',
41  'Run3_noMkFit',
42  'Run3_pp_on_PbPb',
43  'Run3_pp_on_PbPb_approxSiStripClusters',
44  'Run3_pp_on_PbPb_2023',
45  'Run3_pp_on_PbPb_approxSiStripClusters_2023',
46  'Run3_pp_on_PbPb_2024',
47  'Run3_pp_on_PbPb_approxSiStripClusters_2024',
48  'Run3_dd4hep',
49  'Run3_DDD',
50  'Run3_FastSim',
51  'Run3_2023_FastSim',
52  'Run3_2023_ZDC',
53  'Run3_2023_UPC',
54  'Run3_2024_ppRef',
55  'Run3_2024_UPC',
56  'Phase2',
57  'Phase2C9',
58  'Phase2C10',
59  'Phase2C11',
60  'Phase2C12',
61  'Phase2C9_dd4hep',
62  'Phase2C10_dd4hep',
63  'Phase2C11_dd4hep',
64  'Phase2C11I13',
65  'Phase2C12_dd4hep',
66  'Phase2C11M9',
67  'Phase2C11I13M9',
68  'Phase2C11I13T25M9',
69  'Phase2C11I13T26M9',
70  'Phase2C17I13M9',
71  'Phase2C20I13M9',
72  'Phase2C22I13M9'
73  ]
74 
75  internalUseMods = ['run2_common', 'run2_25ns_specific',
76  'run2_50ns_specific', 'run2_HI_specific',
77  'stage1L1Trigger', 'fastSim',
78  'peripheralPbPb', 'pA_2016',
79  'run2_HE_2017', 'stage2L1Trigger', 'stage2L1Trigger_2017', 'stage2L1Trigger_2018', 'stage2L1Trigger_2021',
80  'run2_HF_2017', 'run2_HCAL_2017', 'run2_HEPlan1_2017', 'run2_HB_2018','run2_HE_2018',
81  'run3_HB', 'run3_HFSL', 'run3_common', 'run3_RPC',
82  'phase1Pixel', 'run3_GEM', 'run2_GEM_2017',
83  'run2_CSC_2018',
84  'phase2_common', 'phase2_tracker',
85  'phase2_muon', 'phase2_GEM', 'phase2_GE0',
86  'phase2_hgcal', 'phase2_timing', 'phase2_hfnose', 'phase2_hgcalV10', 'phase2_hgcalV11', 'phase2_hgcalV12',
87  'phase2_timing_layer', 'phase2_etlV4', 'phase2_hcal', 'phase2_ecal','phase2_ecal_devel', 'phase2_ecalTP_devel',
88  'phase2_trigger',
89  'phase2_squarePixels', 'phase2_3DPixels',
90  'trackingLowPU', 'trackingPhase1',
91  'ctpps', 'ctpps_2016', 'ctpps_2017', 'ctpps_2018', 'ctpps_2022',
92  'trackingPhase2PU140','highBetaStar',
93  'tracker_apv_vfp30_2016', 'pf_badHcalMitigationOff',
94  'run2_nanoAOD_106Xv2',
95  'run3_nanoAOD_pre142X',
96  'run3_ecal_devel',
97  'run3_upc',
98  'hcalHardcodeConditions', 'hcalSkipPacker',
99  'run2_HLTconditions_2016','run2_HLTconditions_2017','run2_HLTconditions_2018',
100  'bParking']
101  internalUseModChains = ['run2_2017_noTrackingModifier', 'trackingMkFitProd']
102 
103  self.pythonCfgLines = {}
104 
105  for e in allEras:
106  eObj=getattr(__import__('Configuration.Eras.Era_'+e+'_cff',globals(),locals(),[e],0),e)
107  self.addEra(e,eObj)
108  self.pythonCfgLines[e] = 'from Configuration.Eras.Era_'+e+'_cff import '+e
109 
110  for e in internalUseMods:
111  eObj=getattr(__import__('Configuration.Eras.Modifier_'+e+'_cff',globals(),locals(),[e],0),e)
112  self.addEra(e,eObj)
113  self.pythonCfgLines[e] = 'from Configuration.Eras.Modifier_'+e+'_cff import '+e
114 
115  for e in internalUseModChains:
116  eObj=getattr(__import__('Configuration.Eras.ModifierChain_'+e+'_cff',globals(),locals(),[e],0),e)
117  self.addEra(e,eObj)
118  self.pythonCfgLines[e] = 'from Configuration.Eras.ModifierChain_'+e+'_cff import '+e
119 
120 
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 121 of file Eras.py.

121  def addEra(self,name,obj):
122  setattr(self,name,obj)
123 

◆ inspect()

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

Definition at line 138 of file Eras.py.

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

138  def inspect(self,name=None,onlyChosen=False,details=True):
139  if name==None:
140  print('Inspecting the known eras', end=' ')
141  if onlyChosen: print(' (all active)')
142  else: print('(all eras defined)')
143  else:
144  print('Inspecting the '+name+' era', end=' ')
145 
146  allEras=[]
147  for key, value in self.__dict__.items():
148  if isinstance(value, ModifierChain): allEras.append(key)
149 
150  for e in allEras:
151  if name is not None and name==e:
152  self.inspectEra(e,details)
153  if name is None:
154  if not onlyChosen or getattr(self,e).isChosen():
155  self.inspectEra(e,details)
156 
157 eras=Eras()
158 
159 
160 #eras.inspect()
161 
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 127 of file Eras.py.

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

Referenced by Eras.Eras.inspect().

127  def inspectEra(self,e,details):
128  print('\nEra:',e)
129  print(' isChosen:',getattr(self,e)._isChosen())
130  if details: print(' Modifiers:')
131  nmod=0
132  for value in getattr(self,e).__dict__['_ModifierChain__chain']:
133  if isinstance(value, Modifier):
134  nmod=nmod+1
135  if details: self.inspectModifier(value,details)
136  print(' ',nmod,'modifiers defined')
137 
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 124 of file Eras.py.

References print().

Referenced by Eras.Eras.inspectEra().

124  def inspectModifier(self,m,details):
125  print(' ',m.__dict__ ['_Modifier__processModifiers'])
126 
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 103 of file Eras.py.