8def BJetCalibrationAlgCfg(flags, name="BJetCalibrationAlg", doPtCorr=True, **kwargs):
9 cfg = ComponentAccumulator()
10
11 kwargs.setdefault("jets", "AntiKt4EMPFlow")
12
13 if "muonInJetTool" not in kwargs:
14 kwargs.setdefault("muonInJetTool", CompFactory.MuonInJetCorrectionTool(
15 doLargeR = "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets" in kwargs["jets"]
16 ))
17
18 if "muonSelectionTool" not in kwargs:
19
20 from MuonSelectorTools.MuonSelectorToolsConfig import MuonSelectionToolCfg
21 kwargs.setdefault("muonSelectionTool", cfg.popToolsAndMerge(
22 MuonSelectionToolCfg(flags, MaxEta=2.5, MuQuality=1)))
23
24 if doPtCorr and "bJetTool" not in kwargs:
25 kwargs.setdefault("bJetTool", CompFactory.BJetCorrectionTool())
26
27 cfg.addEventAlgo(CompFactory.CP.BJetCalibrationAlg(name, **kwargs))
28 return cfg