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
 eventSF

Detailed Description

the ConfigBlock for the fJvt working point efficiency

Definition at line 799 of file JetAnalysisConfig.py.

Constructor & Destructor Documentation

◆ __init__()

python.JetAnalysisConfig.FJvtWorkingPointEfficiencyConfig.__init__ ( self)

Definition at line 802 of file JetAnalysisConfig.py.

802 def __init__ (self) :
803 super (FJvtWorkingPointEfficiencyConfig, self).__init__ ()
804 self.setBlockName('FJvtWorkingPointEfficiencyConfig')
805 self.addDependency('OverlapRemoval', required=False)
806 self.addDependency('EventSelection', required=False)
807 self.addDependency('EventSelectionMerger', required=False)
808 self.addOption ('containerName', '', type=str,
809 noneAction='error',
810 info="the name of the input container.")
811 self.addOption ('selectionName', '', type=str,
812 noneAction='error',
813 info="the name of the jet selection to define (e.g. `tight` or `loose`).")
814 self.addOption ('fjvtWP', '', type=str,
815 noneAction='error',
816 info="the fJvt WP to use. Supported WPs: `Loose`, `Tight`, `Tighter`.")
817 self.addOption ('noEffSF', False, type=bool,
818 info="disables the calculation of efficiencies and scale factors. "
819 "Only useful to test a new WP for which scale factors are not available.",
820 expertMode=True)
821 self.addOption ('eventSF', True, type=bool,
822 info="add calculation of event-level efficiency SF.")
823

Member Function Documentation

◆ instanceName()

python.JetAnalysisConfig.FJvtWorkingPointEfficiencyConfig.instanceName ( self)

Definition at line 824 of file JetAnalysisConfig.py.

824 def instanceName (self) :
825 return self.containerName + '_' + self.selectionName
826

◆ makeAlgs()

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

Definition at line 827 of file JetAnalysisConfig.py.

827 def makeAlgs (self, config) :
828
829 if not self.noEffSF and config.dataType() is not DataType.Data:
830 alg = config.createAlgorithm( 'CP::JvtEfficiencyAlg', f'FJvtEfficiencyAlg_{self.fjvtWP}' )
831 config.addPrivateTool( 'efficiencyTool', 'CP::FJvtEfficiencyTool' )
832 alg.efficiencyTool.JetContainer = config.readName(self.containerName)
833 alg.efficiencyTool.WorkingPoint = self.fjvtWP
834 if config.geometry() is LHCPeriod.Run2:
835 alg.efficiencyTool.SFFile = "JetJvtEfficiency/May2024/fJvtSFFile_Run2_EMPFlow.root"
836 else:
837 alg.efficiencyTool.SFFile = "JetJvtEfficiency/May2024/fJvtSFFile_Run3_EMPFlow.root"
838 alg.selection = f'fjvt_selection_{self.fjvtWP},as_char'
839 alg.scaleFactorDecoration = f'fjvt_effSF_{self.fjvtWP}_%SYS%'
840 alg.outOfValidity = 2
841 alg.outOfValidityDeco = f'no_fjvt_{self.fjvtWP}'
842 alg.skipBadEfficiency = False
843 alg.jets = config.readName (self.containerName)
844 alg.preselection = config.getPreselection (self.containerName, '')
845
846 config.addOutputVar (self.containerName, alg.scaleFactorDecoration, f'fjvtEfficiency_{self.fjvtWP}')
847
848 # Set up the per-event jet efficiency scale factor calculation algorithm
849 if self.eventSF:
850 alg = config.createAlgorithm( 'CP::AsgEventScaleFactorAlg', f'ForwardJvtEventScaleFactorAlg_{self.fjvtWP}' )
851 preselection = config.getFullSelection (self.containerName, '')
852 alg.preselection = preselection + f'&&no_fjvt_{self.fjvtWP}' if preselection else f'no_fjvt_{self.fjvtWP}'
853 alg.scaleFactorInputDecoration = f'fjvt_effSF_{self.fjvtWP}_%SYS%'
854 alg.scaleFactorOutputDecoration = f'fjvt_effSF_{self.fjvtWP}_%SYS%'
855 alg.particles = config.readName (self.containerName)
856
857 config.addOutputVar('EventInfo', alg.scaleFactorOutputDecoration, f'weight_fjvt_effSF_{self.fjvtWP}')
858
859
860@groupBlocks

Member Data Documentation

◆ containerName

python.JetAnalysisConfig.FJvtWorkingPointEfficiencyConfig.containerName

Definition at line 846 of file JetAnalysisConfig.py.

◆ eventSF

python.JetAnalysisConfig.FJvtWorkingPointEfficiencyConfig.eventSF

Definition at line 849 of file JetAnalysisConfig.py.


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