16 """Main config method for LRT e-gamma decorations"""
18 acc = ComponentAccumulator()
31 if not hasattr(acc,
"ElectronChargeIDSelectorLoose"):
32 if flags.Derivation.Egamma.addECIDS:
33 from ElectronPhotonSelectorTools.AsgElectronChargeIDSelectorToolConfig
import (
34 AsgElectronChargeIDSelectorToolCfg,
37 ElectronChargeIDSelector = acc.popToolsAndMerge(
38 AsgElectronChargeIDSelectorToolCfg(
39 flags, name=
"ElectronChargeIDSelectorLoose"
42 ElectronChargeIDSelector.primaryVertexContainer =
"PrimaryVertices"
43 ElectronChargeIDSelector.TrainingFile = (
44 "ElectronPhotonSelectorTools/ChargeID/"
45 +
"ECIDS_20180731rel21Summer2018.root"
47 acc.addPublicTool(ElectronChargeIDSelector)
52 from DerivationFrameworkEGamma.EGammaToolsConfig
import (
53 EGElectronLikelihoodToolWrapperCfg,
60 if flags.Derivation.Egamma.addECIDS:
61 LRTElectronPassECIDS = acc.addPublicTool(acc.popToolsAndMerge(
62 EGElectronLikelihoodToolWrapperCfg(
64 name=
"LRTElectronPassECIDS",
65 EGammaElectronLikelihoodTool=ElectronChargeIDSelector,
67 StoreGateEntryName=
"DFCommonElectronsECIDS",
68 ContainerName=
"LRTElectrons",
75 from DerivationFrameworkEGamma.EGammaToolsConfig
import EGElectronAmbiguityToolCfg
77 LRTElectronAmbiguity = acc.addPublicTool(acc.popToolsAndMerge(
78 EGElectronAmbiguityToolCfg(
80 name=
"LRTElectronAdditionnalAmbiguity",
81 idCut=
"DFCommonElectronsLHLooseNoPix",
82 ContainerName=
"LRTElectrons",
83 isMC=flags.Input.isMC,
88 LRTEGAugmentationTools = [LRTElectronAmbiguity]
89 if flags.Derivation.Egamma.addECIDS:
90 LRTEGAugmentationTools.extend([LRTElectronPassECIDS])
94 if flags.Derivation.Egamma.addMissingCellInfo:
95 from DerivationFrameworkCalo.DerivationFrameworkCaloConfig
import EgammaCoreCellRecoveryCfg
97 CoreCellRecoveryTool = acc.addPublicTool(acc.popToolsAndMerge(
98 EgammaCoreCellRecoveryCfg(flags,
99 name =
"LRTCoreCellRecoveryTool",
101 SGKey_electrons =
"LRTElectrons")
103 LRTEGAugmentationTools.append(CoreCellRecoveryTool)
109 from DerivationFrameworkEGamma.EGammaToolsConfig
import (
110 BkgElectronClassificationCfg,
113 BkgLRTElectronClassificationTool = acc.addPublicTool(acc.popToolsAndMerge(
114 BkgElectronClassificationCfg(
116 name=
"BkgLRTElectronClassificationTool",
117 ElectronContainerName=
"LRTElectrons"
120 LRTEGAugmentationTools.append(BkgLRTElectronClassificationTool)
127 CompFactory.DerivationFramework.CommonAugmentation(
128 "EGammaLRTKernel", AugmentationTools=LRTEGAugmentationTools
135 from IsolationAlgs.DerivationTrackIsoConfig
import DerivationTrackIsoCfg
138 DerivationTrackIsoCfg(
139 flags, object_types=(
"Electrons",
"Muons"), postfix=
"LRT"
143 if not hasattr(acc,
"LRTElectronCaloIsolationBuilder"):
144 from IsolationAlgs.IsolationSteeringDerivConfig
import (
145 LRTElectronIsolationSteeringDerivCfg,
148 acc.merge(LRTElectronIsolationSteeringDerivCfg(flags))
150 from IsolationAlgs.IsolationBuilderConfig
import egIsolationCfg
155 name=
"electronIsolationLRT",
158 ElectronCollectionContainerName=
"LRTElectrons",