ATLAS Offline Software
Loading...
Searching...
No Matches
python.AsgPhotonBDTSelectorConfig Namespace Reference

Functions

 getPhotonBDTConfig (flags, useNFs)
 AsgPhotonBDTSelectorCfg (flags, name="AsgPhotonBDTSelector", workingPoint=None, useNFs=False, computeIfMissing=True, forceRecompute=False, reapplyWPIfNoShowerShapes=False, reserveVarsConv=12, reserveVarsUnconv=12, modelConv=None, modelUnconv=None, scoreDecoration=None, isEMDecoration=None)
 PhotonBDTCalculatorCfg (flags, name="PhotonBDTCalculator", useNFs=False, forceRecompute=False, modelConv=None, modelUnconv=None, scoreDecoration=None, reserveVarsConv=12, reserveVarsUnconv=12)

Function Documentation

◆ AsgPhotonBDTSelectorCfg()

python.AsgPhotonBDTSelectorConfig.AsgPhotonBDTSelectorCfg ( flags,
name = "AsgPhotonBDTSelector",
workingPoint = None,
useNFs = False,
computeIfMissing = True,
forceRecompute = False,
reapplyWPIfNoShowerShapes = False,
reserveVarsConv = 12,
reserveVarsUnconv = 12,
modelConv = None,
modelUnconv = None,
scoreDecoration = None,
isEMDecoration = None )

Definition at line 53 of file AsgPhotonBDTSelectorConfig.py.

65 isEMDecoration=None):
66
67 acc = ComponentAccumulator()
68
69 isRun3 = (flags.GeoModel.Run == LHCPeriod.Run3)
70 excludeTRT = isRun3
71
72 # Get default configurations
73 defaultCfg = getPhotonBDTConfig(flags, useNFs)
74
75 # allow override of default configurations
76 workingPoint = workingPoint or defaultCfg["workingPoint"]
77 modelConv = modelConv or defaultCfg["modelConv"]
78 modelUnconv = modelUnconv or defaultCfg["modelUnconv"]
79 scoreDecoration = scoreDecoration or defaultCfg["scoreDecoration"]
80 isEMDecoration = isEMDecoration or defaultCfg["isEMDecoration"]
81
82 Single = CompFactory.PhotonIDBDT.PhotonSingleBDTCalculator
83 Calc = CompFactory.PhotonIDBDT.PhotonBDTCalculator
84 Sel = CompFactory.PhotonIDBDT.AsgPhotonBDTSelector
85
86 singleConv = Single(f"{name}_SingleConv",
87 ModelFile=modelConv,
88 BDTTreeName="lgbm")
89 acc.addPublicTool(singleConv)
90
91 singleUnconv = Single(f"{name}_SingleUnconv",
92 ModelFile=modelUnconv,
93 BDTTreeName="lgbm")
94 acc.addPublicTool(singleUnconv)
95
96 bdtCalc = Calc(f"{name}_BDTCalc",
97 ToolConv=singleConv,
98 ToolUnconv=singleUnconv,
99 DecorationName=scoreDecoration,
100 ExcludeTRT=excludeTRT,
101 ForceRecompute=forceRecompute,
102 ReserveVarsConv=reserveVarsConv,
103 ReserveVarsUnconv=reserveVarsUnconv)
104 acc.addPublicTool(bdtCalc)
105
106 selector = Sel(name,
107 WorkingPoint=workingPoint,
108 ScoreDecoration=scoreDecoration,
109 ComputeIfMissing=computeIfMissing,
110 ReapplyWPIfNoShowerShapes=reapplyWPIfNoShowerShapes,
111 IsEMDecoration=isEMDecoration,
112 ExcludeTRT=excludeTRT,
113 BDTTool=bdtCalc)
114 acc.setPrivateTools(selector)
115
116 return acc
117

◆ getPhotonBDTConfig()

python.AsgPhotonBDTSelectorConfig.getPhotonBDTConfig ( flags,
useNFs )

Definition at line 11 of file AsgPhotonBDTSelectorConfig.py.

11def getPhotonBDTConfig(flags, useNFs):
12
13 from AthenaConfiguration.Enums import LHCPeriod
14
15 isRun3 = (flags.GeoModel.Run == LHCPeriod.Run3)
16
17 if isRun3:
18 if useNFs:
19 return dict(
20 workingPoint="TightBDTPhoton_Run3_NFs",
21 modelConv="ElectronPhotonSelectorTools/offline/mc23_20260310/NFs/LightGBM_model_mc23ade_v23NF_converted.root",
22 modelUnconv="ElectronPhotonSelectorTools/offline/mc23_20260310/NFs/LightGBM_model_mc23ade_v23NF_unconverted.root",
23 scoreDecoration="BDTScore_NFs",
24 isEMDecoration="BDTIsEM_NFs",
25 )
26 else:
27 return dict(
28 workingPoint="TightBDTPhoton_Run3",
29 modelConv="ElectronPhotonSelectorTools/offline/mc23_20260310/FudgeFactors/LightGBM_model_mc23ade_v23_converted.root",
30 modelUnconv="ElectronPhotonSelectorTools/offline/mc23_20260310/FudgeFactors/LightGBM_model_mc23ade_v23_unconverted.root",
31 scoreDecoration="BDTScore",
32 isEMDecoration="BDTIsEM",
33 )
34
35 else:
36 if useNFs:
37 return dict(
38 workingPoint="TightBDTPhoton_Run2_NFs",
39 modelConv="ElectronPhotonSelectorTools/offline/mc20_20260310/NFs/LightGBM_model_mc20ade_v15NF_converted.root",
40 modelUnconv="ElectronPhotonSelectorTools/offline/mc20_20260310/NFs/LightGBM_model_mc20ade_v15NF_unconverted.root",
41 scoreDecoration="BDTScore_NFs",
42 isEMDecoration="BDTIsEM_NFs",
43 )
44 else:
45 return dict(
46 workingPoint="TightBDTPhoton_Run2",
47 modelConv="ElectronPhotonSelectorTools/offline/mc20_20260310/FudgeFactors/LightGBM_model_mc20ade_v15_converted.root",
48 modelUnconv="ElectronPhotonSelectorTools/offline/mc20_20260310/FudgeFactors/LightGBM_model_mc20ade_v15_unconverted.root",
49 scoreDecoration="BDTScore",
50 isEMDecoration="BDTIsEM",
51 )
52

◆ PhotonBDTCalculatorCfg()

python.AsgPhotonBDTSelectorConfig.PhotonBDTCalculatorCfg ( flags,
name = "PhotonBDTCalculator",
useNFs = False,
forceRecompute = False,
modelConv = None,
modelUnconv = None,
scoreDecoration = None,
reserveVarsConv = 12,
reserveVarsUnconv = 12 )

Definition at line 118 of file AsgPhotonBDTSelectorConfig.py.

126 reserveVarsUnconv=12):
127
128 acc = ComponentAccumulator()
129
130 # get default configurations
131 defaultCfg = getPhotonBDTConfig(flags, useNFs)
132
133 # allow override of default configurations
134 modelConv = modelConv or defaultCfg["modelConv"]
135 modelUnconv = modelUnconv or defaultCfg["modelUnconv"]
136 scoreDecoration = scoreDecoration or defaultCfg["scoreDecoration"]
137
138 Single = CompFactory.PhotonIDBDT.PhotonSingleBDTCalculator
139 Calc = CompFactory.PhotonIDBDT.PhotonBDTCalculator
140
141 singleConv = Single(f"{name}_SingleConv",
142 ModelFile=modelConv,
143 BDTTreeName="lgbm")
144 acc.addPublicTool(singleConv)
145
146 singleUnconv = Single(f"{name}_SingleUnconv",
147 ModelFile=modelUnconv,
148 BDTTreeName="lgbm")
149 acc.addPublicTool(singleUnconv)
150
151 bdtCalc = Calc(name,
152 ToolConv=singleConv,
153 ToolUnconv=singleUnconv,
154 DecorationName=scoreDecoration,
155 ExcludeTRT=(flags.GeoModel.Run == LHCPeriod.Run3),
156 ForceRecompute=forceRecompute,
157 ReserveVarsConv=reserveVarsConv,
158 ReserveVarsUnconv=reserveVarsUnconv)
159 acc.setPrivateTools(bdtCalc)
160
161 return acc