|
ATLAS Offline Software
|
Go to the documentation of this file.
9 #include <CLHEP/Units/SystemOfUnits.h>
16 const std::string&
name,
17 const IInterface*
parent) :
42 return StatusCode::SUCCESS;
47 return StatusCode::SUCCESS;
65 const double eta2 = std::abs(cluster->
etaBE(2));
82 constexpr
double EM2ENERGY_CUT = 50 *
MeV;
83 if (cluster->
energyBE(2) < EM2ENERGY_CUT){
89 const double emFrac =
acc.isAvailable(*cluster) ?
acc(*cluster) : 0.;
90 const double EMEnergy = cluster->
e() * emFrac;
91 double EMEt = EMEnergy / std::cosh(
eta2);
106 ATH_MSG_DEBUG(
"Cluster failed EM Fraction cut: don't make ROI");
118 if (
sc.isFailure()) {
136 if (
sc.isFailure() ) {
142 const double raphad1 = EMEt != 0. ?
ethad1 / EMEt : 0.;
143 const double raphad = EMEt != 0. ?
ethad / EMEt : 0.;
146 ATH_MSG_DEBUG(
"Cluster failed Hadronic Leakage test: dont make ROI");
151 ATH_MSG_DEBUG(
"Cluster failed Hadronic Leakage test: dont make ROI");
Gaudi::Property< double > m_HadLeakCut
bool passSelection(const xAOD::CaloCluster *cluster, const CaloDetDescrManager &cmgr) const override final
pass the selection described in the class egammaCaloClusterSelector
virtual StatusCode initialize() override final
SG::ReadHandleKey< CaloCellContainer > m_cellsKey
Name of the cluster intput collection.
@ ethad1
transverse energy in the first sampling of the hadronic calorimeters behind the cluster calculated fr...
Gaudi::Property< double > m_ClusterEtCut
Helper class to provide constant type-safe access to aux data.
Gaudi::Property< double > m_RetaCut
Definition of CaloDetDescrManager.
Gaudi::Property< double > m_EMEtCut
float etaBE(const unsigned layer) const
Get the eta in one layer of the EM Calo.
@ ethad
ET leakage into hadronic calorimeter with exclusion of energy in CaloSampling::TileGap3.
virtual StatusCode finalize() override final
Description of a calorimeter cluster.
bool inEndcap() const
Returns true if at least one clustered cell in the endcap.
static constexpr double HAD_LEAK_DEFAULT_NO_CUT
::StatusCode StatusCode
StatusCode definition for legacy code.
bool inBarrel() const
Returns true if at least one clustered cell in the barrel.
ToolHandle< IegammaIso > m_HadronicLeakageTool
Tool for hadronic leakage calculation; onlud used if cuts needing are defined.
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
Gaudi::Property< double > m_EMEtSplittingFraction
egammaCaloClusterSelector(const std::string &type, const std::string &name, const IInterface *parent)
bool isFCAL(const xAOD::CaloCluster *cluster)
return true if the cluster (or the majority of its energy) is in the FCAL0
static constexpr double RETA_DEFAULT_NO_CUT
This class provides the client interface for accessing the detector description information common to...
#define ATH_MSG_WARNING(x)
Gaudi::Property< double > m_EMFCut
float energyBE(const unsigned layer) const
Get the energy in one layer of the EM Calo.
ToolHandle< IegammaCheckEnergyDepositTool > m_egammaCheckEnergyDepositTool
Pointer to the egammaCheckEnergyDepositTool.
bool hasSampling(const CaloSample s) const
Checks if certain smapling contributes to cluster.
static StatusCode execute(const xAOD::CaloCluster &cluster, const CaloDetDescrManager &cmgr, const CaloCellContainer &cell_container, Info &info, bool doRetaOnly=false)
virtual double e() const
The total energy of the particle.