16 #ifndef ROOT_Math_GenVector_Cylindrical3D 17 #define ROOT_Math_GenVector_Cylindrical3D 1 19 #ifndef ROOT_Math_Math 23 #ifndef ROOT_Math_GenVector_eta 65 template <
class CoordSystem >
98 { dest[0] =
fRho; dest[1] =
fZ; dest[2] =
fPhi; }
113 inline static Scalar
pi() {
return M_PI; }
124 Scalar
Z()
const {
return fZ; }
168 void SetXYZ(Scalar
x, Scalar
y, Scalar
z);
195 template <
class CoordSystem >
217 T x()
const {
return X();}
218 T y()
const {
return Y();}
219 T z()
const {
return Z(); }
225 #if defined(__MAKECINT__) || defined(G__DICTIONARY) 233 void SetEta(Scalar eta);
237 void SetTheta(Scalar theta);
256 #ifndef ROOT_Math_GenVector_Cartesian3D 260 #if defined(__MAKECINT__) || defined(G__DICTIONARY) 261 #ifndef ROOT_Math_GenVector_GenVector_exception 264 #ifndef ROOT_Math_GenVector_CylindricalEta3D 267 #ifndef ROOT_Math_GenVector_Polar3D 281 #if defined(__MAKECINT__) || defined(G__DICTIONARY)
void GetCoordinates(Scalar &rho, Scalar &zz, Scalar &phi) const
get internal data into 3 Scalar numbers ( rho, z , phi)
void SetX(Scalar xx)
set the x coordinate value keeping y and z constant
This namespace contains pre-defined functions to be used in conjuction with TExecutor::Map and TExecu...
Cylindrical3D(Scalar rho, Scalar zz, Scalar phi)
Construct from rho eta and phi values.
Cylindrical3D(const Cylindrical3D &v)
copy constructor
Class describing a cylindrical coordinate system based on eta (pseudorapidity) instead of z...
void SetPhi(T phi)
set the phi coordinate value keeping rho and z constant
Cylindrical3D(const CoordSystem &v)
Construct from any Vector or coordinate system implementing Rho(), Z() and Phi()
Cylindrical3D & operator=(const Cylindrical3D &v)
assignment operator
void SetR(const T &r)
set the r coordinate value keeping theta and phi constant
Class describing a cylindrical coordinate system based on rho, z and phi.
bool operator!=(const Cylindrical3D &rhs) const
void SetY(Scalar yy)
set the y coordinate value keeping x and z constant
void Negate()
negate the vector
void SetCoordinates(Scalar rho, Scalar zz, Scalar phi)
Set internal data based on 3 Scalar numbers ( rho, z , phi)
Cylindrical3D()
Default constructor with rho=z=phi=0.
void SetTheta(const T &theta)
set the theta coordinate value keeping r and phi constant
void SetXYZ(Scalar x, Scalar y, Scalar z)
set all values using cartesian coordinates
void SetRho(T rho)
set the rho coordinate value keeping z and phi constant
Scalar Eta_FromRhoZ(Scalar rho, Scalar z)
Calculate eta given rho and zeta.
void Scale(T a)
scale by a scalar quantity a – for cylindrical coords only rho and z change
void SetEta(T eta)
set the eta coordinate value keeping rho and phi constant
void SetCoordinates(const Scalar src[])
Set internal data based on an array of 3 Scalar numbers ( rho, z , phi)
void SetZ(T zz)
set the z coordinate value keeping rho and phi constant
double atan2(double, double)
you should not use this method at all Int_t Int_t Double_t Double_t Double_t e
bool operator==(const Cylindrical3D &rhs) const
Exact component-by-component equality.
Namespace for new Math classes and functions.
#define dest(otri, vertexptr)
void GetCoordinates(Scalar dest[]) const
get internal data into an array of 3 Scalar numbers ( rho, z , phi)
Class describing a polar coordinate system based on r, theta and phi Phi is restricted to be in the r...