ATLAS Offline Software
Loading...
Searching...
No Matches
python.JetAnalysisConfig.FJvtWorkingPointEfficiencyConfig Class Reference
Inheritance diagram for python.JetAnalysisConfig.FJvtWorkingPointEfficiencyConfig:
Collaboration diagram for python.JetAnalysisConfig.FJvtWorkingPointEfficiencyConfig:

Public Member Functions

 __init__ (self)
 instanceName (self)
 makeAlgs (self, config)

Public Attributes

 containerName

Detailed Description

the ConfigBlock for the fJvt working point efficiency

Definition at line 1142 of file JetAnalysisConfig.py.

Constructor & Destructor Documentation

◆ __init__()

python.JetAnalysisConfig.FJvtWorkingPointEfficiencyConfig.__init__ ( self)

Definition at line 1145 of file JetAnalysisConfig.py.

1145 def __init__ (self) :
1146 super (FJvtWorkingPointEfficiencyConfig, self).__init__ ()
1147 self.setBlockName('FJvtWorkingPointEfficiencyConfig')
1148 self.addDependency('EventSelection', required=False)
1149 self.addDependency('EventSelectionMerger', required=False)
1150 self.addOption ('containerName', '', type=str,
1151 noneAction='error',
1152 info="the name of the input container.")
1153 self.addOption ('selectionName', '', type=str,
1154 noneAction='error',
1155 info="the name of the jet selection to define (e.g. `tight` or `loose`).")
1156 self.addOption ('fjvtWP', '', type=str,
1157 noneAction='error',
1158 info="the fJvt WP to use. Supported WPs: `Loose`, `Tight`, `Tighter`.")
1159 self.addOption ('useSuffix', True, type=bool,
1160 info="whether the working point name is to be used as suffix ."
1161 "Not to be disabled if multiple working points are scheduled.")
1162 self.addOption ('noEffSF', False, type=bool,
1163 info="disables the calculation of efficiencies and scale factors. "
1164 "Only useful to test a new WP for which scale factors are not available.",
1165 expertMode=True)
1166

Member Function Documentation

◆ instanceName()

python.JetAnalysisConfig.FJvtWorkingPointEfficiencyConfig.instanceName ( self)

Definition at line 1167 of file JetAnalysisConfig.py.

1167 def instanceName (self) :
1168 return self.containerName + '_' + self.selectionName
1169

◆ makeAlgs()

python.JetAnalysisConfig.FJvtWorkingPointEfficiencyConfig.makeAlgs ( self,
config )

Definition at line 1170 of file JetAnalysisConfig.py.

1170 def makeAlgs (self, config) :
1171
1172 suffix = f"_{self.fjvtWP}" if self.useSuffix else ""
1173 decorationName = f"fjvt_selection{suffix},as_char"
1174
1175 if not self.noEffSF and config.dataType() is not DataType.Data:
1176 alg = config.createAlgorithm( 'CP::JvtEfficiencyAlg', f'FJvtEfficiencyAlg_{self.fjvtWP}' )
1177 config.addPrivateTool( 'efficiencyTool', 'CP::FJvtEfficiencyTool' )
1178 alg.efficiencyTool.JetContainer = config.readName(self.containerName)
1179 alg.efficiencyTool.WorkingPoint = self.fjvtWP
1180 if config.geometry() is LHCPeriod.Run2:
1181 alg.efficiencyTool.SFFile = "JetJvtEfficiency/May2024/fJvtSFFile_Run2_EMPFlow.root"
1182 else:
1183 alg.efficiencyTool.SFFile = "JetJvtEfficiency/May2024/fJvtSFFile_Run3_EMPFlow.root"
1184 alg.selection = decorationName
1185 alg.scaleFactorDecoration = f'fjvt_effSF{suffix}_%SYS%'
1186 alg.outOfValidity = 2
1187 alg.outOfValidityDeco = f'no_fjvt{suffix}'
1188 alg.skipBadEfficiency = False
1189 alg.jets = config.readName (self.containerName)
1190 alg.preselection = config.getPreselection (self.containerName, '')
1191
1192 config.addOutputVar (self.containerName, alg.scaleFactorDecoration, f'fjvtEfficiency{suffix}')
1193
1194

Member Data Documentation

◆ containerName

python.JetAnalysisConfig.FJvtWorkingPointEfficiencyConfig.containerName

Definition at line 1192 of file JetAnalysisConfig.py.


The documentation for this class was generated from the following file: