76 mon_Phi,cutCounter,mon_lhval,mon_mu,
77 mon_ptvarcone20, mon_relptvarcone20,
78 mon_ptcone20, mon_relptcone20, mon_ptcone30, mon_relptcone30, mon_ptvarcone30, mon_relptvarcone30, mon_trk_d0);
80 float ET(0), dEta(0), dPhi(0),
eta(0),
phi(0), lhval(0), mu(0), trk_d0(0);
84 auto roiDescriptor = input.roi;
87 if ( std::abs( roiDescriptor->eta() ) > 2.6 ) {
88 ATH_MSG_DEBUG(
"REJECT The electron had eta coordinates beyond the EM fiducial volume : " << roiDescriptor->eta() <<
"; stop the chain now" );
93 <<
": Eta = " << roiDescriptor->eta()
94 <<
", Phi = " << roiDescriptor->phi() );
97 double etaRef = roiDescriptor->eta();
98 double phiRef = roiDescriptor->phi();
101 if ( std::abs( phiRef ) >
M_PI ) phiRef -= 2*
M_PI;
108 auto pClus = input.electron->caloCluster();
110 float absEta = std::abs( pClus->eta() );
118 dEta = pClus->eta() - etaRef;
120 dPhi = std::abs( pClus->phi() - phiRef );
121 dPhi = ( dPhi <
M_PI ? dPhi : 2*
M_PI - dPhi );
126 trk_d0 = std::abs(input.electron->trackParticle()->d0());
130 <<
" roi eta=" << etaRef <<
" DeltaEta=" << dEta
144 <<
" roi phi="<< phiRef <<
" DeltaPhi="<< dPhi
156 if ( cutIndex == -1 ) {
167 if ( ET <
m_eTthr[cutIndex] ) {
182 if ( trk_d0 <
m_d0 ) {
191 if(input.valueDecorator.count(
"avgmu")){
192 mu = input.valueDecorator.at(
"avgmu");
196 float Rhad1(0), Rhad(0), Reta(0), Rphi(0), e277(0), weta2c(0),
197 Eratio(0), DeltaE(0), f1(0), weta1c(0), wtot(0), fracm(0);
199 float ptvarcone20(999), ptvarcone30(999), ptcone20(999), ptcone30(999), ptcone40(999), etcone20(999), etcone30(999),
200 etcone40(999), topoetcone20(999), topoetcone30(999), topoetcone40(999), relptcone20(999), relptvarcone20(999),relptcone30(999), relptvarcone30(999);
204 ATH_MSG_WARNING(
"ptvarcone20 not available. Will not cut on isolation");
209 ATH_MSG_WARNING(
"ptvarcone30 not available. Will not cut on isolation");
275 ATH_MSG_DEBUG(
" trackPT "<<input.electron->trackParticle()->pt());
276 ATH_MSG_DEBUG(
" d0 "<<input.electron->trackParticle()->d0());
277 ATH_MSG_DEBUG(
" z0 "<<input.electron->trackParticle()->z0());
291 if (input.electron->pt() >0){
292 relptcone20 = ptcone20/input.electron->pt();
293 relptvarcone20 = ptvarcone20/input.electron->pt();
294 relptcone30 = ptcone30/input.electron->pt();
295 relptvarcone30 = ptvarcone30/input.electron->pt();
297 mon_ptvarcone20 = ptvarcone20;
298 mon_relptvarcone20 = relptvarcone20;
299 mon_ptcone20 = ptcone20;
300 mon_relptcone20 = relptcone20;
302 mon_ptvarcone30 = ptvarcone30;
303 mon_relptvarcone30 = relptvarcone30;
304 mon_ptcone30 = ptcone30;
305 mon_relptcone30 = relptcone30;
313 if( input.valueDecorator.count(
m_pidName+
"LHValue")){
314 lhval = input.valueDecorator.at(
m_pidName+
"LHValue");
318 if( input.pidDecorator.count(
m_pidName) )
345 ATH_MSG_DEBUG(
" ACCEPT Isolation ptvarcon30_rel cut failed");
348 ATH_MSG_DEBUG(
" ACCEPT Isolation ptvarcon30_rel cut passed");
365 ATH_MSG_DEBUG(
" ACCEPT Isolation ptvarcon20_rel cut failed");
368 ATH_MSG_DEBUG(
" ACCEPT Isolation ptvarcon20_rel cut passed");