15def PhysValBTagCfg(flags, **kwargs):
16 acc = ComponentAccumulator()
17
18 kwargs.setdefault("DetailLevel", 10)
19 kwargs.setdefault("isData", not flags.Input.isMC)
20
21 import ROOT
22 path = ROOT.PathResolver.find_file( 'JetTagDQA/PhysValBtag_VariablesMenu.json', 'DATAPATH' )
23 from PhysValMonitoring.PhysValUtils import getHistogramDefinitions
24 definitions = getHistogramDefinitions(path, 'PHYSVAL', 'ALL')
25
26
27 path_Run = ROOT.PathResolver.find_file( \
28 'JetTagDQA/PhysValBtag_VariablesMenu_Run3.json' if flags.GeoModel.Run <= LHCPeriod.Run3 \
29 else 'JetTagDQA/PhysValBtag_VariablesMenu_Run4.json',
30 'DATAPATH' )
31 definitions_Run = getHistogramDefinitions(path_Run, 'PHYSVAL', 'ALL')
32
33 kwargs.setdefault("HistogramDefinitions", definitions + definitions_Run)
34 kwargs.setdefault("JetEtaCut", 2.5 if flags.GeoModel.Run <= LHCPeriod.Run3 else 4.0)
35 kwargs.setdefault("JetContainerEMTopo", "" if flags.GeoModel.Run <= LHCPeriod.Run3 else "AntiKt4EMTopoJets")
36
37 if "trackTruthOriginTool" not in kwargs:
38 from InDetTrackSystematicsTools.InDetTrackSystematicsToolsConfig import InDetTrackTruthOriginToolCfg
39 kwargs.setdefault("trackTruthOriginTool", acc.popToolsAndMerge(
40 InDetTrackTruthOriginToolCfg(flags)))
41
42 if flags.GeoModel.Run >= LHCPeriod.Run4:
43 kwargs.setdefault("GN2v01TaggerName", "GN2HL")
44
45 tool = CompFactory.JetTagDQA.PhysValBTag(**kwargs)
46 acc.setPrivateTools(tool)
47 return acc