5#ifndef PFUNIFIEDSUBTRACTIONONLYTOOL_H
6#define PFUNIFIEDSUBTRACTIONONLYTOOL_H
9#include "GaudiKernel/ToolHandle.h"
36 const EventContext& ctx,
45 virtual void performSubtraction(
const EventContext& ctx,
const unsigned int& startingPoint,
const unsigned int& nCaloObj,
PFData &
data )
const;
49 bool isEOverPFail(
double expectedEnergy,
double sigma,
double clusterEnergy)
const;
51 bool canAnnihilate(
double expectedEnergy,
double sigma,
double clusterEnergy)
const;
56 ToolHandle<IEFlowCellEOverPTool>
m_theEOverPTool{
this,
"eflowCellEOverPTool",
"eflowCellEOverPTool",
"Energy Flow E/P Values and Shower Parameters Tool"};
61 std::unique_ptr<PFMatch::TrackEtaPhiInFixedLayersProvider>
m_trkpos;
64 Gaudi::Property<bool>
m_recoverSplitShowers{
this,
"RecoverSplitShowers",
false,
"Toggle whether we are recovering split showers or not"};
67 Gaudi::Property<bool>
m_calcEOverP{
this,
"CalcEOverP",
false,
"Toggle EOverP algorithm mode, whereby no charged shower subtraction is performed"};
70 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"};
73 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"};
76 Gaudi::Property<bool>
m_isHLLHC{
this,
"isHLLHC",
false,
"Toggle whether we have the HLLHC setup"};
79 Gaudi::Property<bool>
m_addCPData{
this,
"addCPData",
false,
"Toggle whether to decorate FlowElements with additional data for Combined Performance studies "};
87 ToolHandle<PFEnergyPredictorTool>
m_NNEnergyPredictorTool{
this,
"NNEnergyPredictorTool",
"",
"Tool for getting predictiing the energy using an ONNX model "};
90 Gaudi::Property<bool>
m_useNNEnergy{
this,
"useNNEnergy",
false,
"Toggle whether we use the neural net energy"};
97 Gaudi::Property<bool>
m_useLegacyEBinIndex{
this,
"useLegacyEBinIndex",
true,
"Toggle whether we use the legacy energy bin index"};
char data[hepevt_bytes_allocation_ATLAS]
Class to calculate the ratio of new to old energies of CaloClusters after the particle flow charged s...
This class contains a few functions to set the amount of energy removed from a xAOD::CaloCluster by a...
An internal EDM object which stores information about systems of associated tracks and calorimeter cl...
Inherits from eflowEEtaBinBase.
Used in eflowCellLevelSubtractionTool and eflowRecoverSplitShowersTool to perform the removal of calo...