Go to the documentation of this file. 1 #ifndef CommonTools_BaseParticlePropagator_RawParticle_h
2 #define CommonTools_BaseParticlePropagator_RawParticle_h
7 #include "Math/GenVector/RotationX.h"
8 #include "Math/GenVector/RotationY.h"
9 #include "Math/GenVector/RotationZ.h"
10 #include "Math/GenVector/Rotation3D.h"
11 #include "Math/GenVector/AxisAngle.h"
12 #include "Math/GenVector/Boost.h"
49 typedef ROOT::Math::Boost
Boost;
90 void setT(
const double t);
94 void setVertex(
double xv,
double yv,
double zv,
double tv);
98 void setMomentum(
double xv,
double yv,
double zv,
double tv);
111 void boost(
double bx,
double by,
double bz);
213 double Perp2()
const;
217 double theta()
const;
367 myVertex.SetXYZT(
X() + tr.X(),
Y() + tr.Y(),
Z() + tr.Z(),
T());
double x() const
x of vertex
RawParticle makeMuon(bool isParticle, const math::XYZTLorentzVector &p, const math::XYZTLorentzVector &xStart)
double phi() const
phi of momentum vector
double et() const
get the transverse energy
void translate(const XYZVector &t)
void boost(double bx, double by, double bz)
void rotateZ(double rphi)
double E() const
energy of the momentum
const XYZTLorentzVector & momentum() const
the momentum fourvector
void setT(const double t)
set the time of creation
double mag() const
the magnitude of the momentum
const XYZTLorentzVector & vertex() const
the vertex fourvector
double t() const
vertex time
double R2() const
vertex radius**2
void setCharge(float q)
set the MEASURED charge
ROOT::Math::Rotation3D Rotation3D
friend RawParticle unchecked_makeParticle(int id, const math::XYZTLorentzVector &p, double mass, double charge)
math::XYZVector XYZVector
int pid() const
get the HEP particle ID number
double cos2Theta() const
Cos**2(theta) is faster to determine than eta.
double Pt() const
transverse momentum
double myMass
the RECONSTRUCTED mass
math::XYZTLorentzVector XYZTLorentzVector
ROOT::Math::RotationZ RotationZ
double charge() const
get the MEASURED charge
int myId
the particle id number HEP-PID
int myStatus
the status code according to PYTHIA
double Z() const
z of vertex
XYZTLorentzVector myMomentum
the four vector of the momentum
double r() const
vertex radius
ROOT::Math::RotationY RotationY
double px() const
x of the momentum
void setMass(float m)
set the RECONSTRUCTED mass
double py() const
y of the momentum
RawParticle & operator=(const RawParticle &rhs)=default
double pt() const
transverse momentum
ROOT::Math::RotationX RotationX
std::ostream & operator<<(std::ostream &o, const RawParticle &p)
double z() const
z of vertex
XYZVector Vect() const
the momentum threevector
double myCharge
the MEASURED charge
double M2() const
mass squared
double pz() const
z of the momentum
void rotateX(double rphi)
double cos2ThetaV() const
XYZVectorD XYZVector
spatial vector with cartesian internal representation
double T() const
vertex time
Tan< T >::type tan(const T &t)
double Y() const
y of vertex
double Py() const
y of the momentum
void setStatus(int istat)
double mass() const
get the MEASURED mass
double Perp2() const
perpendicular momentum squared
double r2() const
vertex radius**2
double R() const
vertex radius
void rotate(double rphi, const XYZVector &raxis)
double y() const
y of vertex
double e() const
energy of the momentum
int myUsed
status of the locking
ROOT::Math::AxisAngle Rotation
double X() const
x of vertex
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
void setVertex(const XYZTLorentzVector &vtx)
set the vertex
int status() const
get the particle status
void setMomentum(const XYZTLorentzVector &vtx)
set the momentum
double theta() const
theta of momentum vector
XYZTLorentzVector myVertex
the four vector of the vertex
double Px() const
x of the momentum
double Pz() const
z of the momentum
void rotateY(double rphi)