19 #ifndef ROOT_Math_GenVector_Polar3D 20 #define ROOT_Math_GenVector_Polar3D 1 22 #ifndef ROOT_Math_Math 26 #ifndef ROOT_Math_GenVector_eta 66 template <
class CoordSystem >
113 Scalar
R()
const {
return fR;}
157 void SetXYZ(Scalar
x, Scalar
y, Scalar
z);
161 inline static Scalar
pi() {
return M_PI; }
194 template <
class CoordSystem >
215 T x()
const {
return X();}
216 T y()
const {
return Y();}
217 T z()
const {
return Z(); }
223 #if defined(__MAKECINT__) || defined(G__DICTIONARY) 233 void SetRho(Scalar rho);
235 void SetEta(Scalar eta);
253 #ifndef ROOT_Math_GenVector_Cartesian3D 257 #if defined(__MAKECINT__) || defined(G__DICTIONARY) 258 #ifndef ROOT_Math_GenVector_GenVector_exception 261 #ifndef ROOT_Math_GenVector_CylindricalEta3D 276 #if defined(__MAKECINT__) || defined(G__DICTIONARY) void SetXYZ(Scalar x, Scalar y, Scalar z)
set all values using cartesian coordinates
void SetX(Scalar xx)
set the x coordinate value keeping y and z constant
Polar3D(const Polar3D &v)
copy constructor
This namespace contains pre-defined functions to be used in conjuction with TExecutor::Map and TExecu...
Polar3D & operator=(const Polar3D &v)
assignment operator
void GetCoordinates(Scalar &r, Scalar &theta, Scalar &phi) const
get internal data into 3 Scalar numbers
void Scale(T a)
scale by a scalar quantity - for polar coordinates r changes
Class describing a cylindrical coordinate system based on eta (pseudorapidity) instead of z...
Polar3D(const CoordSystem &v)
Construct from any Vector or coordinate system implementing R(), Theta() and Phi() ...
void SetR(const T &r)
set the r coordinate value keeping theta and phi constant
void GetCoordinates(Scalar dest[]) const
get internal data into an array of 3 Scalar numbers
void SetCoordinates(const Scalar src[])
Set internal data based on an array of 3 Scalar numbers.
void SetY(Scalar yy)
set the y coordinate value keeping x and z constant
Scalar Eta_FromTheta(Scalar theta, Scalar r)
Implementation of eta from -log(tan(theta/2)).
void SetTheta(const T &theta)
set the theta coordinate value keeping r and phi constant
void SetCoordinates(Scalar r, Scalar theta, Scalar phi)
Set internal data based on 3 Scalar numbers.
void SetZ(Scalar zz)
set the z coordinate value keeping x and y constant
void SetRho(T rho)
set the rho coordinate value keeping eta and phi constant
void Negate()
negate the vector
void SetEta(T eta)
set the eta coordinate value keeping rho and phi constant
Polar3D()
Default constructor with r=theta=phi=0.
you should not use this method at all Int_t Int_t Double_t Double_t Double_t e
Namespace for new Math classes and functions.
void SetPhi(const T &phi)
set the phi coordinate value keeping r and theta constant
#define dest(otri, vertexptr)
bool operator==(const Polar3D &rhs) const
Exact equality.
bool operator!=(const Polar3D &rhs) const
Polar3D(T r, T theta, T phi)
Construct from the polar coordinates: r, theta and phi.
Class describing a polar coordinate system based on r, theta and phi Phi is restricted to be in the r...