ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/UHHAnalysis/NtupleWriter/Objects/Electron.h
(Generate patch)

Comparing UserCode/UHHAnalysis/NtupleWriter/Objects/Electron.h (file contents):
Revision 1.2 by peiffer, Wed May 23 09:10:59 2012 UTC vs.
Revision 1.4 by peiffer, Thu Jun 28 16:04:14 2012 UTC

# Line 3 | Line 3
3  
4   #include "Particle.h"
5  
6 + /**
7 + *  @short electron class
8 + *  @author Thomas Peiffer
9 + */
10 +
11   class Electron : public Particle{
12  
13   public:
# Line 112 | Line 117 | class Electron : public Particle{
117      return ( m_chargedHadronIso + std::max( 0.0, m_neutralHadronIso + m_photonIso - 0.5*m_puChargedHadronIso ) ) / pt();
118    }
119  
120 + enum E_eleIDType{
121 +  e_Tight,
122 +  e_Medium,
123 +  e_Loose,
124 +  e_Veto
125 + };
126 +
127 +
128 + bool eleID(E_eleIDType type){
129 +  
130 +   bool pass=false;
131 +
132 +  
133 +   float cuts_barrel[5]={0,0,0,0,0};
134 +   float cuts_endcap[5]={0,0,0,0,0};
135 +
136 +   if(type==e_Tight){
137 +     cuts_barrel[0]=0.004; cuts_barrel[1]=0.03; cuts_barrel[2]=0.01; cuts_barrel[3]=0.12; cuts_barrel[4]=0.05;
138 +     cuts_endcap[0]=0.005; cuts_endcap[1]=0.02; cuts_endcap[2]=0.03; cuts_endcap[3]=0.10; cuts_endcap[4]=0.05;
139 +   }
140 +   if(type==e_Medium){
141 +     cuts_barrel[0]=0.004; cuts_barrel[1]=0.06; cuts_barrel[2]=0.01; cuts_barrel[3]=0.12; cuts_barrel[4]=0.05;
142 +     cuts_endcap[0]=0.007; cuts_endcap[1]=0.03; cuts_endcap[2]=0.03; cuts_endcap[3]=0.10; cuts_endcap[4]=0.05;
143 +   }
144 +   if(type==e_Loose){
145 +     cuts_barrel[0]=0.007; cuts_barrel[1]=0.15; cuts_barrel[2]=0.01; cuts_barrel[3]=0.12; cuts_barrel[4]=0.05;
146 +     cuts_endcap[0]=0.009; cuts_endcap[1]=0.10; cuts_endcap[2]=0.03; cuts_endcap[3]=0.10; cuts_endcap[4]=0.05;
147 +   }
148 +   if(type==e_Veto){
149 +     cuts_barrel[0]=0.007; cuts_barrel[1]=0.8; cuts_barrel[2]=0.01; cuts_barrel[3]=0.15; cuts_barrel[4]=std::numeric_limits<float>::infinity();
150 +     cuts_endcap[0]=0.01; cuts_endcap[1]=0.7; cuts_endcap[2]=0.03; cuts_endcap[3]=std::numeric_limits<float>::infinity(); cuts_endcap[4]=std::numeric_limits<float>::infinity();
151 +   }
152 +
153 +   float trackMomentumAtVtx = EcalEnergy()/EoverPIn();
154 +
155 +   if(fabs(supercluster_eta())<1.4442){
156 +     if(dEtaIn()<cuts_barrel[0] && dPhiIn()<cuts_barrel[1] && sigmaIEtaIEta()<cuts_barrel[2] && HoverE()<cuts_barrel[3] && fabs(1./EcalEnergy()-1./trackMomentumAtVtx)<cuts_barrel[4]) pass=true;
157 +   }
158 +   else if( fabs(supercluster_eta())>1.5660){
159 +     if(dEtaIn()<cuts_endcap[0] && dPhiIn()<cuts_endcap[1] && sigmaIEtaIEta()<cuts_endcap[2] && HoverE()<cuts_endcap[3] && fabs(1./EcalEnergy()-1./trackMomentumAtVtx)<cuts_endcap[4]) pass=true;
160 +   }
161 +  
162 +   return pass;
163 +  
164 + }
165 +
166   private:
167    float m_vertex_x;
168    float m_vertex_y;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines