|
ATLAS Offline Software
|
Go to the documentation of this file.
2 #include "GaudiKernel/SystemOfUnits.h"
20 return StatusCode::SUCCESS;
30 if( !
input.roi )
return false;
32 if(
input.electrons.empty() )
return false;
39 for (
const auto&
el :
input.electrons )
62 unsigned PassedCuts = 0;
65 if ( std::abs( roi->
eta() ) > 2.6 ) {
66 ATH_MSG_DEBUG(
"REJECT The electron had eta coordinates beyond the EM fiducial volume : " << roi->
eta() <<
"; stop the chain now" );
73 double etaRef = roi->
eta();
74 double phiRef = roi->
phi();
77 if ( std::abs( phiRef ) >
M_PI ) phiRef -= 2*
M_PI;
80 ATH_MSG_DEBUG(
"Electron : et " <<
el->pt() <<
" eta = " <<
el->eta() <<
" phi = " <<
el->phi());
82 auto pClus =
el->caloCluster();
89 float absEta = std::abs( pClus->eta() );
98 float dEta = pClus->eta() - etaRef;
100 float dPhi = std::abs( pClus->phi() - phiRef );
102 float ET = pClus->et();
111 PassedCuts = PassedCuts + 1;
115 ATH_MSG_DEBUG(
"Electron : eta=" << pClus->eta() <<
" roi eta=" << etaRef <<
" DeltaEta=" <<
dEta
122 PassedCuts = PassedCuts + 1;
131 PassedCuts = PassedCuts + 1;
136 if ( cutIndex == -1 ) {
142 PassedCuts = PassedCuts + 1;
146 if ( ET <
m_eTthr[cutIndex] ) {
150 PassedCuts = PassedCuts + 1;
158 float trk_d0 = std::abs(
el->trackParticle()->d0());
160 if ( trk_d0 <
m_d0 ) {
164 PassedCuts = PassedCuts + 1;
289 const float absEta = std::abs(eta);
290 auto binIterator = std::adjacent_find(
m_etabin.begin(),
m_etabin.end(), [=](
float left,
float right){ return left < absEta and absEta < right; } );
291 if ( binIterator ==
m_etabin.end() ) {
294 return binIterator -
m_etabin.begin();
@ topoetcone20
Topo-cluster ET-sum.
The common trigger namespace for trigger analysis tools.
@ ptcone20
Track isolation.
nope - should be used for standalone also, perhaps need to protect the class def bits #ifndef XAOD_AN...
@ wtots1
shower width is determined in a window detaxdphi = 0,0625 ×~0,2, corresponding typically to 20 strips...
@ f1
E1/E = fraction of energy reconstructed in the first sampling, where E1 is energy in all strips belon...
@ etcone20
Calorimeter isolation.
::StatusCode StatusCode
StatusCode definition for legacy code.
bool dPhi(const xAOD::TauJet &tau, const xAOD::TauTrack &track, double &out)
virtual unsigned int roiId() const override final
these quantities probably don't need to be used any more
virtual double phi() const override final
Methods to retrieve data members.
bool absEta(const xAOD::TauJet &tau, double &out)
virtual double eta() const override final
@ e277
uncalibrated energy (sum of cells) of the middle sampling in a rectangle of size 7x7
@ weta1
shower width using +/-3 strips around the one with the maximal energy deposit: w3 strips = sqrt{sum(E...
@ Eratio
(emaxs1-e2tsts1)/(emaxs1+e2tsts1)
bool dEta(const xAOD::TauJet &tau, const xAOD::TauTrack &track, double &out)
@ fracs1
shower shape in the shower core : [E(+/-3)-E(+/-1)]/E(+/-1), where E(+/-n) is the energy in ± n strip...
@ weta2
the lateral width is calculated with a window of 3x5 cells using the energy weighted sum over all cel...