16 using namespace pf2pat;
31 PFMETAlgo::~PFMETAlgo() { }
39 for(
unsigned i=0;
i<pfCandidates.size();
i++ ) {
51 double cosphi =
cos(phi);
52 double sinphi =
sin(phi);
55 double sintheta =
sin(theta);
57 double et = E*sintheta;
58 double ex = et*cosphi;
59 double ey = et*sinphi;
66 double Et =
sqrt( sumEx*sumEx + sumEy*sumEy);
70 cout<<
"PFMETAlgo: mEx, mEy, mEt = "
71 << missingEt.X() <<
", "
72 << missingEt.Y() <<
", "
73 << missingEt.T() <<endl;
77 return MET(sumEt, missingEt, vertex);
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
Sin< T >::type sin(const T &t)
Geom::Theta< T > theta() const
std::vector< PFCandidatePtr > pfCandidates(const PFJet &jet, int particleId, bool sort=true)
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
virtual double energy() const
energy
Cos< T >::type cos(const T &t)
virtual double theta() const
momentum polar angle
std::vector< reco::PFCandidate > PFCandidateCollection
collection of PFCandidates
XYZPointD XYZPoint
point in space with cartesian internal representation
Geom::Phi< T > phi() const
Particle reconstructed by the particle flow algorithm.
virtual ParticleType particleId() const
virtual double phi() const
momentum azimuthal angle