CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
VertexMass Class Reference

#include <VertexMass.h>

Public Member Functions

double operator() (const TransientVertex &) const
 
 VertexMass ()
 
 VertexMass (double pionMass)
 
 ~VertexMass ()
 

Private Attributes

double thePionMass
 

Detailed Description

Definition at line 6 of file VertexMass.h.

Constructor & Destructor Documentation

VertexMass::VertexMass ( )

Definition at line 6 of file VertexMass.cc.

6 : thePionMass(0.13957) {}
double thePionMass
Definition: VertexMass.h:20
VertexMass::VertexMass ( double  pionMass)

Definition at line 8 of file VertexMass.cc.

8 : thePionMass(pionMass) {}
double thePionMass
Definition: VertexMass.h:20
VertexMass::~VertexMass ( )
inline

Definition at line 14 of file VertexMass.h.

14 {};

Member Function Documentation

double VertexMass::operator() ( const TransientVertex vtx) const

Definition at line 10 of file VertexMass.cc.

References TrajectoryStateOnSurface::globalMomentum(), reco::TransientTrack::impactPointState(), TransientVertex::originalTracks(), mathSSE::sqrt(), thePionMass, testEve_cfg::tracks, PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().

11 {
12 
13  std::vector<reco::TransientTrack> tracks = vtx.originalTracks();
14 
15  double esum=0., pxsum=0., pysum=0., pzsum=0.;
16 
17  for(std::vector<reco::TransientTrack>::const_iterator it=tracks.begin();
18  it!=tracks.end();it++) {
19  reco::TransientTrack track = *it;
20 
21  double px = track.impactPointState().globalMomentum().x();
22  double py = track.impactPointState().globalMomentum().y();
23  double pz = track.impactPointState().globalMomentum().z();
24 
25  pxsum += px;
26  pysum += py;
27  pzsum += pz;
28  esum += sqrt(px*px + py*py + pz*pz + thePionMass*thePionMass);
29  }
30 
31  return sqrt(esum*esum - (pxsum*pxsum + pysum*pysum + pzsum*pzsum));
32 }
T y() const
Definition: PV3DBase.h:63
std::vector< reco::TransientTrack > const & originalTracks() const
T sqrt(T t)
Definition: SSEVec.h:48
T z() const
Definition: PV3DBase.h:64
tuple tracks
Definition: testEve_cfg.py:39
GlobalVector globalMomentum() const
double thePionMass
Definition: VertexMass.h:20
TrajectoryStateOnSurface impactPointState() const
T x() const
Definition: PV3DBase.h:62

Member Data Documentation

double VertexMass::thePionMass
private

Definition at line 20 of file VertexMass.h.

Referenced by operator()().