ATLAS Offline Software
Loading...
Searching...
No Matches
BjetHitZConfigTest.py
Go to the documentation of this file.
1# Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
2"""Configure the HitZ reco on its own, without a chain that schedules it.
3
4Until the menu uses it, nothing else in the build touches this configuration,
5so a broken flag, alg name or data dependency would otherwise go unnoticed.
6"""
7
8from AthenaConfiguration.AllConfigFlags import initConfigFlags
9from AthenaConfiguration.TestDefaults import (
10 defaultTestFiles, defaultGeometryTags, defaultConditionsTags,
11)
12from AthenaCommon.Logging import logging
13
14from TriggerMenuMT.HLT.Jet.JetPresel import getPreselRecoDict
15from TriggerMenuMT.HLT.Jet.JetRecoSequencesConfig import JetRecoDataDeps
16from TriggerMenuMT.HLT.Jet.JetMenuSequencesConfig import jetRoIHitZRecoCfg
17from TriggerMenuMT.HLT.Bjet import BjetHitZConfig
18
19log = logging.getLogger(__name__)
20
21flags = initConfigFlags()
22flags.Input.Files = defaultTestFiles.RDO_RUN4
23flags.GeoModel.AtlasVersion = defaultGeometryTags.RUN4
24flags.IOVDb.GlobalTag = defaultConditionsTags.RUN4_MC
25flags.lock()
26
27_, preselJetDef = JetRecoDataDeps(flags, **getPreselRecoDict('a4'))['final']
28reco, jets = jetRoIHitZRecoCfg(flags, preselJetDef)
29
30hitzJets = 'HLT_AntiKt4EMTopoJets_subjesIS_hitz'
31assert jets.startswith(hitzJets), jets
32
33for name in ['ITkPixelPrepDataToxAOD', 'ITkStripPrepDataToxAOD',
34 'HitZJetHitAssociationPixel', 'HitZJetHitAssociationStrip',
35 'HitZHitsSelector', 'HitZJetTagAlg', 'jetview_'+jets]:
36 assert reco.getEventAlgo(name) is not None, f'{name} is not configured'
37
38tagger = reco.getEventAlgo('HitZJetTagAlg')
39assert tagger.container == hitzJets
40assert tagger.constituentContainer == ''
41assert tagger.decorator.nnFile == flags.Trigger.Jet.hitZNetwork
42assert dict(tagger.decorator.variableRemapping) == BjetHitZConfig.OUTPUT_REMAP
43
44assert reco.getService('HitZNNSharingOnnxSvc').executionProvider == 'CPU'
45
46reco.wasMerged()
47log.info('HitZ reco configured on %s', jets)