ROOT  6.06/09
Reference Guide
Public Types | Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
ROOT::Math::PtEtaPhiM4D< ScalarType > Class Template Reference

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

Class describing a 4D cylindrical coordinate system using Pt , Phi, Eta and M (mass) The metric used is (-,-,-,+).

Spacelike particles (M2 < 0) are described with negative mass values, but in this case m2 must alwasy be less than P2 to preserve a positive value of E2 Phi is restricted to be in the range [-PI,PI)

Definition at line 56 of file PtEtaPhiM4D.h.

Public Types

typedef ScalarType Scalar
 

Public Member Functions

 PtEtaPhiM4D ()
 Default constructor gives zero 4-vector (with zero mass) More...
 
 PtEtaPhiM4D (Scalar pt, Scalar eta, Scalar phi, Scalar mass)
 Constructor from pt, eta, phi, mass values. More...
 
template<class CoordSystem >
 PtEtaPhiM4D (const CoordSystem &c)
 Generic constructor from any 4D coordinate system implementing Pt(), Eta(), Phi() and M() More...
 
 PtEtaPhiM4D (const PtEtaPhiM4D &v)
 copy constructor More...
 
PtEtaPhiM4Doperator= (const PtEtaPhiM4D &v)
 assignment operator More...
 
void SetCoordinates (const Scalar src[])
 Set internal data based on an array of 4 Scalar numbers. More...
 
void GetCoordinates (Scalar dest[]) const
 get internal data into an array of 4 Scalar numbers More...
 
void SetCoordinates (Scalar pt, Scalar eta, Scalar phi, Scalar mass)
 Set internal data based on 4 Scalar numbers. More...
 
void GetCoordinates (Scalar &pt, Scalar &eta, Scalar &phi, Scalar &mass) const
 get internal data into 4 Scalar numbers More...
 
Scalar Pt () const
 
Scalar Eta () const
 
Scalar Phi () const
 
Scalar M () const
 M() is the invariant mass; in this coordinate system it can be negagative if set that way. More...
 
Scalar Mag () const
 
Scalar Perp () const
 
Scalar Rho () const
 
Scalar Px () const
 
Scalar X () const
 
Scalar Py () const
 
Scalar Y () const
 
Scalar Pz () const
 
Scalar Z () const
 
Scalar P () const
 magnitude of momentum More...
 
Scalar R () const
 
Scalar P2 () const
 squared magnitude of spatial components (momentum squared) More...
 
Scalar E2 () const
 energy squared More...
 
Scalar E () const
 Energy (timelike component of momentum-energy 4-vector) More...
 
Scalar T () const
 
Scalar M2 () const
 vector magnitude squared (or mass squared) In case of negative mass (spacelike particles return negative values) More...
 
Scalar Mag2 () const
 
Scalar Pt2 () const
 transverse spatial component squared More...
 
Scalar Perp2 () const
 
Scalar Mt2 () const
 transverse mass squared More...
 
Scalar Mt () const
 transverse mass - will be negative if Mt2() is negative More...
 
Scalar Et2 () const
 transverse energy squared More...
 
Scalar Et () const
 transverse energy More...
 
Scalar Theta () const
 polar angle More...
 
void SetPt (Scalar pt)
 set Pt value More...
 
void SetEta (Scalar eta)
 set eta value More...
 
void SetPhi (Scalar phi)
 set phi value More...
 
void SetM (Scalar mass)
 set M value More...
 
void SetPxPyPzE (Scalar px, Scalar py, Scalar pz, Scalar e)
 set values using cartesian coordinate system More...
 
void Negate ()
 negate the 4-vector – Note that the energy cannot be negate (would need an additional data member) therefore negate will work only on the spatial components One would need to use negate only with vectors having the energy as data members More...
 
void Scale (Scalar a)
 Scale coordinate values by a scalar quantity a. More...
 
template<class CoordSystem >
PtEtaPhiM4Doperator= (const CoordSystem &c)
 Assignment from a generic coordinate system implementing Pt(), Eta(), Phi() and M() More...
 
bool operator== (const PtEtaPhiM4D &rhs) const
 Exact equality. More...
 
bool operator!= (const PtEtaPhiM4D &rhs) const
 
Scalar x () const
 
Scalar y () const
 
Scalar z () const
 
Scalar t () const
 

Private Member Functions

void RestrictPhi ()
 
void RestrictNegMass ()
 

Static Private Member Functions

static Scalar pi ()
 

Private Attributes

ScalarType fPt
 
ScalarType fEta
 
ScalarType fPhi
 
ScalarType fM
 

#include <Math/GenVector/PtEtaPhiM4D.h>

Member Typedef Documentation

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

Definition at line 60 of file PtEtaPhiM4D.h.

Constructor & Destructor Documentation

template<class ScalarType >
ROOT::Math::PtEtaPhiM4D< ScalarType >::PtEtaPhiM4D ( )
inline

Default constructor gives zero 4-vector (with zero mass)

Definition at line 67 of file PtEtaPhiM4D.h.

template<class ScalarType >
ROOT::Math::PtEtaPhiM4D< ScalarType >::PtEtaPhiM4D ( Scalar  pt,
Scalar  eta,
Scalar  phi,
Scalar  mass 
)
inline

Constructor from pt, eta, phi, mass values.

Definition at line 72 of file PtEtaPhiM4D.h.

template<class ScalarType >
template<class CoordSystem >
ROOT::Math::PtEtaPhiM4D< ScalarType >::PtEtaPhiM4D ( const CoordSystem &  c)
inlineexplicit

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

Definition at line 83 of file PtEtaPhiM4D.h.

template<class ScalarType >
ROOT::Math::PtEtaPhiM4D< ScalarType >::PtEtaPhiM4D ( const PtEtaPhiM4D< ScalarType > &  v)
inline

copy constructor

Definition at line 92 of file PtEtaPhiM4D.h.

Member Function Documentation

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

Energy (timelike component of momentum-energy 4-vector)

Definition at line 197 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::Et(), ROOT::Math::PtEtaPhiM4D< ScalarType >::T(), and ROOT::Math::PtEtaPhiM4D< ScalarType >::t().

template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiM4D< ScalarType >::E2 ( ) const
inline

energy squared

Definition at line 188 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::E(), and ROOT::Math::PtEtaPhiM4D< ScalarType >::Et2().

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

transverse energy

Definition at line 246 of file PtEtaPhiM4D.h.

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

transverse energy squared

Definition at line 238 of file PtEtaPhiM4D.h.

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

Definition at line 143 of file PtEtaPhiM4D.h.

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

get internal data into an array of 4 Scalar numbers

Definition at line 119 of file PtEtaPhiM4D.h.

template<class ScalarType >
void ROOT::Math::PtEtaPhiM4D< ScalarType >::GetCoordinates ( Scalar pt,
Scalar eta,
Scalar phi,
Scalar mass 
) const
inline

get internal data into 4 Scalar numbers

Definition at line 135 of file PtEtaPhiM4D.h.

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

M() is the invariant mass; in this coordinate system it can be negagative if set that way.

Definition at line 149 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::Mag().

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

vector magnitude squared (or mass squared) In case of negative mass (spacelike particles return negative values)

Definition at line 205 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::E2(), ROOT::Math::PtEtaPhiM4D< ScalarType >::Mag2(), and ROOT::Math::PtEtaPhiM4D< ScalarType >::Mt2().

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

Definition at line 150 of file PtEtaPhiM4D.h.

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

Definition at line 208 of file PtEtaPhiM4D.h.

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

transverse mass - will be negative if Mt2() is negative

Definition at line 224 of file PtEtaPhiM4D.h.

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

transverse mass squared

Definition at line 219 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::Mt().

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

negate the 4-vector – Note that the energy cannot be negate (would need an additional data member) therefore negate will work only on the spatial components One would need to use negate only with vectors having the energy as data members

Definition at line 321 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::Scale().

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

Definition at line 358 of file PtEtaPhiM4D.h.

template<class ScalarType >
PtEtaPhiM4D& ROOT::Math::PtEtaPhiM4D< ScalarType >::operator= ( const PtEtaPhiM4D< ScalarType > &  v)
inline

assignment operator

Definition at line 98 of file PtEtaPhiM4D.h.

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

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

Definition at line 343 of file PtEtaPhiM4D.h.

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

Exact equality.

Definition at line 354 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::operator!=().

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

squared magnitude of spatial components (momentum squared)

Definition at line 183 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::E2(), and ROOT::Math::PtEtaPhiM4D< ScalarType >::RestrictNegMass().

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

Definition at line 152 of file PtEtaPhiM4D.h.

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

Definition at line 214 of file PtEtaPhiM4D.h.

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

Definition at line 144 of file PtEtaPhiM4D.h.

template<class ScalarType >
static Scalar ROOT::Math::PtEtaPhiM4D< ScalarType >::pi ( )
inlinestaticprivate
template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiM4D< ScalarType >::Pt ( ) const
inline
template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiM4D< ScalarType >::Pt2 ( ) const
inline

transverse spatial component squared

Definition at line 213 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::Perp2().

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

Definition at line 157 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::X().

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

Definition at line 159 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::Y().

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

Definition at line 161 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::Z().

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

Definition at line 178 of file PtEtaPhiM4D.h.

template<class ScalarType >
void ROOT::Math::PtEtaPhiM4D< ScalarType >::RestrictNegMass ( )
inlineprivate
template<class ScalarType >
void ROOT::Math::PtEtaPhiM4D< ScalarType >::RestrictPhi ( )
inlineprivate
template<class ScalarType >
Scalar ROOT::Math::PtEtaPhiM4D< ScalarType >::Rho ( ) const
inline

Definition at line 153 of file PtEtaPhiM4D.h.

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

Scale coordinate values by a scalar quantity a.

Definition at line 330 of file PtEtaPhiM4D.h.

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

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

Definition at line 110 of file PtEtaPhiM4D.h.

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

Set internal data based on 4 Scalar numbers.

Definition at line 125 of file PtEtaPhiM4D.h.

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

set eta value

Definition at line 290 of file PtEtaPhiM4D.h.

template<class ScalarType >
void ROOT::Math::PtEtaPhiM4D< ScalarType >::SetM ( Scalar  mass)
inline

set M value

Definition at line 303 of file PtEtaPhiM4D.h.

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

set phi value

Definition at line 296 of file PtEtaPhiM4D.h.

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

set Pt value

Definition at line 284 of file PtEtaPhiM4D.h.

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

set values using cartesian coordinate system

Definition at line 411 of file PtEtaPhiM4D.h.

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

Definition at line 199 of file PtEtaPhiM4D.h.

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

Definition at line 367 of file PtEtaPhiM4D.h.

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

polar angle

Definition at line 273 of file PtEtaPhiM4D.h.

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

Definition at line 158 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::x().

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

Definition at line 364 of file PtEtaPhiM4D.h.

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

Definition at line 160 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::y().

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

Definition at line 365 of file PtEtaPhiM4D.h.

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

Definition at line 167 of file PtEtaPhiM4D.h.

Referenced by ROOT::Math::PtEtaPhiM4D< ScalarType >::z().

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

Definition at line 366 of file PtEtaPhiM4D.h.

Member Data Documentation

template<class ScalarType >
ScalarType ROOT::Math::PtEtaPhiM4D< ScalarType >::fEta
private
template<class ScalarType >
ScalarType ROOT::Math::PtEtaPhiM4D< ScalarType >::fM
private
template<class ScalarType >
ScalarType ROOT::Math::PtEtaPhiM4D< ScalarType >::fPhi
private
template<class ScalarType >
ScalarType ROOT::Math::PtEtaPhiM4D< ScalarType >::fPt
private

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