Logo ROOT  
Reference Guide
ROOT::Math::Cylindrical3D< T > Class Template Reference

template<class T>
class ROOT::Math::Cylindrical3D< T >

Class describing a cylindrical coordinate system based on rho, z and phi.

Class describing a 3D Cylindrical Eta coordinate system (rho, z, phi coordinates)

The base coordinates are rho (transverse component) , z and phi Phi is restricted to be in the range [-PI,PI)

Definition at line 40 of file Cylindrical3D.h.

Public Types

typedef T Scalar
 

Public Member Functions

 Cylindrical3D ()
 Default constructor with rho=z=phi=0. More...
 
template<class CoordSystem >
 Cylindrical3D (const CoordSystem &v)
 Construct from any Vector or coordinate system implementing Rho(), Z() and Phi() More...
 
 Cylindrical3D (const Cylindrical3D &v)
 copy constructor More...
 
 Cylindrical3D (Scalar rho, Scalar zz, Scalar phi)
 Construct from rho eta and phi values. More...
 
Scalar Eta () const
 
void GetCoordinates (Scalar &rho, Scalar &zz, Scalar &phi) const
 get internal data into 3 Scalar numbers ( rho, z , phi) More...
 
void GetCoordinates (Scalar dest[]) const
 get internal data into an array of 3 Scalar numbers ( rho, z , phi) More...
 
Scalar Mag2 () const
 
void Negate ()
 negate the vector More...
 
bool operator!= (const Cylindrical3D &rhs) const
 
template<class CoordSystem >
Cylindrical3Doperator= (const CoordSystem &c)
 generic assignment operator from any coordinate system implementing Rho(), Z() and Phi() More...
 
Cylindrical3Doperator= (const Cylindrical3D &v)
 assignment operator More...
 
bool operator== (const Cylindrical3D &rhs) const
 Exact component-by-component equality. More...
 
Scalar Perp2 () const
 
Scalar Phi () const
 
Scalar R () const
 
Scalar Rho () const
 
void Scale (T a)
 scale by a scalar quantity a – for cylindrical coords only rho and z change More...
 
void SetCoordinates (const Scalar src[])
 Set internal data based on an array of 3 Scalar numbers ( rho, z , phi) More...
 
void SetCoordinates (Scalar rho, Scalar zz, Scalar phi)
 Set internal data based on 3 Scalar numbers ( rho, z , phi) More...
 
void SetPhi (T phi)
 set the phi coordinate value keeping rho and z constant More...
 
void SetRho (T rho)
 set the rho coordinate value keeping z and phi constant More...
 
void SetXYZ (Scalar x, Scalar y, Scalar z)
 set all values using cartesian coordinates More...
 
void SetZ (T zz)
 set the z coordinate value keeping rho and phi constant More...
 
Scalar Theta () const
 
Scalar X () const
 
x () const
 
Scalar Y () const
 
y () const
 
Scalar Z () const
 
z () const
 

Private Member Functions

void Restrict ()
 

Static Private Member Functions

static Scalar pi ()
 

Private Attributes

fPhi
 
fRho
 
fZ
 

#include <Math/GenVector/Cylindrical3D.h>

Member Typedef Documentation

◆ Scalar

template<class T >
typedef T ROOT::Math::Cylindrical3D< T >::Scalar

Definition at line 44 of file Cylindrical3D.h.

Constructor & Destructor Documentation

◆ Cylindrical3D() [1/4]

template<class T >
ROOT::Math::Cylindrical3D< T >::Cylindrical3D ( )
inline

Default constructor with rho=z=phi=0.

Definition at line 49 of file Cylindrical3D.h.

◆ Cylindrical3D() [2/4]

template<class T >
ROOT::Math::Cylindrical3D< T >::Cylindrical3D ( Scalar  rho,
Scalar  zz,
Scalar  phi 
)
inline

Construct from rho eta and phi values.

Definition at line 54 of file Cylindrical3D.h.

◆ Cylindrical3D() [3/4]

template<class T >
template<class CoordSystem >
ROOT::Math::Cylindrical3D< T >::Cylindrical3D ( const CoordSystem &  v)
inlineexplicit

Construct from any Vector or coordinate system implementing Rho(), Z() and Phi()

Definition at line 62 of file Cylindrical3D.h.

◆ Cylindrical3D() [4/4]

template<class T >
ROOT::Math::Cylindrical3D< T >::Cylindrical3D ( const Cylindrical3D< T > &  v)
inline

copy constructor

Definition at line 71 of file Cylindrical3D.h.

Member Function Documentation

◆ Eta()

template<class T >
Scalar ROOT::Math::Cylindrical3D< T >::Eta ( ) const
inline

Definition at line 131 of file Cylindrical3D.h.

◆ GetCoordinates() [1/2]

template<class T >
void ROOT::Math::Cylindrical3D< T >::GetCoordinates ( Scalar rho,
Scalar zz,
Scalar phi 
) const
inline

get internal data into 3 Scalar numbers ( rho, z , phi)

Definition at line 105 of file Cylindrical3D.h.

◆ GetCoordinates() [2/2]

template<class T >
void ROOT::Math::Cylindrical3D< T >::GetCoordinates ( Scalar  dest[]) const
inline

get internal data into an array of 3 Scalar numbers ( rho, z , phi)

Definition at line 93 of file Cylindrical3D.h.

◆ Mag2()

template<class T >
Scalar ROOT::Math::Cylindrical3D< T >::Mag2 ( ) const
inline

Definition at line 125 of file Cylindrical3D.h.

◆ Negate()

template<class T >
void ROOT::Math::Cylindrical3D< T >::Negate ( )
inline

negate the vector

Definition at line 181 of file Cylindrical3D.h.

◆ operator!=()

template<class T >
bool ROOT::Math::Cylindrical3D< T >::operator!= ( const Cylindrical3D< T > &  rhs) const
inline

Definition at line 204 of file Cylindrical3D.h.

◆ operator=() [1/2]

template<class T >
template<class CoordSystem >
Cylindrical3D & ROOT::Math::Cylindrical3D< T >::operator= ( const CoordSystem &  c)
inline

generic assignment operator from any coordinate system implementing Rho(), Z() and Phi()

Definition at line 191 of file Cylindrical3D.h.

◆ operator=() [2/2]

template<class T >
Cylindrical3D & ROOT::Math::Cylindrical3D< T >::operator= ( const Cylindrical3D< T > &  v)
inline

assignment operator

Definition at line 77 of file Cylindrical3D.h.

◆ operator==()

template<class T >
bool ROOT::Math::Cylindrical3D< T >::operator== ( const Cylindrical3D< T > &  rhs) const
inline

Exact component-by-component equality.

Definition at line 201 of file Cylindrical3D.h.

◆ Perp2()

template<class T >
Scalar ROOT::Math::Cylindrical3D< T >::Perp2 ( ) const
inline

Definition at line 127 of file Cylindrical3D.h.

◆ Phi()

template<class T >
Scalar ROOT::Math::Cylindrical3D< T >::Phi ( ) const
inline

Definition at line 120 of file Cylindrical3D.h.

◆ pi()

template<class T >
static Scalar ROOT::Math::Cylindrical3D< T >::pi ( )
inlinestaticprivate

Definition at line 109 of file Cylindrical3D.h.

◆ R()

template<class T >
Scalar ROOT::Math::Cylindrical3D< T >::R ( ) const
inline

Definition at line 126 of file Cylindrical3D.h.

◆ Restrict()

template<class T >
void ROOT::Math::Cylindrical3D< T >::Restrict ( )
inlineprivate

Definition at line 110 of file Cylindrical3D.h.

◆ Rho()

template<class T >
Scalar ROOT::Math::Cylindrical3D< T >::Rho ( ) const
inline

Definition at line 118 of file Cylindrical3D.h.

◆ Scale()

template<class T >
void ROOT::Math::Cylindrical3D< T >::Scale ( a)
inline

scale by a scalar quantity a – for cylindrical coords only rho and z change

Definition at line 169 of file Cylindrical3D.h.

◆ SetCoordinates() [1/2]

template<class T >
void ROOT::Math::Cylindrical3D< T >::SetCoordinates ( const Scalar  src[])
inline

Set internal data based on an array of 3 Scalar numbers ( rho, z , phi)

Definition at line 87 of file Cylindrical3D.h.

◆ SetCoordinates() [2/2]

template<class T >
void ROOT::Math::Cylindrical3D< T >::SetCoordinates ( Scalar  rho,
Scalar  zz,
Scalar  phi 
)
inline

Set internal data based on 3 Scalar numbers ( rho, z , phi)

Definition at line 99 of file Cylindrical3D.h.

◆ SetPhi()

template<class T >
void ROOT::Math::Cylindrical3D< T >::SetPhi ( phi)
inline

set the phi coordinate value keeping rho and z constant

Definition at line 155 of file Cylindrical3D.h.

◆ SetRho()

template<class T >
void ROOT::Math::Cylindrical3D< T >::SetRho ( rho)
inline

set the rho coordinate value keeping z and phi constant

Definition at line 141 of file Cylindrical3D.h.

◆ SetXYZ()

template<class T >
void ROOT::Math::Cylindrical3D< T >::SetXYZ ( Scalar  x,
Scalar  y,
Scalar  z 
)

set all values using cartesian coordinates

Definition at line 264 of file Cylindrical3D.h.

◆ SetZ()

template<class T >
void ROOT::Math::Cylindrical3D< T >::SetZ ( zz)
inline

set the z coordinate value keeping rho and phi constant

Definition at line 148 of file Cylindrical3D.h.

◆ Theta()

template<class T >
Scalar ROOT::Math::Cylindrical3D< T >::Theta ( ) const
inline

Definition at line 128 of file Cylindrical3D.h.

◆ X()

template<class T >
Scalar ROOT::Math::Cylindrical3D< T >::X ( ) const
inline

Definition at line 122 of file Cylindrical3D.h.

◆ x()

template<class T >
T ROOT::Math::Cylindrical3D< T >::x ( ) const
inline

Definition at line 212 of file Cylindrical3D.h.

◆ Y()

template<class T >
Scalar ROOT::Math::Cylindrical3D< T >::Y ( ) const
inline

Definition at line 123 of file Cylindrical3D.h.

◆ y()

template<class T >
T ROOT::Math::Cylindrical3D< T >::y ( ) const
inline

Definition at line 213 of file Cylindrical3D.h.

◆ Z()

template<class T >
Scalar ROOT::Math::Cylindrical3D< T >::Z ( ) const
inline

Definition at line 119 of file Cylindrical3D.h.

◆ z()

template<class T >
T ROOT::Math::Cylindrical3D< T >::z ( ) const
inline

Definition at line 214 of file Cylindrical3D.h.

Member Data Documentation

◆ fPhi

template<class T >
T ROOT::Math::Cylindrical3D< T >::fPhi
private

Definition at line 241 of file Cylindrical3D.h.

◆ fRho

template<class T >
T ROOT::Math::Cylindrical3D< T >::fRho
private

Definition at line 239 of file Cylindrical3D.h.

◆ fZ

template<class T >
T ROOT::Math::Cylindrical3D< T >::fZ
private

Definition at line 240 of file Cylindrical3D.h.


The documentation for this class was generated from the following file: