Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T > Class Template Reference

template<class T>
class ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >

Class describing a cylindrical coordinate system based on eta (pseudorapidity) instead of z.

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

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

See also
Physics Vectors

Definition at line 52 of file CylindricalEta3D.h.

Public Types

typedefScalar
 

Public Member Functions

constexpr CylindricalEta3D () noexcept=default
 Default constructor with rho=eta=phi=0.
 
template<class CoordSystem >
 CylindricalEta3D (const CoordSystem &v)
 Construct from any Vector or coordinate system implementing Rho(), Eta() and Phi()
 
constexpr CylindricalEta3D (Scalar rho, Scalar eta, Scalar phi) noexcept
 Construct from rho eta and phi values.
 
Eta () const
 
void GetCoordinates (Scalar &rho, Scalar &eta, Scalar &phi) const
 get internal data into 3 Scalar numbers
 
void GetCoordinates (Scalar dest[]) const
 get internal data into an array of 3 Scalar numbers
 
Mag2 () const
 
void Negate ()
 negate the vector
 
bool operator!= (const CylindricalEta3D &rhs) const
 
template<class CoordSystem >
CylindricalEta3Doperator= (const CoordSystem &c)
 generic assignment operator from any coordinate system
 
bool operator== (const CylindricalEta3D &rhs) const
 Exact component-by-component equality Note: Peculiar representations of the zero vector such as (0,1,0) will not test as equal to one another.
 
Perp2 () const
 
Phi () const
 
R () const
 
Rho () const
 
void Scale (T a)
 scale by a scalar quantity a – for cylindrical eta coords, as long as a >= 0, only rho changes!
 
void SetCoordinates (const Scalar src[])
 Set internal data based on an array of 3 Scalar numbers.
 
void SetCoordinates (Scalar rho, Scalar eta, Scalar phi)
 Set internal data based on 3 Scalar numbers.
 
void SetEta (T eta)
 set the eta coordinate value keeping rho and phi constant
 
void SetPhi (T phi)
 set the phi coordinate value keeping rho and eta constant
 
void SetRho (T rho)
 set the rho coordinate value keeping eta and phi constant
 
void SetXYZ (Scalar x, Scalar y, Scalar z)
 set all values using cartesian coordinates
 
Theta () const
 
X () const
 
x () const
 
Y () const
 
y () const
 
Z () const
 
z () const
 

Private Member Functions

void Restrict ()
 

Static Private Member Functions

static Scalar pi ()
 

Private Attributes

fEta = 0
 
fPhi = 0
 
fRho = 0
 

#include <MathX/GenVectorX/CylindricalEta3D.h>

Member Typedef Documentation

◆ Scalar

Definition at line 55 of file CylindricalEta3D.h.

Constructor & Destructor Documentation

◆ CylindricalEta3D() [1/3]

template<class T >
constexpr ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::CylindricalEta3D ( )
constexprdefaultnoexcept

Default constructor with rho=eta=phi=0.

◆ CylindricalEta3D() [2/3]

template<class T >
constexpr ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::CylindricalEta3D ( Scalar rho,
Scalar eta,
Scalar phi )
inlineconstexprnoexcept

Construct from rho eta and phi values.

Definition at line 65 of file CylindricalEta3D.h.

◆ CylindricalEta3D() [3/3]

template<class T >
template<class CoordSystem >
ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::CylindricalEta3D ( const CoordSystem & v)
inlineexplicit

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

Definition at line 75 of file CylindricalEta3D.h.

Member Function Documentation

◆ Eta()

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::Eta ( ) const
inline

Definition at line 141 of file CylindricalEta3D.h.

◆ GetCoordinates() [1/2]

template<class T >
void ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::GetCoordinates ( Scalar & rho,
Scalar & eta,
Scalar & phi ) const
inline

get internal data into 3 Scalar numbers

Definition at line 121 of file CylindricalEta3D.h.

◆ GetCoordinates() [2/2]

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

get internal data into an array of 3 Scalar numbers

Definition at line 100 of file CylindricalEta3D.h.

◆ Mag2()

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::Mag2 ( ) const
inline

Definition at line 156 of file CylindricalEta3D.h.

◆ Negate()

template<class T >
void ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::Negate ( )
inline

negate the vector

Definition at line 214 of file CylindricalEta3D.h.

◆ operator!=()

Definition at line 242 of file CylindricalEta3D.h.

◆ operator=()

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

generic assignment operator from any coordinate system

Definition at line 225 of file CylindricalEta3D.h.

◆ operator==()

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

Exact component-by-component equality Note: Peculiar representations of the zero vector such as (0,1,0) will not test as equal to one another.

Definition at line 238 of file CylindricalEta3D.h.

◆ Perp2()

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::Perp2 ( ) const
inline

Definition at line 161 of file CylindricalEta3D.h.

◆ Phi()

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::Phi ( ) const
inline

Definition at line 142 of file CylindricalEta3D.h.

◆ pi()

template<class T >
static Scalar ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::pi ( )
inlinestaticprivate

Definition at line 129 of file CylindricalEta3D.h.

◆ R()

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::R ( ) const
inline

Definition at line 149 of file CylindricalEta3D.h.

◆ Restrict()

template<class T >
void ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::Restrict ( )
inlineprivate

Definition at line 130 of file CylindricalEta3D.h.

◆ Rho()

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::Rho ( ) const
inline

Definition at line 140 of file CylindricalEta3D.h.

◆ Scale()

template<class T >
void ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::Scale ( T a)
inline

scale by a scalar quantity a – for cylindrical eta coords, as long as a >= 0, only rho changes!

Definition at line 194 of file CylindricalEta3D.h.

◆ SetCoordinates() [1/2]

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

Set internal data based on an array of 3 Scalar numbers.

Definition at line 89 of file CylindricalEta3D.h.

◆ SetCoordinates() [2/2]

template<class T >
void ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::SetCoordinates ( Scalar rho,
Scalar eta,
Scalar phi )
inline

Set internal data based on 3 Scalar numbers.

Definition at line 110 of file CylindricalEta3D.h.

◆ SetEta()

template<class T >
void ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::SetEta ( T eta)
inline

set the eta coordinate value keeping rho and phi constant

Definition at line 174 of file CylindricalEta3D.h.

◆ SetPhi()

template<class T >
void ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::SetPhi ( T phi)
inline

set the phi coordinate value keeping rho and eta constant

Definition at line 179 of file CylindricalEta3D.h.

◆ SetRho()

template<class T >
void ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::SetRho ( T rho)
inline

set the rho coordinate value keeping eta and phi constant

Definition at line 169 of file CylindricalEta3D.h.

◆ SetXYZ()

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

set all values using cartesian coordinates

Definition at line 296 of file CylindricalEta3D.h.

◆ Theta()

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::Theta ( ) const
inline

Definition at line 162 of file CylindricalEta3D.h.

◆ X()

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::X ( ) const
inline

Definition at line 143 of file CylindricalEta3D.h.

◆ x()

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::x ( ) const
inline

Definition at line 248 of file CylindricalEta3D.h.

◆ Y()

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::Y ( ) const
inline

Definition at line 144 of file CylindricalEta3D.h.

◆ y()

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::y ( ) const
inline

Definition at line 249 of file CylindricalEta3D.h.

◆ Z()

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::Z ( ) const
inline

Definition at line 145 of file CylindricalEta3D.h.

◆ z()

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::z ( ) const
inline

Definition at line 250 of file CylindricalEta3D.h.

Member Data Documentation

◆ fEta

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::fEta = 0
private

Definition at line 274 of file CylindricalEta3D.h.

◆ fPhi

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::fPhi = 0
private

Definition at line 275 of file CylindricalEta3D.h.

◆ fRho

template<class T >
T ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >::fRho = 0
private

Definition at line 273 of file CylindricalEta3D.h.

  • math/experimental/genvectorx/inc/MathX/GenVectorX/CylindricalEta3D.h