16namespace Experimental {
30 printf(
"(%f, %f, %f)\n", fX, fY, fZ);
38 fX =
v.x(); fY =
v.y(); fZ =
v.z();
47 if (cosTheta*cosTheta < 1)
return -0.5*
TMath::Log( (1.0-cosTheta)/(1.0+cosTheta) );
48 Warning(
"Eta",
"transverse momentum = 0, returning +/- 1e10");
49 return (fZ >= 0) ? 1e10 : -1e10;
62 fX *= length; fY *= length; fZ *= length;
111 printf(
"(%f, %f, %f; %f)\n", TP::fX, TP::fY, TP::fZ, fT);
143 printf(
"(%f, %f)\n", fX, fY);
void Warning(const char *location, const char *msgfmt,...)
REveVector2T A two-vector template without TObject inheritance and virtual functions.
void Normalize(TT length=1)
Normalize the vector to length if current length is non-zero.
void Dump() const
Dump to stdout as "(x, y)\n".
REveVector4T A four-vector template without TObject inheritance and virtual functions.
void Dump() const
Dump to stdout as "(x, y, z; t)\n".
REveVectorT A three-vector template without TObject inheritance and virtual functions.
TT Normalize(TT length=1)
Normalize the vector to length if current length is non-zero.
REveVectorT Orthogonal() const
Returns an orthogonal vector (not normalized).
void Set(const Float_t *v)
void OrthoNormBase(REveVectorT &a, REveVectorT &b) const
Set vectors a and b to be normal to this and among themselves, both of length 1.
TT Eta() const
Calculate eta of the point, pretending it's a momentum vector.
void Dump() const
Dump to stdout as "(x, y, z)\n".
TVector3 is a general three vector class, which can be used for the description of different vectors ...
T Mag(const SVector< T, D > &rhs)
Vector magnitude (Euclidian norm) Compute : .
double CosTheta(const Vector1 &v1, const Vector2 &v2)
Find CosTheta Angle between two generic 3D vectors pre-requisite: vectors implement the X(),...