4 Tool configuration to instantiate MCTruthClassifier
5 with default configurations."""
7 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
8 from AthenaConfiguration.ComponentFactory
import CompFactory
9 from AthenaConfiguration.Enums
import LHCPeriod, Project
14 This is the default configuration allowing all options.
15 By default, it does not do calo truth matching.
17 if flags.Common.Project
not in [Project.AthGeneration, Project.AnalysisBase]:
18 kwargs.setdefault(
"ParticleCaloExtensionTool",
"")
19 kwargs.setdefault(
"CaloDetDescrManager",
"")
25 This is the default configuration allowing all options.
26 By default, it does calo truth matching using a
27 dedicated instance of the ParticleCaloExtensionTool
31 if flags.Common.Project
not in [Project.AthGeneration, Project.AnalysisBase]:
32 if "ParticleCaloExtensionTool" not in kwargs:
34 from TrkConfig.AtlasExtrapolatorConfig
import (
35 MCTruthClassifierExtrapolatorCfg)
36 extrapolator = acc.popToolsAndMerge(
39 from TrackToCalo.TrackToCaloConfig
import (
40 EMParticleCaloExtensionToolCfg)
42 flags, Extrapolator=extrapolator)
43 kwargs[
"ParticleCaloExtensionTool"] = acc.popToolsAndMerge(extension)
45 kwargs.setdefault(
"CaloDetDescrManager",
"CaloDetDescrManager")
47 if flags.Input.Files
and set([
'StreamEVGEN',
'StreamEVNT']).isdisjoint(
set(flags.Input.ProcessingTags)):
49 if flags.GeoModel.Run >= LHCPeriod.Run4:
50 kwargs.setdefault(
"FwdElectronUseG4Sel",
False)
52 acc.setPrivateTools(CompFactory.MCTruthClassifier(**kwargs))
57 """Configure the MCTruthClassifier tool"""
59 acc.addPublicTool(acc.popToolsAndMerge(
MCTruthClassifierCfg(flags, name =
"DFCommonTruthClassifier")),
64 if __name__ ==
"__main__":
66 from AthenaConfiguration.AllConfigFlags
import initConfigFlags
67 from AthenaConfiguration.TestDefaults
import defaultTestFiles
68 from AthenaCommon.Logging
import logging
70 from AthenaConfiguration.ComponentAccumulator
import printProperties
73 flags.Input.isMC =
True
74 flags.Input.Files = defaultTestFiles.RDO_RUN2
77 mlog = logging.getLogger(
"MCTruthClassifierConfigTest")
81 mlog.info(
"Configuring standard MCTruthClassifier")
83 cfg.getPrimaryAndMerge(
88 mlog.info(
"Configuring MCTruthClassifier with calo truth matching")
90 cfg.getPrimaryAndMerge(
95 f =
open(
"mctruthclassifer.pkl",
"wb")