2 from Campaigns.Utils
import Campaign, getMCCampaign
3 from AnalysisAlgorithmsConfig.ConfigAccumulator
import DataType
7 """ Returns the list of lumicalc files for a given campaign """
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'
14 'GoodRunsLists/data17_13TeV/20180619/physics_25ns_Triggerno17e33prim.lumicalc.OflLumi-13TeV-010.root'
17 'GoodRunsLists/data18_13TeV/20190318/ilumicalc_histograms_None_348885-364292_OflLumi-13TeV-010.root'
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'
24 'GoodRunsLists/data17_13TeV/20180619/physics_25ns_Triggerno17e33prim.lumicalc.OflLumi-13TeV-010.root'
27 'GoodRunsLists/data18_13TeV/20190318/ilumicalc_histograms_None_348885-364292_OflLumi-13TeV-010.root'
30 'GoodRunsLists/data22_13p6TeV/20230207/ilumicalc_histograms_None_431810-440613_OflLumi-Run3-003.root'
33 'GoodRunsLists/data22_13p6TeV/20230207/ilumicalc_histograms_None_431810-440613_OflLumi-Run3-003.root'
36 'GoodRunsLists/data23_13p6TeV/20230828/ilumicalc_histograms_None_451587-456749_OflLumi-Run3-003.root'
39 'GoodRunsLists/data23_13p6TeV/20230828/ilumicalc_histograms_None_451587-456749_OflLumi-Run3-003.root'
44 return ilumical_files[campaign]
46 raise ValueError(f
'Unsupported campaign {campaign} for lumicalc files')
52 if campaign
in [Campaign.MC16d, Campaign.MC20d]:
54 'GoodRunsLists/data17_13TeV/20180619/physics_25ns_Triggerno17e33prim.actualMu.OflLumi-13TeV-010.root'
56 elif campaign
in [Campaign.MC16e, Campaign.MC20e]:
58 'GoodRunsLists/data18_13TeV/20190318/physics_25ns_Triggerno17e33prim.actualMu.OflLumi-13TeV-010.root'
60 elif campaign
in [Campaign.MC21a, Campaign.MC23a]:
62 'GoodRunsLists/data22_13p6TeV/20230207/purw.actualMu.2022.root'
64 elif campaign
in [Campaign.MC23c, Campaign.MC23d]:
66 'GoodRunsLists/data23_13p6TeV/20230828/purw.actualMu.2023.root'
69 if campaign
in [Campaign.MC16d, Campaign.MC20d, Campaign.MC16e, Campaign.MC20e, Campaign.MC21a, Campaign.MC23a, Campaign.MC23c, Campaign.MC23d]:
70 assert(len(list) == 1)
72 assert(len(list) == 0)
80 if campaign
in [Campaign.MC20a]:
82 'PileupReweighting/mc20_common/mc20a.284500.physlite.prw.v1.root'
84 elif campaign
in [Campaign.MC20d]:
86 'PileupReweighting/mc20_common/mc20d.300000.physlite.prw.v1.root'
88 elif campaign
in [Campaign.MC20e]:
90 'PileupReweighting/mc20_common/mc20e.310000.physlite.prw.v1.root'
92 elif campaign
in [Campaign.MC21a]:
94 'PileupReweighting/mc21_common/mc21a.410000.physlite.prw.v1.root'
96 elif campaign
in [Campaign.MC23a]:
98 'PileupReweighting/mc23_common/mc23a.410000.physlite.prw.v2.root'
100 elif campaign
in [Campaign.MC23c]:
102 'PileupReweighting/mc23_common/mc23c.450000.physlite.prw.v1.root'
104 elif campaign
in [Campaign.MC23d]:
106 'PileupReweighting/mc23_common/mc23d.450000.physlite.prw.v1.root'
109 raise ValueError(f
'Unsupported campaign {campaign}')
111 assert(len(list) == 1)
118 default_directory =
'dev/PileupReweighting/share'
119 configuration_files = []
121 if files
is not None and (campaign
is None or dsid
is None or data_type
is None):
125 if dsid
is None or data_type
is None:
126 from AthenaConfiguration.AutoConfigFlags
import GetFileMD
129 dsid =
str(metadata.get(
'mc_channel_number', 0))
130 if data_type
is None:
131 simulation_flavour =
GetFileMD(files).
get(
'Simulator',
'')
132 if not simulation_flavour:
133 simulation_flavour =
GetFileMD(files).
get(
'SimulationFlavour',
'')
134 data_type = DataType.FullSim
if (
not simulation_flavour
or 'FullG4' in simulation_flavour)
else DataType.FastSim
137 if data_type
is DataType.Data:
138 raise ValueError(
'Data is not supported')
140 if data_type
is DataType.FullSim:
141 simulation_type =
'FS'
142 elif data_type
is DataType.FastSim:
143 simulation_type =
'AF3'
145 raise ValueError(f
'Invalid data_type {data_type}')
150 return configuration_files
152 config = f
'{default_directory}/DSID{dsid[:3]}xxx/pileup_{campaign.value}_dsid{dsid}_{simulation_type}.root'
153 from PathResolver
import PathResolver
157 configuration_files.append(config)
158 return configuration_files