|
ATLAS Offline Software
|
Go to the documentation of this file.
73 #include "GaudiKernel/MsgStream.h"
74 #include "GaudiKernel/StatusCode.h"
104 return StatusCode::SUCCESS;
110 ATH_MSG_DEBUG(
"photonMonTool::bookHistogramsForOnePhoton()");
118 bookTH2F(myHist.
m_hEtaPhi4GeV, *
m_photonGroup,
"photonEtaPhiPtgt4GeV",
"Photon #eta,#phi map (candidates with Pt>4 GeV)", 64, -3.2, 3.2, 64, -3.2, 3.2, myHist.
m_nameOfEgammaType);
126 bookTH2F(myHist.
m_hEtaPhi, *
m_photonGroup,
"photonEtaPhiPt2.5GeV",
"Photon #eta,#phi map (candidates with Pt>2.5 GeV)", 64, -3.2, 3.2, 64, -3.2, 3.2, myHist.
m_nameOfEgammaType);
127 bookTH2F(myHist.
m_hEtaPhi20GeV, *
m_photonGroup,
"photonEtaPhiPtgt20GeV",
"Photon #eta,#phi map (candidates with Pt>20 GeV)", 64, -3.2, 3.2, 64, -3.2, 3.2, myHist.
m_nameOfEgammaType);
147 bookTH2F(myHist.
m_hEtaPhiUnconv, *
m_photonUnconvGroup,
"photonEtaPhiUnconv",
"Unconverted photon #eta,#phi map", 64, -3.2, 3.2, 64, -3.2, 3.2, myHist.
m_nameOfEgammaType);
156 bookTH2F(myHist.
m_hEtaPhiConv, *
m_photonConvGroup,
"photonEtaPhiConv",
"Converted photon #eta,#phi map", 64, -3.2, 3.2, 64, -3.2, 3.2, myHist.
m_nameOfEgammaType);
178 return StatusCode::SUCCESS;
196 return StatusCode::SUCCESS;
201 ATH_MSG_DEBUG(
"photonMonTool::fillHistogramsforOnePhoton()");
203 float et=(*g_iter)->pt();
204 float eta = (*g_iter)->eta();
205 float phi = (*g_iter)->phi();
210 if (
et<2500)
return StatusCode::SUCCESS;
230 Float_t RadiusConv = 0.0;
261 float Re233e237 = 0.0;
264 float Re237e277 = 0.0;
274 double ec = aCluster->
et()*cosh(aCluster->
eta());
277 if (ec!=0) f0 = aCluster->
energyBE(0)/ec;
399 return StatusCode::SUCCESS;
411 return StatusCode::SUCCESS;
438 double fractionConv = 0.;
439 if (NPhotons>0) fractionConv = NConvPhotons/NPhotons;
448 if (NPhotons>0) fractionConv = NConvPhotons/NPhotons;
466 if( ! photon_container->hasStore() ) {
468 return StatusCode::FAILURE;
475 ATH_MSG_DEBUG(
"Number of photons: " << photon_container->size());
493 for (; ph_iter!=ph_end; ++ph_iter){
494 if(!(*ph_iter))
continue;
500 if ((*ph_iter)->pt()<= 7000. && std::abs((*ph_iter)->eta()) >= 2.47 )
continue;
505 if((*ph_iter)->passSelection(isGood,
"Loose")) {
509 }
else ATH_MSG_WARNING(
"Photon selection menu LHMedium is not defined" );
512 if((*ph_iter)->passSelection(isGood,
"Tight")) {
516 }
else ATH_MSG_WARNING(
"Photon selection menu LHTight is not defined" );
534 return StatusCode::SUCCESS;
@ unconverted
unconverted photon
std::vector< TH1 * > m_hvN
std::vector< TH1 * > m_hvF1
@ convMatchDeltaPhi2
difference between the cluster phi and the phi of the second track of the vertex extrapolated to the ...
@ ehad1
E leakage into 1st sampling of had calo (CaloSampling::HEC0 + CaloSampling::TileBar0 + CaloSampling::...
@ e233
uncalibrated energy (sum of cells) of the middle sampling in a rectangle of size 3x3 (in cell units e...
flt_t time() const
Access cluster time.
Extra patterns decribing particle interation process.
Const iterator class for DataVector/DataList.
Scalar phi() const
phi method
std::vector< TH1 * > m_hvTopoEtCone40Conv
std::vector< TH1 * > m_hvConvTrkMatch1
std::vector< TH1 * > m_hvRe233e237
Scalar eta() const
pseudorapidity method
std::vector< TH1 * > m_hvPtCone20Conv
unsigned int m_nPhotonsConv
TH1 * m_hTopoEtCone40Unconv
@ ecore
core energy in em calo E(core) = E0(3x3) + E1(15x2) + E2(5x5) + E3(3x5)
std::vector< int > m_nPhotonsPerRegionUnconv
std::vector< int > m_nPhotonsPerRegion
@ ptcone20
Track isolation.
unsigned int m_nPhotonsInCurrentLB
unsigned int m_nPhotonsUnconv
std::vector< int > m_nPhotonsPerLumiBlock
@ deltaPhi1
difference between the cluster eta (1st sampling) and the eta of the track extrapolated to the 1st sa...
std::vector< TH1 * > m_hvEhad1
@ f3
fraction of energy reconstructed in 3rd sampling
Description of a calorimeter cluster.
std::vector< TH1 * > m_hvConvType
@ f1
E1/E = fraction of energy reconstructed in the first sampling, where E1 is energy in all strips belon...
virtual double eta() const
The pseudorapidity ( ) of the particle.
std::vector< int > m_nPhotonsPerLumiBlockUnconv
const uint16_t AuthorAmbiguous
Object Reconstructed by standard cluster-based algorithm.
::StatusCode StatusCode
StatusCode definition for legacy code.
std::vector< TH1 * > m_hvF2
unsigned int m_nPhotonsInCurrentLBConv
std::vector< TH1 * > m_hvEta
std::vector< TH1 * > m_hvEt
@ convMatchDeltaPhi1
difference between the cluster phi and the phi of the first track of the vertex extrapolated to the s...
std::vector< TH1 * > m_hvF3
std::vector< TH1 * > m_hvTime
std::vector< TH1 * > m_hvRe237e277
std::vector< TH1 * > m_hvTopoEtCone40Unconv
float conversionRadius(const xAOD::Vertex *vx)
return the conversion radius or 9999.
std::vector< int > m_nPhotonsPerLumiBlockConv
@ deltaPhi2
difference between the cluster phi (second sampling) and the phi of the track extrapolated to the sec...
std::vector< TH1 * > m_hvPhi
std::vector< TH1 * > m_hvPtCone20Unconv
int ir
counter of the current depth
def time(flags, cells_name, *args, **kw)
#define ATH_MSG_WARNING(x)
std::vector< TH1 * > m_hvTopoEtCone40
std::vector< TH1 * > m_hvConvTrkMatch2
float energyBE(const unsigned layer) const
Get the energy in one layer of the EM Calo.
xAOD::EgammaParameters::ConversionType conversionType(const xAOD::Photon *ph)
return the photon conversion type (see EgammaEnums)
const uint16_t AuthorPhoton
Object Reconstructed by standard cluster-based algorithm.
std::vector< int > m_nPhotonsPerRegionConv
std::vector< TH1 * > m_hvPtCone20
@ e277
uncalibrated energy (sum of cells) of the middle sampling in a rectangle of size 7x7
@ e237
uncalibrated energy (sum of cells) of the middle sampling in a rectangle of size 3x7
TH1 * m_hTopoEtCone40Conv
unsigned int m_nPhotonsInCurrentLBUnconv
std::vector< TH1 * > m_hvCoreEM
std::vector< TH1 * > m_hvF0
std::string m_nameOfEgammaType