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