77 this->SetXYZT(right.Px(),right.Py(),right.Pz(),right.E());
158 SetXYZT(v.X(),v.Y(),v.Z(),E());
165 SetXYZT(v.X(),v.Y(),v.Z(),E());
172 SetXYZT(v.X(),v.Y(),v.Z(),E());
179 SetXYZT(v.X(),v.Y(),v.Z(),E());
184 Boost b(betax,betay,betaz);
186 SetXYZT(p.X(),p.Y(),p.Z(),p.T());
192 MyParticleName =
myInfo->name();
194 MyParticleName =
"unknown ";
202 if (MyParticleName.length() != 0) {
204 for(
unsigned int k=0;
k<9-MyParticleName.length() &&
k<10;
k++)
215 std::cout.setf(std::ios::fixed, std::ios::floatfield);
216 std::cout.setf(std::ios::right, std::ios::adjustfield);
217 std::cout << std::setw(8) << std::setprecision(2) << Px();
218 std::cout << std::setw(8) << std::setprecision(2) << Py();
219 std::cout << std::setw(8) << std::setprecision(2) << Pz();
220 std::cout << std::setw(8) << std::setprecision(2) << E();
221 std::cout << std::setw(8) << std::setprecision(2) << M();
224 std::cout << std::setw(8) << std::setprecision(2) <<
X();
225 std::cout << std::setw(8) << std::setprecision(2) <<
Y();
226 std::cout << std::setw(8) << std::setprecision(2) <<
Z();
227 std::cout << std::setw(8) << std::setprecision(2) <<
T();
233 o.setf(std::ios::fixed, std::ios::floatfield);
234 o.setf(std::ios::right, std::ios::adjustfield);
237 o << std::setw(4) << std::setprecision(2) << p.
pid() <<
" (";
238 o << std::setw(2) << std::setprecision(2) << p.
status() <<
"): ";
239 o << std::setw(10) << std::setprecision(4) << p.
momentum() <<
" ";
240 o << std::setw(10) << std::setprecision(4) << p.
vertex();
258 m =
myInfo->mass().value();
272 double w =
myInfo->totalWidth().value();
273 if ( w != 0. &&
myId != 1000022 ) {
274 ct = 6.582119e-25 / w / 10.;
308 double mypp, tmpEt=-1.;
312 tmpEt = E() *
pt() / mypp;
void setCharge(float q)
set the MEASURED charge
const ParticleTable * tab
void boost(double bx, double by, double bz)
void rotateZ(double rphi)
XYZTLorentzVector myVertex
the four vector of the vertex
int status() const
get the particle status
void rotateY(double rphi)
int myId
the particle id number HEP-PID
static PFTauRenderPlugin instance
double PDGmass() const
get the THEORETICAL mass
double PDGcTau() const
get the THEORETICAL lifetime
double myMass
the RECONSTRUCTED mass
static ParticleTable *const instance()
int pid() const
get the HEP particle ID number
void setT(const double t)
set the time of creation
std::ostream & operator<<(std::ostream &out, const ALILine &li)
double mass() const
get the MEASURED mass
ROOT::Math::RotationZ RotationZ
void setMass(float m)
set the RECONSTRUCTED mass
int myStatus
the status code according to PYTHIA
double PDGcharge() const
get the THEORETICAL charge
ROOT::Math::RotationX RotationX
const XYZTLorentzVector & momentum() const
the momentum fourvector
math::XYZVector XYZVector
double myCharge
the MEASURED charge
T mag2() const
The vector magnitude squared. Equivalent to vec.dot(vec)
double Y() const
y of vertex
double Z() const
z of vertex
ROOT::Math::RotationY RotationY
Abs< T >::type abs(const T &t)
const HepPDT::ParticleDataTable * theTable() const
Get the pointer to the particle data table.
void rotate(double rphi, const XYZVector &raxis)
double charge() const
get the MEASURED charge
int myUsed
status of the locking
const XYZTLorentzVector & vertex() const
the vertex fourvector
void setStatus(int istat)
void rotateX(double rphi)
double r() const
vertex radius
double X() const
x of vertex
std::string PDGname() const
get the PDG name
ROOT::Math::AxisAngle Rotation
double T() const
vertex time
const ParticleData * myInfo
The pointer to the PDG info.
RawParticle & operator=(const RawParticle &rhs)
double et() const
get the transverse energy
math::XYZTLorentzVector XYZTLorentzVector
T angle(T x1, T y1, T z1, T x2, T y2, T z2)