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

template<class T>
class ROOT::Math::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 48 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
 

Static Public Attributes

static constexpr unsigned int Dimension = 3U
 

Private Member Functions

void Restrict ()
 

Static Private Member Functions

static Scalar pi ()
 

Private Attributes

fEta = 0
 
fPhi = 0
 
fRho = 0
 

#include <Math/GenVector/CylindricalEta3D.h>

Member Typedef Documentation

◆ Scalar

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

Definition at line 52 of file CylindricalEta3D.h.

Constructor & Destructor Documentation

◆ CylindricalEta3D() [1/3]

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

Default constructor with rho=eta=phi=0.

◆ CylindricalEta3D() [2/3]

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

Construct from rho eta and phi values.

Definition at line 63 of file CylindricalEta3D.h.

◆ CylindricalEta3D() [3/3]

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

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

Definition at line 73 of file CylindricalEta3D.h.

Member Function Documentation

◆ Eta()

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

Definition at line 122 of file CylindricalEta3D.h.

◆ GetCoordinates() [1/2]

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

get internal data into 3 Scalar numbers

Definition at line 107 of file CylindricalEta3D.h.

◆ GetCoordinates() [2/2]

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

get internal data into an array of 3 Scalar numbers

Definition at line 95 of file CylindricalEta3D.h.

◆ Mag2()

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

Definition at line 137 of file CylindricalEta3D.h.

◆ Negate()

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

negate the vector

Definition at line 199 of file CylindricalEta3D.h.

◆ operator!=()

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

Definition at line 224 of file CylindricalEta3D.h.

◆ operator=()

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

generic assignment operator from any coordinate system

Definition at line 209 of file CylindricalEta3D.h.

◆ operator==()

template<class T >
bool ROOT::Math::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 221 of file CylindricalEta3D.h.

◆ Perp2()

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

Definition at line 142 of file CylindricalEta3D.h.

◆ Phi()

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

Definition at line 123 of file CylindricalEta3D.h.

◆ pi()

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

Definition at line 111 of file CylindricalEta3D.h.

◆ R()

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

Definition at line 131 of file CylindricalEta3D.h.

◆ Restrict()

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

Definition at line 112 of file CylindricalEta3D.h.

◆ Rho()

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

Definition at line 121 of file CylindricalEta3D.h.

◆ Scale()

template<class T >
void ROOT::Math::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 180 of file CylindricalEta3D.h.

◆ SetCoordinates() [1/2]

template<class T >
void ROOT::Math::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::Math::CylindricalEta3D< T >::SetCoordinates ( Scalar rho,
Scalar eta,
Scalar phi )
inline

Set internal data based on 3 Scalar numbers.

Definition at line 101 of file CylindricalEta3D.h.

◆ SetEta()

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

set the eta coordinate value keeping rho and phi constant

Definition at line 158 of file CylindricalEta3D.h.

◆ SetPhi()

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

set the phi coordinate value keeping rho and eta constant

Definition at line 165 of file CylindricalEta3D.h.

◆ SetRho()

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

set the rho coordinate value keeping eta and phi constant

Definition at line 151 of file CylindricalEta3D.h.

◆ SetXYZ()

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

set all values using cartesian coordinates

Definition at line 282 of file CylindricalEta3D.h.

◆ Theta()

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

Definition at line 143 of file CylindricalEta3D.h.

◆ X()

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

Definition at line 124 of file CylindricalEta3D.h.

◆ x()

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

Definition at line 232 of file CylindricalEta3D.h.

◆ Y()

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

Definition at line 125 of file CylindricalEta3D.h.

◆ y()

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

Definition at line 233 of file CylindricalEta3D.h.

◆ Z()

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

Definition at line 126 of file CylindricalEta3D.h.

◆ z()

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

Definition at line 234 of file CylindricalEta3D.h.

Member Data Documentation

◆ Dimension

template<class T >
constexpr unsigned int ROOT::Math::CylindricalEta3D< T >::Dimension = 3U
staticconstexpr

Definition at line 53 of file CylindricalEta3D.h.

◆ fEta

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

Definition at line 259 of file CylindricalEta3D.h.

◆ fPhi

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

Definition at line 260 of file CylindricalEta3D.h.

◆ fRho

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

Definition at line 258 of file CylindricalEta3D.h.

  • math/genvector/inc/Math/GenVector/CylindricalEta3D.h