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 1135 of file JetAnalysisConfig.py.

Constructor & Destructor Documentation

◆ __init__()

python.JetAnalysisConfig.FJvtWorkingPointEfficiencyConfig.__init__ ( self)

Definition at line 1138 of file JetAnalysisConfig.py.

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

Member Function Documentation

◆ instanceName()

python.JetAnalysisConfig.FJvtWorkingPointEfficiencyConfig.instanceName ( self)

Definition at line 1160 of file JetAnalysisConfig.py.

1160 def instanceName (self) :
1161 return self.containerName + '_' + self.selectionName
1162

◆ makeAlgs()

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

Definition at line 1163 of file JetAnalysisConfig.py.

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

Member Data Documentation

◆ containerName

python.JetAnalysisConfig.FJvtWorkingPointEfficiencyConfig.containerName

Definition at line 1185 of file JetAnalysisConfig.py.


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