ATLAS Offline Software
Loading...
Searching...
No Matches
python.AutoconfigurePRW Namespace Reference

Functions

 getLumicalcFiles (campaign)
 actualMuFiles (campaign)
 defaultConfigFiles (campaign)
 getConfigurationFiles (campaign=None, dsid=None, data_type=None, files=None, useDefaultConfig=False)

Function Documentation

◆ actualMuFiles()

python.AutoconfigurePRW.actualMuFiles ( campaign)

Definition at line 55 of file AutoconfigurePRW.py.

55def actualMuFiles(campaign):
56 list = []
57
58 if campaign in [Campaign.MC16d, Campaign.MC20d]:
59 list.append(
60 'GoodRunsLists/data17_13TeV/20180619/physics_25ns_Triggerno17e33prim.actualMu.OflLumi-13TeV-010.root'
61 )
62 elif campaign in [Campaign.MC16e, Campaign.MC20e]:
63 list.append(
64 'GoodRunsLists/data18_13TeV/20190318/physics_25ns_Triggerno17e33prim.actualMu.OflLumi-13TeV-010.root'
65 )
66 elif campaign in [Campaign.MC21a, Campaign.MC23a]:
67 list.append(
68 'GoodRunsLists/data22_13p6TeV/20250321/purw.actualMu.root'
69 )
70 elif campaign in [Campaign.MC23c, Campaign.MC23d]:
71 list.append(
72 'GoodRunsLists/data23_13p6TeV/20250321/purw.actualMu.root'
73 )
74 elif campaign in [Campaign.MC23e]:
75 list.append(
76 'GoodRunsLists/data24_13p6TeV/20260127/purw.actualMu.root'
77 )
78 elif campaign in [Campaign.MC23g]:
79 list.append(
80 'GoodRunsLists/data25_13p6TeV/20260129/purw.actualMu.root'
81 )
82
83 if campaign in [Campaign.MC16d, Campaign.MC20d, Campaign.MC16e, Campaign.MC20e, Campaign.MC21a, Campaign.MC23a, Campaign.MC23c, Campaign.MC23d, Campaign.MC23e, Campaign.MC23g]:
84 assert(len(list) == 1)
85 else:
86 assert(len(list) == 0)
87
88 return list
89
90

◆ defaultConfigFiles()

python.AutoconfigurePRW.defaultConfigFiles ( campaign)

Definition at line 91 of file AutoconfigurePRW.py.

91def defaultConfigFiles(campaign):
92 list = []
93
94 if campaign in [Campaign.MC20a]:
95 list.append(
96 'PileupReweighting/mc20_common/mc20a.284500.physlite.prw.v1.root'
97 )
98 elif campaign in [Campaign.MC20d]:
99 list.append(
100 'PileupReweighting/mc20_common/mc20d.300000.physlite.prw.v1.root'
101 )
102 elif campaign in [Campaign.MC20e]:
103 list.append(
104 'PileupReweighting/mc20_common/mc20e.310000.physlite.prw.v1.root'
105 )
106 elif campaign in [Campaign.MC21a]:
107 list.append(
108 'PileupReweighting/mc21_common/mc21a.410000.physlite.prw.v1.root'
109 )
110 elif campaign in [Campaign.MC23a]:
111 list.append(
112 'PileupReweighting/mc23_common/mc23a.410000.physlite.prw.v2.root'
113 )
114 elif campaign in [Campaign.MC23c]:
115 list.append(
116 'PileupReweighting/mc23_common/mc23c.450000.physlite.prw.v1.root'
117 )
118 elif campaign in [Campaign.MC23d]:
119 list.append(
120 'PileupReweighting/mc23_common/mc23d.450000.physlite.prw.v1.root'
121 )
122 elif campaign in [Campaign.MC23e]:
123 list.append(
124 'PileupReweighting/mc23_common/mc23e.470000.physlite.prw.v1.root'
125 )
126 elif campaign in [Campaign.MC23g]:
127 list.append(
128 'PileupReweighting/mc23_common/mc23g.495000.physlite.prw.v1.root'
129 )
130 else:
131 raise ValueError(f'Unsupported campaign {campaign}')
132
133 assert(len(list) == 1)
134
135 return list
136
137

◆ getConfigurationFiles()

python.AutoconfigurePRW.getConfigurationFiles ( campaign = None,
dsid = None,
data_type = None,
files = None,
useDefaultConfig = False )

Definition at line 138 of file AutoconfigurePRW.py.

138def getConfigurationFiles(campaign=None, dsid=None, data_type=None, files=None, useDefaultConfig=False):
139 # Attempt auto-configuration
140 default_directory = 'dev/PileupReweighting/share'
141 configuration_files = []
142
143 if files is not None and (campaign is None or dsid is None or data_type is None):
144 if campaign is None:
145 campaign = getMCCampaign(files)
146
147 if dsid is None or data_type is None:
148 from AthenaConfiguration.AutoConfigFlags import GetFileMD
149 metadata = GetFileMD(files)
150 if dsid is None:
151 dsid = str(metadata.get('mc_channel_number', 0))
152 if data_type is None:
153 simulation_flavour = GetFileMD(files).get('Simulator', '')
154 if not simulation_flavour:
155 simulation_flavour = GetFileMD(files).get('SimulationFlavour', '')
156 data_type = DataType.FullSim if (not simulation_flavour or 'FullG4' in simulation_flavour) else DataType.FastSim
157
158 # data_type as in pileup analysis sequence: either 'data' or ('fullsim' or 'af3')
159 if data_type is DataType.Data:
160 raise ValueError('Data is not supported')
161
162 if data_type is DataType.FullSim:
163 simulation_type = 'FS'
164 elif data_type is DataType.FastSim:
165 simulation_type = 'AF3'
166 else:
167 raise ValueError(f'Invalid data_type {data_type}')
168
169 configuration_files = actualMuFiles(campaign)
170 if useDefaultConfig:
171 configuration_files += defaultConfigFiles(campaign)
172 return configuration_files
173
174 config = f'{default_directory}/DSID{dsid[:3]}xxx/pileup_{campaign.value}_dsid{dsid}_{simulation_type}.root'
175 from PathResolver import PathResolver
176 if not PathResolver.FindCalibFile(config):
177 return []
178 else:
179 configuration_files.append(config)
180 return configuration_files
static std::string FindCalibFile(const std::string &logical_file_name)
T * get(TKey *tobj)
get a TObject* from a TKey* (why can't a TObject be a TKey?)
Definition hcg.cxx:130

◆ getLumicalcFiles()

python.AutoconfigurePRW.getLumicalcFiles ( campaign)
Returns the list of lumicalc files for a given campaign 

Definition at line 6 of file AutoconfigurePRW.py.

6def getLumicalcFiles(campaign):
7 """ Returns the list of lumicalc files for a given campaign """
8 ilumical_files = {
9 Campaign.MC16a: [
10 'GoodRunsLists/data15_13TeV/20170619/PHYS_StandardGRL_All_Good_25ns_276262-284484_OflLumi-13TeV-008.root',
11 'GoodRunsLists/data16_13TeV/20180129/PHYS_StandardGRL_All_Good_25ns_297730-311481_OflLumi-13TeV-009.root'
12 ],
13 Campaign.MC16d: [
14 'GoodRunsLists/data17_13TeV/20180619/physics_25ns_Triggerno17e33prim.lumicalc.OflLumi-13TeV-010.root'
15 ],
16 Campaign.MC16e: [
17 'GoodRunsLists/data18_13TeV/20190318/ilumicalc_histograms_None_348885-364292_OflLumi-13TeV-010.root'
18 ],
19 Campaign.MC20a: [
20 'GoodRunsLists/data15_13TeV/20170619/PHYS_StandardGRL_All_Good_25ns_276262-284484_OflLumi-13TeV-008.root',
21 'GoodRunsLists/data16_13TeV/20180129/PHYS_StandardGRL_All_Good_25ns_297730-311481_OflLumi-13TeV-009.root'
22 ],
23 Campaign.MC20d: [
24 'GoodRunsLists/data17_13TeV/20180619/physics_25ns_Triggerno17e33prim.lumicalc.OflLumi-13TeV-010.root'
25 ],
26 Campaign.MC20e: [
27 'GoodRunsLists/data18_13TeV/20190318/ilumicalc_histograms_None_348885-364292_OflLumi-13TeV-010.root'
28 ],
29 Campaign.MC21a: [
30 'GoodRunsLists/data22_13p6TeV/20230207/ilumicalc_histograms_None_431810-440613_OflLumi-Run3-003.root'
31 ],
32 Campaign.MC23a: [
33 'GoodRunsLists/data22_13p6TeV/20250321/ilumicalc_histograms_None_431810-440613_OflLumi-Run3-004.root'
34 ],
35 Campaign.MC23c: [
36 'GoodRunsLists/data23_13p6TeV/20250321/ilumicalc_histograms_None_451587-456749_OflLumi-Run3-004.root'
37 ],
38 Campaign.MC23d: [
39 'GoodRunsLists/data23_13p6TeV/20250321/ilumicalc_histograms_None_451587-456749_OflLumi-Run3-004.root'
40 ],
41 Campaign.MC23e: [
42 'GoodRunsLists/data24_13p6TeV/20260127/ilumicalc_histograms_None_497924-509849_OflLumi-Run3-006.root'
43 ],
44 Campaign.MC23g: [
45 'GoodRunsLists/data25_13p6TeV/20260129/ilumicalc_histograms_None_497924-509849_OflLumi-Run3-006.root'
46 ],
47 }
48
49 try:
50 return ilumical_files[campaign]
51 except KeyError:
52 raise ValueError(f'Unsupported campaign {campaign} for lumicalc files')
53
54