![]() |
ATLAS Offline Software
|
#include <PFUnifiedSubtractionOnlyTruthTool.h>
Public Member Functions | |
| ~PFUnifiedSubtractionOnlyTruthTool () | |
| virtual StatusCode | initialize () override |
| virtual StatusCode | processPFlowData (const EventContext &ctx, PFData &thePFData) const override |
| PFUnifiedSubtractionOnlyTool (const std::string &type, const std::string &name, const IInterface *parent) | |
Protected Member Functions | |
| unsigned int | matchAndCreateEflowCaloObj (PFData &data) const |
| This matches ID tracks and CaloClusters, and then creates eflowCaloObjects. | |
| void | simulateShowers (const EventContext &ctx, eflowCaloObjectContainer &eflowCaloObjects, const unsigned int &nCaloObj) const |
| bool | isEOverPFail (double expectedEnergy, double sigma, double clusterEnergy) const |
| bool | canAnnihilate (double expectedEnergy, double sigma, double clusterEnergy) const |
| void | addSubtractedCells (eflowCaloObject &thisEflowCaloObject, const std::vector< std::pair< xAOD::CaloCluster *, bool > > &clusterList) const |
Protected Attributes | |
| ToolHandle< IEFlowCellEOverPTool > | m_theEOverPTool {this, "eflowCellEOverPTool", "eflowCellEOverPTool", "Energy Flow E/P Values and Shower Parameters Tool"} |
| Tool for getting e/p values and hadronic shower cell ordering principle parameters. | |
| std::unique_ptr< eflowEEtaBinnedParameters > | m_binnedParameters |
| std::unique_ptr< PFMatch::TrackEtaPhiInFixedLayersProvider > | m_trkpos |
| Track position provider to be used to preselect clusters. | |
| Gaudi::Property< bool > | m_recoverSplitShowers {this,"RecoverSplitShowers",false,"Toggle whether we are recovering split showers or not"} |
| Toggle whether we are recovering split showers or not. | |
| Gaudi::Property< bool > | m_calcEOverP {this, "CalcEOverP", false, "Toggle EOverP algorithm mode, whereby no charged shower subtraction is performed"} |
| Toggle EOverP algorithm mode, whereby no charged shower subtraction is performed. | |
| Gaudi::Property< double > | m_consistencySigmaCut {this, "ConsistencySigmaCut", 1.0, "Parameter that controls whether a track, in a track-cluster system, will be processed by the split shower recovery algorithm"} |
| Parameter that controls whether a track, in a track-cluster system, will be processed by the split shower recovery algorithm. | |
| Gaudi::Property< double > | m_subtractionSigmaCut {this, "SubtractionSigmaCut", 1.5, "Parameter that controls whether to use retain remaining calorimeter energy in track-cluster system, after charged shower subtraction"} |
| Parameter that controls whether to use retain remaining calorimeter energy in track-cluster system, after charged shower subtraction. | |
| Gaudi::Property< bool > | m_isHLLHC {this, "isHLLHC", false, "Toggle whether we have the HLLHC setup"} |
| Toggle whether we have the HLLHC setup. | |
| Gaudi::Property< bool > | m_addCPData {this,"addCPData",false,"Toggle whether to decorate FlowElements with additional data for Combined Performance studies "} |
| Toggle whether to decorate eflowRecTrack with additional data for Combined Performance studies. | |
| PFSubtractionStatusSetter | m_pfSubtractionStatusSetter {} |
| PFSubtractionEnergyRatioCalculator | m_pfSubtractionEnergyRatioCalculator {} |
| eflowSubtract::Subtractor | m_subtractor {} |
| ToolHandle< PFEnergyPredictorTool > | m_NNEnergyPredictorTool {this, "NNEnergyPredictorTool", "","Tool for getting predictiing the energy using an ONNX model "} |
| Tool for getting predictiing the energy using an ONNX model. | |
| Gaudi::Property< bool > | m_useNNEnergy {this, "useNNEnergy", false, "Toggle whether we use the neural net energy"} |
| Toggle whether we use the neural net energy. | |
| Gaudi::Property< bool > | m_useLegacyEBinIndex {this, "useLegacyEBinIndex", true, "Toggle whether we use the legacy energy bin index"} |
| Further discussion about why this flag exists can be found in https://its.cern.ch/jira/browse/ATLJETMET-1692 and https://indico.cern.ch/event/1388633/contributions/5837876/attachments/2809591/4903439/PFlow_EOverP_Feb2024.pdf The Jira report discusses assorted problems with the treatment of energy bin indexes for the lookup of e/p values. | |
Private Member Functions | |
| void | performSubtraction (const EventContext &ctx, const unsigned int &startingPoint, const unsigned int &nCaloObj, PFData &data) const override |
| void | performSubtraction (eflowCaloObject &thisEflowCaloObject) const override |
Private Attributes | |
| Gaudi::Property< bool > | m_useFullCellTruthSubtraction {this,"useFullCellTruthSubtraction",true,"Toggle whether we fully remove a cell with a truth deposit or reweight it based on truth contribution"} |
| Toggle whether we fully remove a cell with a truth deposit or reweight it based on truth contribution. | |
| ToolHandle< PFSimulateTruthShowerTool > | m_theTruthShowerSimulator {this, "PFSimulateTruthShowerTool", "", "The truth shower simulator"} |
Definition at line 15 of file PFUnifiedSubtractionOnlyTruthTool.h.
|
default |
|
protectedinherited |
Definition at line 334 of file PFUnifiedSubtractionOnlyTool.cxx.
|
protectedinherited |
Definition at line 329 of file PFUnifiedSubtractionOnlyTool.cxx.
|
overridevirtual |
Reimplemented from PFUnifiedSubtractionOnlyTool.
Definition at line 26 of file PFUnifiedSubtractionOnlyTruthTool.cxx.
|
protectedinherited |
Definition at line 323 of file PFUnifiedSubtractionOnlyTool.cxx.
|
protectedinherited |
This matches ID tracks and CaloClusters, and then creates eflowCaloObjects.
|
overrideprivatevirtual |
Start loop from nCaloObj, which should be zero on a first pass
Reimplemented from PFUnifiedSubtractionOnlyTool.
Definition at line 70 of file PFUnifiedSubtractionOnlyTruthTool.cxx.
|
overrideprivatevirtual |
Reimplemented from PFUnifiedSubtractionOnlyTool.
Definition at line 104 of file PFUnifiedSubtractionOnlyTruthTool.cxx.
| PFUnifiedSubtractionOnlyTool::PFUnifiedSubtractionOnlyTool | ( | const std::string & | type, |
| const std::string & | name, | ||
| const IInterface * | parent ) |
Definition at line 31 of file PFUnifiedSubtractionOnlyTool.cxx.
|
overridevirtual |
Reimplemented from PFUnifiedSubtractionOnlyTool.
Definition at line 55 of file PFUnifiedSubtractionOnlyTruthTool.cxx.
|
protectedinherited |
Definition at line 93 of file PFUnifiedSubtractionOnlyTool.cxx.
|
protectedinherited |
Toggle whether to decorate eflowRecTrack with additional data for Combined Performance studies.
Definition at line 79 of file PFUnifiedSubtractionOnlyTool.h.
|
protectedinherited |
Definition at line 58 of file PFUnifiedSubtractionOnlyTool.h.
|
protectedinherited |
Toggle EOverP algorithm mode, whereby no charged shower subtraction is performed.
Definition at line 67 of file PFUnifiedSubtractionOnlyTool.h.
|
protectedinherited |
Parameter that controls whether a track, in a track-cluster system, will be processed by the split shower recovery algorithm.
Definition at line 70 of file PFUnifiedSubtractionOnlyTool.h.
|
protectedinherited |
Toggle whether we have the HLLHC setup.
Definition at line 76 of file PFUnifiedSubtractionOnlyTool.h.
|
protectedinherited |
Tool for getting predictiing the energy using an ONNX model.
Definition at line 87 of file PFUnifiedSubtractionOnlyTool.h.
|
protectedinherited |
Definition at line 83 of file PFUnifiedSubtractionOnlyTool.h.
|
protectedinherited |
Definition at line 82 of file PFUnifiedSubtractionOnlyTool.h.
|
protectedinherited |
Toggle whether we are recovering split showers or not.
Definition at line 64 of file PFUnifiedSubtractionOnlyTool.h.
|
protectedinherited |
Parameter that controls whether to use retain remaining calorimeter energy in track-cluster system, after charged shower subtraction.
Definition at line 73 of file PFUnifiedSubtractionOnlyTool.h.
|
protectedinherited |
Definition at line 84 of file PFUnifiedSubtractionOnlyTool.h.
|
protectedinherited |
Tool for getting e/p values and hadronic shower cell ordering principle parameters.
Definition at line 56 of file PFUnifiedSubtractionOnlyTool.h.
|
private |
Definition at line 32 of file PFUnifiedSubtractionOnlyTruthTool.h.
|
protectedinherited |
Track position provider to be used to preselect clusters.
Definition at line 61 of file PFUnifiedSubtractionOnlyTool.h.
|
private |
Toggle whether we fully remove a cell with a truth deposit or reweight it based on truth contribution.
Definition at line 30 of file PFUnifiedSubtractionOnlyTruthTool.h.
|
protectedinherited |
Further discussion about why this flag exists can be found in https://its.cern.ch/jira/browse/ATLJETMET-1692 and https://indico.cern.ch/event/1388633/contributions/5837876/attachments/2809591/4903439/PFlow_EOverP_Feb2024.pdf The Jira report discusses assorted problems with the treatment of energy bin indexes for the lookup of e/p values.
In order to not change the behaviour of produciton code a legacy option is introduced to allow us to fix the problem in future iterations of e/p derivations.s
Definition at line 97 of file PFUnifiedSubtractionOnlyTool.h.
|
protectedinherited |
Toggle whether we use the neural net energy.
Definition at line 90 of file PFUnifiedSubtractionOnlyTool.h.