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 always be less than P2 to preserve a positive value of E2 Phi is restricted to be in the range [-PI,PI)
Definition at line 55 of file PtEtaPhiM4D.h.
Public Types | |
typedef ScalarType | Scalar |
Public Member Functions | |
PtEtaPhiM4D () | |
Default constructor gives zero 4-vector (with zero mass) | |
template<class CoordSystem > | |
constexpr | PtEtaPhiM4D (const CoordSystem &c) |
Generic constructor from any 4D coordinate system implementing Pt(), Eta(), Phi() and M() | |
PtEtaPhiM4D (Scalar pt, Scalar eta, Scalar phi, Scalar mass) | |
Constructor from pt, eta, phi, mass values. | |
Scalar | E () const |
Energy (timelike component of momentum-energy 4-vector) | |
Scalar | E2 () const |
energy squared | |
Scalar | Et () const |
transverse energy | |
Scalar | Et2 () const |
transverse energy squared | |
Scalar | Eta () const |
void | GetCoordinates (Scalar &pt, Scalar &eta, Scalar &phi, Scalar &mass) 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 |
M() is the invariant mass; in this coordinate system it can be negagative if set that way. | |
Scalar | M2 () const |
vector magnitude squared (or mass squared) In case of negative mass (spacelike particles return negative values) | |
Scalar | Mag () const |
Scalar | Mag2 () const |
Scalar | Mt () const |
transverse mass - will be negative if Mt2() is negative | |
Scalar | Mt2 () const |
transverse mass squared | |
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 | |
bool | operator!= (const PtEtaPhiM4D &rhs) const |
template<class CoordSystem > | |
PtEtaPhiM4D & | operator= (const CoordSystem &c) |
Assignment from a generic coordinate system implementing Pt(), Eta(), Phi() and M() | |
bool | operator== (const PtEtaPhiM4D &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 mass) |
Set internal data based on 4 Scalar numbers. | |
void | SetEta (Scalar eta) |
set eta value | |
void | SetM (Scalar mass) |
set M 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 | RestrictNegMass () |
void | RestrictPhi () |
Static Private Member Functions | |
static Scalar | pi () |
Private Attributes | |
ScalarType | fEta |
ScalarType | fM |
ScalarType | fPhi |
ScalarType | fPt |
#include <Math/GenVector/PtEtaPhiM4D.h>
typedef ScalarType ROOT::Math::PtEtaPhiM4D< ScalarType >::Scalar |
Definition at line 59 of file PtEtaPhiM4D.h.
|
inline |
Default constructor gives zero 4-vector (with zero mass)
Definition at line 67 of file PtEtaPhiM4D.h.
|
inline |
Constructor from pt, eta, phi, mass values.
Definition at line 72 of file PtEtaPhiM4D.h.
|
inlineexplicitconstexpr |
|
inline |
Energy (timelike component of momentum-energy 4-vector)
Definition at line 179 of file PtEtaPhiM4D.h.
|
inline |
energy squared
Definition at line 170 of file PtEtaPhiM4D.h.
|
inline |
transverse energy
Definition at line 231 of file PtEtaPhiM4D.h.
|
inline |
transverse energy squared
Definition at line 222 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 123 of file PtEtaPhiM4D.h.
|
inline |
get internal data into 4 Scalar numbers
Definition at line 115 of file PtEtaPhiM4D.h.
|
inline |
get internal data into an array of 4 Scalar numbers
Definition at line 99 of file PtEtaPhiM4D.h.
|
inline |
M() is the invariant mass; in this coordinate system it can be negagative if set that way.
Definition at line 129 of file PtEtaPhiM4D.h.
|
inline |
vector magnitude squared (or mass squared) In case of negative mass (spacelike particles return negative values)
Definition at line 187 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 130 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 190 of file PtEtaPhiM4D.h.
|
inline |
transverse mass - will be negative if Mt2() is negative
Definition at line 206 of file PtEtaPhiM4D.h.
|
inline |
transverse mass squared
Definition at line 201 of file PtEtaPhiM4D.h.
|
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 299 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 336 of file PtEtaPhiM4D.h.
|
inline |
|
inline |
Exact equality.
Definition at line 332 of file PtEtaPhiM4D.h.
|
inline |
magnitude of momentum
Definition at line 150 of file PtEtaPhiM4D.h.
|
inline |
squared magnitude of spatial components (momentum squared)
Definition at line 161 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 132 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 196 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 124 of file PtEtaPhiM4D.h.
|
inlinestaticprivate |
Definition at line 234 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 122 of file PtEtaPhiM4D.h.
|
inline |
transverse spatial component squared
Definition at line 195 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 137 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 139 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 141 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 156 of file PtEtaPhiM4D.h.
|
inlineprivate |
Definition at line 241 of file PtEtaPhiM4D.h.
|
inlineprivate |
Definition at line 235 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 133 of file PtEtaPhiM4D.h.
|
inline |
Scale coordinate values by a scalar quantity a.
Definition at line 308 of file PtEtaPhiM4D.h.
|
inline |
Set internal data based on an array of 4 Scalar numbers.
Definition at line 90 of file PtEtaPhiM4D.h.
|
inline |
Set internal data based on 4 Scalar numbers.
Definition at line 105 of file PtEtaPhiM4D.h.
|
inline |
set eta value
Definition at line 268 of file PtEtaPhiM4D.h.
|
inline |
set M value
Definition at line 281 of file PtEtaPhiM4D.h.
|
inline |
set phi value
Definition at line 274 of file PtEtaPhiM4D.h.
|
inline |
set Pt value
Definition at line 262 of file PtEtaPhiM4D.h.
|
inline |
set values using cartesian coordinate system
Definition at line 387 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 181 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 345 of file PtEtaPhiM4D.h.
|
inline |
polar angle
Definition at line 255 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 138 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 342 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 140 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 343 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 145 of file PtEtaPhiM4D.h.
|
inline |
Definition at line 344 of file PtEtaPhiM4D.h.
|
staticconstexpr |
Definition at line 60 of file PtEtaPhiM4D.h.
|
private |
Definition at line 365 of file PtEtaPhiM4D.h.
|
private |
Definition at line 367 of file PtEtaPhiM4D.h.
|
private |
Definition at line 366 of file PtEtaPhiM4D.h.
|
private |
Definition at line 364 of file PtEtaPhiM4D.h.