Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::Math::PtEtaPhiE4D< ScalarType > Class Template Reference

template<class ScalarType>
class ROOT::Math::PtEtaPhiE4D< ScalarType >

Class describing a 4D cylindrical coordinate system using Pt , Phi, Eta and E (or rho, phi, eta , T) The metric used is (-,-,-,+).

Phi is restricted to be in the range [-PI,PI)

See also
Physics Vectors

Definition at line 54 of file PtEtaPhiE4D.h.

Public Types

typedef ScalarType Scalar
 

Public Member Functions

constexpr PtEtaPhiE4D () noexcept=default
 Default constructor gives zero 4-vector.
 
template<class CoordSystem >
constexpr PtEtaPhiE4D (const CoordSystem &c)
 Generic constructor from any 4D coordinate system implementing Pt(), Eta(), Phi() and E()
 
constexpr PtEtaPhiE4D (Scalar pt, Scalar eta, Scalar phi, Scalar e) noexcept
 Constructor from pt, eta, phi, e values.
 
Scalar E () const
 
Scalar Et () const
 transverse energy
 
Scalar Et2 () const
 transverse energy squared
 
Scalar Eta () const
 
void GetCoordinates (Scalar &pt, Scalar &eta, Scalar &phi, Scalar &e) const
 get internal data into 4 Scalar numbers
 
void GetCoordinates (Scalar dest[]) const
 get internal data into an array of 4 Scalar numbers
 
Scalar M () const
 invariant mass
 
Scalar M2 () const
 vector magnitude squared (or mass squared)
 
Scalar Mag () const
 
Scalar Mag2 () const
 
Scalar Mt () const
 transverse mass
 
Scalar Mt2 () const
 transverse mass squared
 
void Negate ()
 negate the 4-vector
 
bool operator!= (const PtEtaPhiE4D &rhs) const
 
template<class CoordSystem >
PtEtaPhiE4Doperator= (const CoordSystem &c)
 Assignment from a generic coordinate system implementing Pt(), Eta(), Phi() and E()
 
bool operator== (const PtEtaPhiE4D &rhs) const
 Exact equality.
 
Scalar P () const
 magnitude of momentum
 
Scalar P2 () const
 squared magnitude of spatial components (momentum squared)
 
Scalar Perp () const
 
Scalar Perp2 () const
 
Scalar Phi () const
 
Scalar Pt () const
 
Scalar Pt2 () const
 transverse spatial component squared
 
Scalar Px () const
 
Scalar Py () const
 
Scalar Pz () const
 
Scalar R () const
 
Scalar Rho () const
 
void Scale (Scalar a)
 Scale coordinate values by a scalar quantity a.
 
void SetCoordinates (const Scalar src[])
 Set internal data based on an array of 4 Scalar numbers.
 
void SetCoordinates (Scalar pt, Scalar eta, Scalar phi, Scalar e)
 Set internal data based on 4 Scalar numbers.
 
void SetE (Scalar e)
 set E value
 
void SetEta (Scalar eta)
 set eta value
 
void SetPhi (Scalar phi)
 set phi value
 
void SetPt (Scalar pt)
 set Pt value
 
void SetPxPyPzE (Scalar px, Scalar py, Scalar pz, Scalar e)
 set values using cartesian coordinate system
 
Scalar T () const
 
Scalar t () const
 
Scalar Theta () const
 polar angle
 
Scalar X () const
 
Scalar x () const
 
Scalar Y () const
 
Scalar y () const
 
Scalar Z () const
 
Scalar z () const
 

Static Public Attributes

static constexpr unsigned int Dimension = 4U
 

Private Member Functions

void Restrict ()
 

Static Private Member Functions

static Scalar pi ()
 

Private Attributes

ScalarType fE = 0.
 
ScalarType fEta = 0.
 
ScalarType fPhi = 0.
 
ScalarType fPt = 0.
 

#include <Math/GenVector/PtEtaPhiE4D.h>

Member Typedef Documentation

◆ Scalar

template<class ScalarType >
typedef ScalarType ROOT::Math::PtEtaPhiE4D< ScalarType >::Scalar

Definition at line 58 of file PtEtaPhiE4D.h.

Constructor & Destructor Documentation

◆ PtEtaPhiE4D() [1/3]

template<class ScalarType >
constexpr ROOT::Math::PtEtaPhiE4D< ScalarType >::PtEtaPhiE4D ( )
constexprdefaultnoexcept

Default constructor gives zero 4-vector.

◆ PtEtaPhiE4D() [2/3]

template<class ScalarType >
constexpr ROOT::Math::PtEtaPhiE4D< ScalarType >::PtEtaPhiE4D ( Scalar pt,
Scalar eta,
Scalar phi,
Scalar e )
inlineconstexprnoexcept

Constructor from pt, eta, phi, e values.

Definition at line 71 of file PtEtaPhiE4D.h.

◆ PtEtaPhiE4D() [3/3]

template<class ScalarType >
template<class CoordSystem >
constexpr ROOT::Math::PtEtaPhiE4D< ScalarType >::PtEtaPhiE4D ( const CoordSystem & c)
inlineexplicitconstexpr

Generic constructor from any 4D coordinate system implementing Pt(), Eta(), Phi() and E()

Definition at line 81 of file PtEtaPhiE4D.h.

Member Function Documentation

◆ E()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::E ( ) const
inline

Definition at line 116 of file PtEtaPhiE4D.h.

◆ Et()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Et ( ) const
inline

transverse energy

transverse energy

Definition at line 214 of file PtEtaPhiE4D.h.

◆ Et2()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Et2 ( ) const
inline

transverse energy squared

Definition at line 222 of file PtEtaPhiE4D.h.

◆ Eta()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Eta ( ) const
inline

Definition at line 114 of file PtEtaPhiE4D.h.

◆ GetCoordinates() [1/2]

template<class ScalarType >
void ROOT::Math::PtEtaPhiE4D< ScalarType >::GetCoordinates ( Scalar & pt,
Scalar & eta,
Scalar & phi,
Scalar & e ) const
inline

get internal data into 4 Scalar numbers

Definition at line 106 of file PtEtaPhiE4D.h.

◆ GetCoordinates() [2/2]

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

get internal data into an array of 4 Scalar numbers

Definition at line 93 of file PtEtaPhiE4D.h.

◆ M()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::M ( ) const
inline

invariant mass

Definition at line 167 of file PtEtaPhiE4D.h.

◆ M2()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::M2 ( ) const
inline

vector magnitude squared (or mass squared)

Definition at line 157 of file PtEtaPhiE4D.h.

◆ Mag()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Mag ( ) const
inline

Definition at line 179 of file PtEtaPhiE4D.h.

◆ Mag2()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Mag2 ( ) const
inline

Definition at line 162 of file PtEtaPhiE4D.h.

◆ Mt()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Mt ( ) const
inline

transverse mass

Definition at line 195 of file PtEtaPhiE4D.h.

◆ Mt2()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Mt2 ( ) const
inline

transverse mass squared

Definition at line 190 of file PtEtaPhiE4D.h.

◆ Negate()

template<class ScalarType >
void ROOT::Math::PtEtaPhiE4D< ScalarType >::Negate ( )
inline

negate the 4-vector

Definition at line 280 of file PtEtaPhiE4D.h.

◆ operator!=()

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

Definition at line 317 of file PtEtaPhiE4D.h.

◆ operator=()

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

Assignment from a generic coordinate system implementing Pt(), Eta(), Phi() and E()

Definition at line 302 of file PtEtaPhiE4D.h.

◆ operator==()

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

Exact equality.

Definition at line 313 of file PtEtaPhiE4D.h.

◆ P()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::P ( ) const
inline

magnitude of momentum

Definition at line 137 of file PtEtaPhiE4D.h.

◆ P2()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::P2 ( ) const
inline

squared magnitude of spatial components (momentum squared)

Definition at line 148 of file PtEtaPhiE4D.h.

◆ Perp()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Perp ( ) const
inline

Definition at line 118 of file PtEtaPhiE4D.h.

◆ Perp2()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Perp2 ( ) const
inline

Definition at line 185 of file PtEtaPhiE4D.h.

◆ Phi()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Phi ( ) const
inline

Definition at line 115 of file PtEtaPhiE4D.h.

◆ pi()

template<class ScalarType >
static Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::pi ( )
inlinestaticprivate

Definition at line 229 of file PtEtaPhiE4D.h.

◆ Pt()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Pt ( ) const
inline

Definition at line 113 of file PtEtaPhiE4D.h.

◆ Pt2()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Pt2 ( ) const
inline

transverse spatial component squared

Definition at line 184 of file PtEtaPhiE4D.h.

◆ Px()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Px ( ) const
inline

Definition at line 124 of file PtEtaPhiE4D.h.

◆ Py()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Py ( ) const
inline

Definition at line 126 of file PtEtaPhiE4D.h.

◆ Pz()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Pz ( ) const
inline

Definition at line 128 of file PtEtaPhiE4D.h.

◆ R()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::R ( ) const
inline

Definition at line 143 of file PtEtaPhiE4D.h.

◆ Restrict()

template<class ScalarType >
void ROOT::Math::PtEtaPhiE4D< ScalarType >::Restrict ( )
inlineprivate

Definition at line 230 of file PtEtaPhiE4D.h.

◆ Rho()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Rho ( ) const
inline

Definition at line 119 of file PtEtaPhiE4D.h.

◆ Scale()

template<class ScalarType >
void ROOT::Math::PtEtaPhiE4D< ScalarType >::Scale ( Scalar a)
inline

Scale coordinate values by a scalar quantity a.

Definition at line 289 of file PtEtaPhiE4D.h.

◆ SetCoordinates() [1/2]

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

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

Definition at line 87 of file PtEtaPhiE4D.h.

◆ SetCoordinates() [2/2]

template<class ScalarType >
void ROOT::Math::PtEtaPhiE4D< ScalarType >::SetCoordinates ( Scalar pt,
Scalar eta,
Scalar phi,
Scalar e )
inline

Set internal data based on 4 Scalar numbers.

Definition at line 99 of file PtEtaPhiE4D.h.

◆ SetE()

template<class ScalarType >
void ROOT::Math::PtEtaPhiE4D< ScalarType >::SetE ( Scalar e)
inline

set E value

Definition at line 265 of file PtEtaPhiE4D.h.

◆ SetEta()

template<class ScalarType >
void ROOT::Math::PtEtaPhiE4D< ScalarType >::SetEta ( Scalar eta)
inline

set eta value

Definition at line 252 of file PtEtaPhiE4D.h.

◆ SetPhi()

template<class ScalarType >
void ROOT::Math::PtEtaPhiE4D< ScalarType >::SetPhi ( Scalar phi)
inline

set phi value

Definition at line 258 of file PtEtaPhiE4D.h.

◆ SetPt()

template<class ScalarType >
void ROOT::Math::PtEtaPhiE4D< ScalarType >::SetPt ( Scalar pt)
inline

set Pt value

Definition at line 246 of file PtEtaPhiE4D.h.

◆ SetPxPyPzE()

template<class ScalarType >
void ROOT::Math::PtEtaPhiE4D< ScalarType >::SetPxPyPzE ( Scalar px,
Scalar py,
Scalar pz,
Scalar e )
inline

set values using cartesian coordinate system

Definition at line 368 of file PtEtaPhiE4D.h.

◆ T()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::T ( ) const
inline

Definition at line 120 of file PtEtaPhiE4D.h.

◆ t()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::t ( ) const
inline

Definition at line 326 of file PtEtaPhiE4D.h.

◆ Theta()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Theta ( ) const
inline

polar angle

Definition at line 239 of file PtEtaPhiE4D.h.

◆ X()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::X ( ) const
inline

Definition at line 125 of file PtEtaPhiE4D.h.

◆ x()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::x ( ) const
inline

Definition at line 323 of file PtEtaPhiE4D.h.

◆ Y()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Y ( ) const
inline

Definition at line 127 of file PtEtaPhiE4D.h.

◆ y()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::y ( ) const
inline

Definition at line 324 of file PtEtaPhiE4D.h.

◆ Z()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::Z ( ) const
inline

Definition at line 132 of file PtEtaPhiE4D.h.

◆ z()

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiE4D< ScalarType >::z ( ) const
inline

Definition at line 325 of file PtEtaPhiE4D.h.

Member Data Documentation

◆ Dimension

template<class ScalarType >
constexpr unsigned int ROOT::Math::PtEtaPhiE4D< ScalarType >::Dimension = 4U
staticconstexpr

Definition at line 59 of file PtEtaPhiE4D.h.

◆ fE

template<class ScalarType >
ScalarType ROOT::Math::PtEtaPhiE4D< ScalarType >::fE = 0.
private

Definition at line 348 of file PtEtaPhiE4D.h.

◆ fEta

template<class ScalarType >
ScalarType ROOT::Math::PtEtaPhiE4D< ScalarType >::fEta = 0.
private

Definition at line 346 of file PtEtaPhiE4D.h.

◆ fPhi

template<class ScalarType >
ScalarType ROOT::Math::PtEtaPhiE4D< ScalarType >::fPhi = 0.
private

Definition at line 347 of file PtEtaPhiE4D.h.

◆ fPt

template<class ScalarType >
ScalarType ROOT::Math::PtEtaPhiE4D< ScalarType >::fPt = 0.
private

Definition at line 345 of file PtEtaPhiE4D.h.

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