13 #include <Math/VectorUtil.h>
29 using namespace ROOT::Math::VectorUtil;
33 double intRadiusBarrel,
34 double intRadiusEndcap,
42 const std::string &dzOptionString) :
43 extRadius_(extRadius),
44 intRadiusBarrel_(intRadiusBarrel),
45 intRadiusEndcap_(intRadiusEndcap),
46 stripBarrel_(stripBarrel),
47 stripEndcap_(stripEndcap),
51 trackCollection_(trackCollection),
72 double photonEta = photon->
eta();
84 default : dzCut = fabs( (*trItr).vz() - photon->
vertex().z() );
break;
86 if (dzCut >
lip_ )
continue;
89 double this_pt = (*trItr).pt();
90 if ( this_pt <
etLow_ ) continue ;
92 double dr = ROOT::Math::VectorUtil::DeltaR(tmpTrackMomentumAtVtx,mom) ;
93 double deta = (*trItr).eta() - photonEta ;
94 if (fabs(photonEta) < 1.479) {
111 std::pair<int,double> retval;
113 retval.second = ptSum;
120 return getIso(photon).first ;
125 return getIso(photon).second ;
void setDzOption(const std::string &s)
std::vector< Track > TrackCollection
collection of Tracks
reco::TrackBase::Point beamPoint_
PhotonTkIsolation(double extRadius, double intRadius, double etLow, double lip, double drb, const reco::TrackCollection *trackCollection, reco::TrackBase::Point beamPoint)
virtual Vector momentum() const =0
spatial momentum vector
const reco::TrackCollection * trackCollection_
virtual const Point & vertex() const =0
vertex position
math::XYZPoint Point
point in the space
double getPtTracks(const reco::Candidate *) const
std::pair< int, double > getIso(const reco::Candidate *) const
XYZVectorD XYZVector
spatial vector with cartesian internal representation
int getNumberTracks(const reco::Candidate *) const
virtual double eta() const =0
momentum pseudorapidity