Logo ROOT   6.16/01
Reference Guide
List of all members | Public Types | Public Member Functions | Private Attributes | List of all members
TLorentzVector Class Reference

TLorentzVector is a general four-vector class, which can be used either for the description of position and time (x,y,z,t) or momentum and energy (px,py,pz,E).

Declaration

TLorentzVector has been implemented as a set a TVector3 and a Double_t variable. By default all components are initialized by zero.

TLorentzVector v1; // initialized by (0., 0., 0., 0.)
TLorentzVector v2(1., 1., 1., 1.);
TLorentzVector v4(TVector3(1., 2., 3.),4.);
TLorentzVector is a general four-vector class, which can be used either for the description of positi...
TVector3 is a general three vector class, which can be used for the description of different vectors ...
Definition: TVector3.h:22

For backward compatibility there are two constructors from an Double_t and Float_t C array.

Access to the components

There are two sets of access functions to the components of a LorentzVector: X(), Y(), Z(), T() and Px(), Py(), Pz() and E(). Both sets return the same values but the first set is more relevant for use where TLorentzVector describes a combination of position and time and the second set is more relevant where TLorentzVector describes momentum and energy:

Double_t xx =v.X();
...
Double_t tt = v.T();
Double_t px = v.Px();
...
Double_t ee = v.E();
SVector< double, 2 > v
Definition: Dict.h:5
double Double_t
Definition: RtypesCore.h:55
auto * tt
Definition: textangle.C:16

The components of TLorentzVector can also accessed by index:

xx = v(0); or xx = v[0];
yy = v(1); yy = v[1];
zz = v(2); zz = v[2];
tt = v(3); tt = v[3];

You can use the Vect() member function to get the vector component of TLorentzVector:

TVector3 p = v.Vect();

For setting components also two sets of member functions can be used:

v.SetX(1.); or v.SetPx(1.);
... ...
v.SetT(1.); v.SetE(1.);

To set more the one component by one call you can use the SetVect() function for the TVector3 part or SetXYZT(), SetPxPyPzE(). For convenience there is

also a SetXYZM():

v.SetVect(TVector3(1,2,3));
v.SetXYZT(x,y,z,t);
v.SetPxPyPzE(px,py,pz,e);
v.SetXYZM(x,y,z,m); // -> v=(x,y,z,e=Sqrt(x*x+y*y+z*z+m*m))
#define e(i)
Definition: RSha256.hxx:103
Double_t y[n]
Definition: legend1.C:17
Double_t x[n]
Definition: legend1.C:17
auto * m
Definition: textangle.C:8

Vector components in non-cartesian coordinate systems

There are a couple of member functions to get and set the TVector3 part of the parameters in spherical coordinate systems:

Double_t m, theta, cost, phi, pp, pp2, ppv2, pp2v2;
m = v.Rho();
t = v.Theta();
cost = v.CosTheta();
phi = v.Phi();
v.SetRho(10.);
v.SetTheta(TMath::Pi()*.3);
v.SetPhi(TMath::Pi());
constexpr Double_t Pi()
Definition: TMath.h:38

or get information about the r-coordinate in cylindrical systems:

Double_t pp, pp2, ppv2, pp2v2;
pp = v.Perp(); // get transvers component
pp2 = v.Perp2(); // get transverse component squared
ppv2 = v.Perp(v1); // get transvers component with
// respect to another vector
pp2v2 = v.Perp(v1);

for convenience there are two more set functions SetPtEtaPhiE(pt,eta,phi,e); and SetPtEtaPhiM(pt,eta,phi,m);

Arithmetic and comparison operators

The TLorentzVector class provides operators to add, subtract or compare four-vectors:

v3 = -v1;
v1 = v2+v3;
v1+= v3;
v1 = v2 + v3;
v1-= v3;
if (v1 == v2) {...}
if(v1 != v3) {...}

Magnitude/Invariant mass, beta, gamma, scalar product

The scalar product of two four-vectors is calculated with the (-,-,-,+) metric,

i.e. s = v1*v2 = t1*t2-x1*x2-y1*y2-z1*z2 The magnitude squared mag2 of a four-vector is therefore:

mag2 = v*v = t*t-x*x-y*y-z*z

It mag2 is negative mag = -Sqrt(-mag*mag). The member functions are:

Double_t s, s2;
s = v1.Dot(v2); // scalar product
s = v1*v2; // scalar product
s2 = v.Mag2(); or s2 = v.M2();
s = v.Mag(); s = v.M();
Double_t Dot(const TLorentzVector &) const
static constexpr double s

Since in case of momentum and energy the magnitude has the meaning of invariant mass TLorentzVector provides the more meaningful aliases M2() and M(); The member functions Beta() and Gamma() returns beta and gamma = 1/Sqrt(1-beta*beta).

Lorentz boost

A boost in a general direction can be parameterised with three parameters which can be taken as the components of a three vector b = (bx,by,bz). With x = (x,y,z) and gamma = 1/Sqrt(1-beta*beta) (beta being the module of vector b), an arbitrary active Lorentz boost transformation (from the rod frame to the original frame) can be written as:

x = x' + (gamma-1)/(beta*beta) * (b*x') * b + gamma * t' * b
t = gamma (t'+ b*x').
#define b(i)
Definition: RSha256.hxx:100
double gamma(double x)

The member function Boost() performs a boost transformation from the rod frame to the original frame. BoostVector() returns a TVector3 of the spatial components divided by the time component:

v.Boost(bx,by,bz);
v.Boost(b);
b = v.BoostVector(); // b=(x/t,y/t,z/t)

Rotations

There are four sets of functions to rotate the TVector3 component of a TLorentzVector:

rotation around axes

v.RotateX(TMath::Pi()/2.);
v.RotateY(.5);
v.RotateZ(.99);

rotation around an arbitrary axis

v.Rotate(TMath::Pi()/4., v1); // rotation around v1

transformation from rotated frame

v.RotateUz(direction); // direction must be a unit TVector3

by TRotation (see TRotation)

v.Transform(r); or v *= r; // Attention v=M*v
ROOT::R::TRInterface & r
Definition: Object.C:4
The TRotation class describes a rotation of objects of the TVector3 class.
Definition: TRotation.h:20

Misc

Angle between two vectors

Double_t a = v1.Angle(v2.Vect()); // get angle between v1 and v2
Double_t Angle(const TVector3 &v) const
auto * a
Definition: textangle.C:12

Light-cone components

Member functions Plus() and Minus() return the positive and negative light-cone components:

Double_t pcone = v.Plus();
Double_t mcone = v.Minus();

CAVEAT: The values returned are T{+,-}Z. It is known that some authors find it easier to define these components as (T{+,-}Z)/sqrt(2). Thus check what definition is used in the physics you're working in and adapt your code accordingly.

Transformation by TLorentzRotation

A general Lorentz transformation see class TLorentzRotation can be used by the Transform() member function, the *= or operator of the TLorentzRotation class:

v.Transform(l);
v = l*v; or v *= l; // Attention v = l*v
The TLorentzRotation class describes Lorentz transformations including Lorentz boosts and rotations (...
auto * l
Definition: textangle.C:4

Definition at line 32 of file TLorentzVector.h.

Public Types

enum  {
  kX =0 , kY =1 , kZ =2 , kT =3 ,
  kNUM_COORDINATES =4 , kSIZE =kNUM_COORDINATES
}
 
typedef Double_t Scalar
 
- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = BIT(0) , kOverwrite = BIT(1) , kWriteDelete = BIT(2) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = BIT(3) }
 
enum  EStatusBits {
  kCanDelete = BIT(0) , kMustCleanup = BIT(3) , kIsReferenced = BIT(4) , kHasUUID = BIT(5) ,
  kCannotPick = BIT(6) , kNoContextMenu = BIT(8) , kInvalidObject = BIT(13)
}
 

Public Member Functions

 TLorentzVector ()
 
 TLorentzVector (const Double_t *carray)
 
 TLorentzVector (const Float_t *carray)
 
 TLorentzVector (const TLorentzVector &lorentzvector)
 
 TLorentzVector (const TVector3 &vector3, Double_t t)
 
 TLorentzVector (Double_t x, Double_t y, Double_t z, Double_t t)
 
virtual ~TLorentzVector ()
 
Double_t Angle (const TVector3 &v) const
 
Double_t Beta () const
 
void Boost (const TVector3 &)
 
void Boost (Double_t, Double_t, Double_t)
 
TVector3 BoostVector () const
 
Double_t CosTheta () const
 
Double_t DeltaPhi (const TLorentzVector &) const
 
Double_t DeltaR (const TLorentzVector &) const
 
Double_t Dot (const TLorentzVector &) const
 
Double_t DrEtaPhi (const TLorentzVector &) const
 
Double_t E () const
 
Double_t Energy () const
 
Double_t Et () const
 
Double_t Et (const TVector3 &) const
 
Double_t Et2 () const
 
Double_t Et2 (const TVector3 &) const
 
Double_t Eta () const
 
TVector2 EtaPhiVector ()
 
Double_t Gamma () const
 
void GetXYZT (Double_t *carray) const
 
void GetXYZT (Float_t *carray) const
 
Double_t M () const
 
Double_t M2 () const
 
Double_t Mag () const
 
Double_t Mag2 () const
 
Double_t Minus () const
 
Double_t Mt () const
 
Double_t Mt2 () const
 
Bool_t operator!= (const TLorentzVector &) const
 
Double_toperator() (int i)
 
Double_t operator() (int i) const
 
Double_t operator* (const TLorentzVector &) const
 
TLorentzVector operator* (Double_t a) const
 
TLorentzVectoroperator*= (const TLorentzRotation &)
 
TLorentzVectoroperator*= (const TRotation &)
 
TLorentzVectoroperator*= (Double_t a)
 
TLorentzVector operator+ (const TLorentzVector &) const
 
TLorentzVectoroperator+= (const TLorentzVector &)
 
TLorentzVector operator- () const
 
TLorentzVector operator- (const TLorentzVector &) const
 
TLorentzVectoroperator-= (const TLorentzVector &)
 
TLorentzVectoroperator= (const TLorentzVector &)
 
Bool_t operator== (const TLorentzVector &) const
 
Double_toperator[] (int i)
 
Double_t operator[] (int i) const
 
Double_t P () const
 
Double_t Perp () const
 
Double_t Perp (const TVector3 &v) const
 
Double_t Perp2 () const
 
Double_t Perp2 (const TVector3 &v) const
 
Double_t Phi () const
 
Double_t Plus () const
 
virtual void Print (Option_t *option="") const
 Print the TLorentz vector components as (x,y,z,t) and (P,eta,phi,E) representations. More...
 
Double_t PseudoRapidity () const
 
Double_t Pt () const
 
Double_t Pt (const TVector3 &v) const
 
Double_t Px () const
 
Double_t Py () const
 
Double_t Pz () const
 
Double_t Rapidity () const
 
Double_t Rho () const
 
void Rotate (Double_t, const TVector3 &)
 
void RotateUz (TVector3 &newUzVector)
 
void RotateX (Double_t angle)
 
void RotateY (Double_t angle)
 
void RotateZ (Double_t angle)
 
void SetE (Double_t a)
 
void SetPerp (Double_t)
 
void SetPhi (Double_t phi)
 
void SetPtEtaPhiE (Double_t pt, Double_t eta, Double_t phi, Double_t e)
 
void SetPtEtaPhiM (Double_t pt, Double_t eta, Double_t phi, Double_t m)
 
void SetPx (Double_t a)
 
void SetPxPyPzE (Double_t px, Double_t py, Double_t pz, Double_t e)
 
void SetPy (Double_t a)
 
void SetPz (Double_t a)
 
void SetRho (Double_t rho)
 
void SetT (Double_t a)
 
void SetTheta (Double_t theta)
 
void SetVect (const TVector3 &vect3)
 
void SetVectM (const TVector3 &spatial, Double_t mass)
 
void SetVectMag (const TVector3 &spatial, Double_t magnitude)
 
void SetX (Double_t a)
 
void SetXYZM (Double_t x, Double_t y, Double_t z, Double_t m)
 
void SetXYZT (Double_t x, Double_t y, Double_t z, Double_t t)
 
void SetY (Double_t a)
 
void SetZ (Double_t a)
 
Double_t T () const
 
Double_t Theta () const
 
TLorentzVectorTransform (const TLorentzRotation &)
 
TLorentzVectorTransform (const TRotation &)
 
TVector3 Vect () const
 
Double_t X () const
 
Double_t Y () const
 
Double_t Z () const
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor. More...
 
 TObject (const TObject &object)
 TObject copy ctor. More...
 
virtual ~TObject ()
 TObject destructor. More...
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract. More...
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad. More...
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action. More...
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object. More...
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs. More...
 
virtual void Clear (Option_t *="")
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual Int_t Compare (const TObject *obj) const
 Compare abstract method. More...
 
virtual void Copy (TObject &object) const
 Copy this to obj. More...
 
virtual void Delete (Option_t *option="")
 Delete this object. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object. More...
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects. More...
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs. More...
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad). More...
 
virtual void Dump () const
 Dump contents of object on stdout. More...
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message. More...
 
virtual void Execute (const char *method, const char *params, Int_t *error=0)
 Execute method on this object with the given parameter string, e.g. More...
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
 Execute method on this object with parameters stored in the TObjArray. More...
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py). More...
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message. More...
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes. More...
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes. More...
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object. More...
 
virtual const char * GetIconName () const
 Returns mime type name of object. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py). More...
 
virtual Option_tGetOption () const
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual UInt_t GetUniqueID () const
 Return the unique object id. More...
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e. More...
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message. More...
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname". More...
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl. More...
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas. More...
 
void InvertBit (UInt_t f)
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory). More...
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More...
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
virtual Bool_t IsSortable () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
virtual void ls (Option_t *option="") const
 The ls function lists the contents of a class on stdout. More...
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). More...
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification. More...
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete. More...
 
void operator delete (void *ptr)
 Operator delete. More...
 
void operator delete[] (void *ptr)
 Operator delete []. More...
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator. More...
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself. More...
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list. More...
 
virtual void Print (Option_t *option="") const
 This method must be overridden when a class wants to print itself. More...
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory. More...
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list. More...
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename. More...
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out". More...
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object. More...
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id. More...
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message. More...
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More...
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory. More...
 

Private Attributes

Double_t fE
 
TVector3 fP
 

Additional Inherited Members

- Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
 Return destructor only flag. More...
 
static Bool_t GetObjectStat ()
 Get status of object stat flag. More...
 
static void SetDtorOnly (void *obj)
 Set destructor only flag. More...
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable. More...
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 
void MakeZombie ()
 

#include <TLorentzVector.h>

Inheritance diagram for TLorentzVector:
[legend]

Member Typedef Documentation

◆ Scalar

Definition at line 41 of file TLorentzVector.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
kX 
kY 
kZ 
kT 
kNUM_COORDINATES 
kSIZE 

Definition at line 43 of file TLorentzVector.h.

Constructor & Destructor Documentation

◆ TLorentzVector() [1/6]

TLorentzVector::TLorentzVector ( )
inline

Definition at line 593 of file TLorentzVector.h.

◆ TLorentzVector() [2/6]

TLorentzVector::TLorentzVector ( Double_t  x,
Double_t  y,
Double_t  z,
Double_t  t 
)
inline

Definition at line 596 of file TLorentzVector.h.

◆ TLorentzVector() [3/6]

TLorentzVector::TLorentzVector ( const Double_t carray)
inline

Definition at line 599 of file TLorentzVector.h.

◆ TLorentzVector() [4/6]

TLorentzVector::TLorentzVector ( const Float_t carray)
inline

Definition at line 602 of file TLorentzVector.h.

◆ TLorentzVector() [5/6]

TLorentzVector::TLorentzVector ( const TVector3 vector3,
Double_t  t 
)
inline

Definition at line 605 of file TLorentzVector.h.

◆ TLorentzVector() [6/6]

TLorentzVector::TLorentzVector ( const TLorentzVector lorentzvector)
inline

Definition at line 608 of file TLorentzVector.h.

◆ ~TLorentzVector()

virtual TLorentzVector::~TLorentzVector ( )
inlinevirtual

Definition at line 61 of file TLorentzVector.h.

Member Function Documentation

◆ Angle()

Double_t TLorentzVector::Angle ( const TVector3 v) const
inline

Definition at line 478 of file TLorentzVector.h.

◆ Beta()

Double_t TLorentzVector::Beta ( ) const
inline

Definition at line 503 of file TLorentzVector.h.

◆ Boost() [1/2]

void TLorentzVector::Boost ( const TVector3 b)
inline

Definition at line 551 of file TLorentzVector.h.

◆ Boost() [2/2]

void TLorentzVector::Boost ( Double_t  bx,
Double_t  by,
Double_t  bz 
)

Definition at line 250 of file TLorentzVector.cxx.

◆ BoostVector()

TVector3 TLorentzVector::BoostVector ( ) const
inline

Definition at line 547 of file TLorentzVector.h.

◆ CosTheta()

Double_t TLorentzVector::CosTheta ( ) const
inline

Definition at line 305 of file TLorentzVector.h.

◆ DeltaPhi()

Double_t TLorentzVector::DeltaPhi ( const TLorentzVector v) const
inline

Definition at line 456 of file TLorentzVector.h.

◆ DeltaR()

Double_t TLorentzVector::DeltaR ( const TLorentzVector v) const
inline

Definition at line 463 of file TLorentzVector.h.

◆ Dot()

Double_t TLorentzVector::Dot ( const TLorentzVector q) const
inline

Definition at line 520 of file TLorentzVector.h.

◆ DrEtaPhi()

Double_t TLorentzVector::DrEtaPhi ( const TLorentzVector v) const
inline

Definition at line 469 of file TLorentzVector.h.

◆ E()

Double_t TLorentzVector::E ( ) const
inline

Definition at line 285 of file TLorentzVector.h.

◆ Energy()

Double_t TLorentzVector::Energy ( ) const
inline

Definition at line 286 of file TLorentzVector.h.

◆ Et() [1/2]

Double_t TLorentzVector::Et ( ) const
inline

Definition at line 440 of file TLorentzVector.h.

◆ Et() [2/2]

Double_t TLorentzVector::Et ( const TVector3 v) const
inline

Definition at line 451 of file TLorentzVector.h.

◆ Et2() [1/2]

Double_t TLorentzVector::Et2 ( ) const
inline

Definition at line 435 of file TLorentzVector.h.

◆ Et2() [2/2]

Double_t TLorentzVector::Et2 ( const TVector3 v) const
inline

Definition at line 445 of file TLorentzVector.h.

◆ Eta()

Double_t TLorentzVector::Eta ( ) const
inline

Definition at line 460 of file TLorentzVector.h.

◆ EtaPhiVector()

TVector2 TLorentzVector::EtaPhiVector ( )
inline

Definition at line 473 of file TLorentzVector.h.

◆ Gamma()

Double_t TLorentzVector::Gamma ( ) const
inline

Definition at line 507 of file TLorentzVector.h.

◆ GetXYZT() [1/2]

void TLorentzVector::GetXYZT ( Double_t carray) const
inline

Definition at line 352 of file TLorentzVector.h.

◆ GetXYZT() [2/2]

void TLorentzVector::GetXYZT ( Float_t carray) const
inline

Definition at line 357 of file TLorentzVector.h.

◆ M()

Double_t TLorentzVector::M ( ) const
inline

Definition at line 492 of file TLorentzVector.h.

◆ M2()

Double_t TLorentzVector::M2 ( ) const
inline

Definition at line 491 of file TLorentzVector.h.

◆ Mag()

Double_t TLorentzVector::Mag ( ) const
inline

Definition at line 486 of file TLorentzVector.h.

◆ Mag2()

Double_t TLorentzVector::Mag2 ( ) const
inline

Definition at line 482 of file TLorentzVector.h.

◆ Minus()

Double_t TLorentzVector::Minus ( ) const
inline

Definition at line 543 of file TLorentzVector.h.

◆ Mt()

Double_t TLorentzVector::Mt ( ) const
inline

Definition at line 498 of file TLorentzVector.h.

◆ Mt2()

Double_t TLorentzVector::Mt2 ( ) const
inline

Definition at line 494 of file TLorentzVector.h.

◆ operator!=()

Bool_t TLorentzVector::operator!= ( const TLorentzVector q) const
inline

Definition at line 409 of file TLorentzVector.h.

◆ operator()() [1/2]

Double_t & TLorentzVector::operator() ( int  i)
inline

Definition at line 631 of file TLorentzVector.h.

◆ operator()() [2/2]

Double_t TLorentzVector::operator() ( int  i) const
inline

Definition at line 613 of file TLorentzVector.h.

◆ operator*() [1/2]

Double_t TLorentzVector::operator* ( const TLorentzVector q) const
inline

Definition at line 524 of file TLorentzVector.h.

◆ operator*() [2/2]

TLorentzVector TLorentzVector::operator* ( Double_t  a) const
inline

Definition at line 401 of file TLorentzVector.h.

◆ operator*=() [1/3]

TLorentzVector & TLorentzVector::operator*= ( const TLorentzRotation m)

Definition at line 270 of file TLorentzVector.cxx.

◆ operator*=() [2/3]

TLorentzVector & TLorentzVector::operator*= ( const TRotation m)
inline

Definition at line 579 of file TLorentzVector.h.

◆ operator*=() [3/3]

TLorentzVector & TLorentzVector::operator*= ( Double_t  a)
inline

Definition at line 395 of file TLorentzVector.h.

◆ operator+()

TLorentzVector TLorentzVector::operator+ ( const TLorentzVector q) const
inline

Definition at line 371 of file TLorentzVector.h.

◆ operator+=()

TLorentzVector & TLorentzVector::operator+= ( const TLorentzVector q)
inline

Definition at line 375 of file TLorentzVector.h.

◆ operator-() [1/2]

TLorentzVector TLorentzVector::operator- ( ) const
inline

Definition at line 391 of file TLorentzVector.h.

◆ operator-() [2/2]

TLorentzVector TLorentzVector::operator- ( const TLorentzVector q) const
inline

Definition at line 381 of file TLorentzVector.h.

◆ operator-=()

TLorentzVector & TLorentzVector::operator-= ( const TLorentzVector q)
inline

Definition at line 385 of file TLorentzVector.h.

◆ operator=()

TLorentzVector & TLorentzVector::operator= ( const TLorentzVector q)
inline

Definition at line 365 of file TLorentzVector.h.

◆ operator==()

Bool_t TLorentzVector::operator== ( const TLorentzVector q) const
inline

Definition at line 405 of file TLorentzVector.h.

◆ operator[]() [1/2]

Double_t & TLorentzVector::operator[] ( int  i)
inline

Definition at line 362 of file TLorentzVector.h.

◆ operator[]() [2/2]

Double_t TLorentzVector::operator[] ( int  i) const
inline

Definition at line 363 of file TLorentzVector.h.

◆ P()

Double_t TLorentzVector::P ( ) const
inline

Definition at line 284 of file TLorentzVector.h.

◆ Perp() [1/2]

Double_t TLorentzVector::Perp ( ) const
inline

Definition at line 415 of file TLorentzVector.h.

◆ Perp() [2/2]

Double_t TLorentzVector::Perp ( const TVector3 v) const
inline

Definition at line 427 of file TLorentzVector.h.

◆ Perp2() [1/2]

Double_t TLorentzVector::Perp2 ( ) const
inline

Definition at line 413 of file TLorentzVector.h.

◆ Perp2() [2/2]

Double_t TLorentzVector::Perp2 ( const TVector3 v) const
inline

Definition at line 423 of file TLorentzVector.h.

◆ Phi()

Double_t TLorentzVector::Phi ( ) const
inline

Definition at line 297 of file TLorentzVector.h.

◆ Plus()

Double_t TLorentzVector::Plus ( ) const
inline

Definition at line 539 of file TLorentzVector.h.

◆ Print()

void TLorentzVector::Print ( Option_t option = "") const
virtual

Print the TLorentz vector components as (x,y,z,t) and (P,eta,phi,E) representations.

Reimplemented from TObject.

Definition at line 310 of file TLorentzVector.cxx.

◆ PseudoRapidity()

Double_t TLorentzVector::PseudoRapidity ( ) const
inline

Definition at line 555 of file TLorentzVector.h.

◆ Pt() [1/2]

Double_t TLorentzVector::Pt ( ) const
inline

Definition at line 417 of file TLorentzVector.h.

◆ Pt() [2/2]

Double_t TLorentzVector::Pt ( const TVector3 v) const
inline

Definition at line 431 of file TLorentzVector.h.

◆ Px()

Double_t TLorentzVector::Px ( ) const
inline

Definition at line 281 of file TLorentzVector.h.

◆ Py()

Double_t TLorentzVector::Py ( ) const
inline

Definition at line 282 of file TLorentzVector.h.

◆ Pz()

Double_t TLorentzVector::Pz ( ) const
inline

Definition at line 283 of file TLorentzVector.h.

◆ Rapidity()

Double_t TLorentzVector::Rapidity ( ) const

Definition at line 264 of file TLorentzVector.cxx.

◆ Rho()

Double_t TLorentzVector::Rho ( ) const
inline

Definition at line 310 of file TLorentzVector.h.

◆ Rotate()

void TLorentzVector::Rotate ( Double_t  a,
const TVector3 v 
)
inline

Definition at line 575 of file TLorentzVector.h.

◆ RotateUz()

void TLorentzVector::RotateUz ( TVector3 newUzVector)
inline

Definition at line 571 of file TLorentzVector.h.

◆ RotateX()

void TLorentzVector::RotateX ( Double_t  angle)
inline

Definition at line 559 of file TLorentzVector.h.

◆ RotateY()

void TLorentzVector::RotateY ( Double_t  angle)
inline

Definition at line 563 of file TLorentzVector.h.

◆ RotateZ()

void TLorentzVector::RotateZ ( Double_t  angle)
inline

Definition at line 567 of file TLorentzVector.h.

◆ SetE()

void TLorentzVector::SetE ( Double_t  a)
inline

Definition at line 291 of file TLorentzVector.h.

◆ SetPerp()

void TLorentzVector::SetPerp ( Double_t  r)
inline

Definition at line 419 of file TLorentzVector.h.

◆ SetPhi()

void TLorentzVector::SetPhi ( Double_t  phi)
inline

Definition at line 318 of file TLorentzVector.h.

◆ SetPtEtaPhiE()

void TLorentzVector::SetPtEtaPhiE ( Double_t  pt,
Double_t  eta,
Double_t  phi,
Double_t  e 
)
inline

Definition at line 347 of file TLorentzVector.h.

◆ SetPtEtaPhiM()

void TLorentzVector::SetPtEtaPhiM ( Double_t  pt,
Double_t  eta,
Double_t  phi,
Double_t  m 
)
inline

Definition at line 342 of file TLorentzVector.h.

◆ SetPx()

void TLorentzVector::SetPx ( Double_t  a)
inline

Definition at line 288 of file TLorentzVector.h.

◆ SetPxPyPzE()

void TLorentzVector::SetPxPyPzE ( Double_t  px,
Double_t  py,
Double_t  pz,
Double_t  e 
)
inline

Definition at line 331 of file TLorentzVector.h.

◆ SetPy()

void TLorentzVector::SetPy ( Double_t  a)
inline

Definition at line 289 of file TLorentzVector.h.

◆ SetPz()

void TLorentzVector::SetPz ( Double_t  a)
inline

Definition at line 290 of file TLorentzVector.h.

◆ SetRho()

void TLorentzVector::SetRho ( Double_t  rho)
inline

Definition at line 322 of file TLorentzVector.h.

◆ SetT()

void TLorentzVector::SetT ( Double_t  a)
inline

Definition at line 279 of file TLorentzVector.h.

◆ SetTheta()

void TLorentzVector::SetTheta ( Double_t  theta)
inline

Definition at line 314 of file TLorentzVector.h.

◆ SetVect()

void TLorentzVector::SetVect ( const TVector3 vect3)
inline

Definition at line 295 of file TLorentzVector.h.

◆ SetVectM()

void TLorentzVector::SetVectM ( const TVector3 spatial,
Double_t  mass 
)
inline

Definition at line 516 of file TLorentzVector.h.

◆ SetVectMag()

void TLorentzVector::SetVectMag ( const TVector3 spatial,
Double_t  magnitude 
)
inline

Definition at line 512 of file TLorentzVector.h.

◆ SetX()

void TLorentzVector::SetX ( Double_t  a)
inline

Definition at line 276 of file TLorentzVector.h.

◆ SetXYZM()

void TLorentzVector::SetXYZM ( Double_t  x,
Double_t  y,
Double_t  z,
Double_t  m 
)
inline

Definition at line 335 of file TLorentzVector.h.

◆ SetXYZT()

void TLorentzVector::SetXYZT ( Double_t  x,
Double_t  y,
Double_t  z,
Double_t  t 
)
inline

Definition at line 326 of file TLorentzVector.h.

◆ SetY()

void TLorentzVector::SetY ( Double_t  a)
inline

Definition at line 277 of file TLorentzVector.h.

◆ SetZ()

void TLorentzVector::SetZ ( Double_t  a)
inline

Definition at line 278 of file TLorentzVector.h.

◆ T()

Double_t TLorentzVector::T ( ) const
inline

Definition at line 274 of file TLorentzVector.h.

◆ Theta()

Double_t TLorentzVector::Theta ( ) const
inline

Definition at line 301 of file TLorentzVector.h.

◆ Transform() [1/2]

TLorentzVector & TLorentzVector::Transform ( const TLorentzRotation m)

Definition at line 276 of file TLorentzVector.cxx.

◆ Transform() [2/2]

TLorentzVector & TLorentzVector::Transform ( const TRotation m)
inline

Definition at line 584 of file TLorentzVector.h.

◆ Vect()

TVector3 TLorentzVector::Vect ( ) const
inline

Definition at line 293 of file TLorentzVector.h.

◆ X()

Double_t TLorentzVector::X ( ) const
inline

Definition at line 271 of file TLorentzVector.h.

◆ Y()

Double_t TLorentzVector::Y ( ) const
inline

Definition at line 272 of file TLorentzVector.h.

◆ Z()

Double_t TLorentzVector::Z ( ) const
inline

Definition at line 273 of file TLorentzVector.h.

Member Data Documentation

◆ fE

Double_t TLorentzVector::fE
private

Definition at line 37 of file TLorentzVector.h.

◆ fP

TVector3 TLorentzVector::fP
private

Definition at line 36 of file TLorentzVector.h.

Libraries for TLorentzVector:
[legend]

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