129def InDetTrackBiasingCalibKwargs(flags):
130 """Return calibFiles/runNumberBounds kwargs for InDetTrackBiasingTool.
131
132 Selects campaign-specific calibration files and (for multi-period
133 campaigns) run-number boundaries. Raises ValueError for unknown
134 campaigns or geometries.
135 """
136 c2 = "InDetTrackSystematicsTools/CalibData_22.0_2022-v00"
137 c3 = "InDetTrackSystematicsTools/CalibData_25.2_2025-v00"
138 if flags.GeoModel.Run is LHCPeriod.Run2:
139 if flags.Input.MCCampaign is Campaign.MC20a:
140
141 return {
142 "calibFiles": [
143 f"{c2}/REL22_REPRO_2015.root",
144 f"{c2}/REL22_REPRO_2016_1stPart.root",
145 f"{c2}/REL22_REPRO_2016_2ndPart.root",
146 ],
147 "runNumberBounds": [0, 296938, 301912, 999999],
148 }
149 elif flags.Input.MCCampaign is Campaign.MC20d:
150
151 return {
152 "calibFiles": [
153 f"{c2}/REL22_REPRO_2017_1stPart.root",
154 f"{c2}/REL22_REPRO_2017_2ndPart.root",
155 ],
156 "runNumberBounds": [0, 334842, 999999],
157 }
158 elif flags.Input.MCCampaign is Campaign.MC20e:
159
160 return {
161 "calibFiles": [
162 f"{c2}/REL22_REPRO_2018_1stPart.root",
163 f"{c2}/REL22_REPRO_2018_2ndPart.root",
164 ],
165 "runNumberBounds": [0, 353000, 999999],
166 }
167 else:
168 raise ValueError(
169 'No biasing recommendations found for campaign "'
170 + flags.Input.MCCampaign.value
171 + '" in Run 2. Please check the configuration.'
172 )
173 elif flags.GeoModel.Run is LHCPeriod.Run3:
174 if flags.Input.MCCampaign is Campaign.MC23a:
175
176 return {
177 "calibFiles": [
178 f"{c3}/2022_d0z0qoverp_biasing_factor.root",
179 ]
180 }
181 elif flags.Input.MCCampaign is Campaign.MC23d:
182
183 return {
184 "calibFiles": [
185 f"{c3}/2023_d0z0qoverp_biasing_factor.root",
186 ]
187 }
188 elif flags.Input.MCCampaign is Campaign.MC23e:
189
190 return {
191 "calibFiles": [
192 f"{c3}/2024_d0z0qoverp_biasing_factor.root",
193 ]
194 }
195 else:
196 raise ValueError(
197 'No biasing recommendations found for campaign "'
198 + flags.Input.MCCampaign.value
199 + '" in Run 3. Please check the configuration.'
200 )
201 else:
202 raise ValueError(
203 'No biasing recommendations found for geometry "'
204 + flags.GeoModel.Run.value
205 + '". Please check the configuration.'
206 )
207
208