eic-smear  1.0.3
A collection of ROOT classes for Monte Carlo events and a fast-smearing code simulating detector effects for the Electron-Ion Collider task force
erhic::hadronic::ParticleMC Class Reference

A realisation of erhic::VirtualParticle for tracks from a hadron-hadron Monte Carlo event. More...

#include <ParticleMC.h>

Inheritance diagram for erhic::hadronic::ParticleMC:
erhic::VirtualParticle

Public Member Functions

virtual ~ParticleMC ()
 Destructor. More...
 
 ParticleMC ()
 Default constructor. More...
 
 ParticleMC (const TMCParticle &)
 Initialise from a PYTHIA TParticleMC. More...
 
 ParticleMC (const TLorentzVector &, const TVector3 &, int, int, int)
 Initialise from energy-momentum 4-vector, vertex 3-vector and PDG, status, parent index. More...
 
virtual erhic::Pid Id () const
 Returns identity information for the Particle species. More...
 
virtual TLorentzVector Get4Vector () const
 Returns the momentum-energy four-vector (px, py, pz, E). More...
 
virtual Double_t GetPx () const
 Returns the x component of 3-momentum. More...
 
virtual Double_t GetPy () const
 Returns the y component of 3-momentum. More...
 
virtual Double_t GetPz () const
 Returns the z component of 3-momentum. More...
 
virtual Double_t GetE () const
 Returns total energy. More...
 
virtual Double_t GetP () const
 Returns the magnitude of 3-momentum (GeV). More...
 
virtual Double_t GetM () const
 Returns invariant mass (GeV/c2). More...
 
virtual Double_t GetPt () const
 Returns momentum perpendicular to the beam direction. More...
 
virtual Double_t GetTheta () const
 Returns the polar angle in the range [0, pi] radians. More...
 
virtual Double_t GetPhi () const
 Returns the polar angle in the range [0, 2pi] radians. More...
 
virtual Double_t GetRapidity () const
 Returns the rapidity. More...
 
virtual Double_t GetEta () const
 Returns the pseudorapidity. More...
 
virtual TVector3 GetVertex () const
 Returns the origin point of the particle in cm. More...
 
virtual UShort_t GetStatus () const
 A general "status" code for the particle (definition depends on implementation). More...
 
virtual UShort_t GetParentIndex () const
 Index of this particle's precursor in the event. More...
 
virtual Double_t GetXFeynman () const
 Returns Feynman-x. More...
 
virtual void SetStatus (UShort_t)
 Sets the status code. More...
 
virtual void SetParentIndex (UShort_t)
 Sets the parent index, in the range [1, N - 1] for particles with parents, or 0 for those without. More...
 
virtual void SetXFeynman (double xf)
 Sets the Feynman-x. More...
 
virtual void Set4Vector (const TLorentzVector &)
 Sets the four-momentum of the particle. More...
 
virtual void SetVertex (const TVector3 &)
 Sets the origin coordinates. More...
 
- Public Member Functions inherited from erhic::VirtualParticle
virtual ~VirtualParticle ()
 Destructor. More...
 

Protected Attributes

UShort_t KS
 Status code: see PYTHIA manual. More...
 
UShort_t orig
 I of parent particle. More...
 
Int_t id
 PDG code identifying the particle. More...
 
Double32_t px
 x component of momentum (GeV/c) More...
 
Double32_t py
 y component of momentum (GeV/c) More...
 
Double32_t pz
 z component of momentum (GeV/c) More...
 
Double32_t E
 Total energy (GeV) More...
 
Double32_t p
 Magnitude of momentum (GeV/c) More...
 
Double32_t m
 Invariant mass (GeV/c2) More...
 
Double32_t pt
 Momentum transverse to the beam direction (GeV/c) More...
 
Double32_t theta
 Polar angle (radians [0, pi]) More...
 
Double32_t phi
 Angle of azimuth (radians [0, 2pi]) More...
 
Double32_t rapidity
 Rapidity. More...
 
Double32_t eta
 Pseudorapidity. More...
 
Double32_t xFeynman
 Feynman x = 2 * pz / centre of mass energy. More...
 
Double32_t xv
 x vertex position (cm) More...
 
Double32_t yv
 y vertex position (cm) More...
 
Double32_t zv
 z vertex position (cm) More...
 

Detailed Description

A realisation of erhic::VirtualParticle for tracks from a hadron-hadron Monte Carlo event.

Definition at line 30 of file hadronic/ParticleMC.h.

Constructor & Destructor Documentation

◆ ~ParticleMC()

virtual erhic::hadronic::ParticleMC::~ParticleMC ( )
inlinevirtual

Destructor.

Definition at line 35 of file hadronic/ParticleMC.h.

◆ ParticleMC() [1/3]

erhic::hadronic::ParticleMC::ParticleMC ( )

Default constructor.

Definition at line 21 of file hadronic/ParticleMC.cxx.

◆ ParticleMC() [2/3]

erhic::hadronic::ParticleMC::ParticleMC ( const TMCParticle &  mc)
explicit

Initialise from a PYTHIA TParticleMC.

Definition at line 42 of file hadronic/ParticleMC.cxx.

◆ ParticleMC() [3/3]

erhic::hadronic::ParticleMC::ParticleMC ( const TLorentzVector &  ep,
const TVector3 &  v,
int  pdg,
int  status,
int  parent 
)

Initialise from energy-momentum 4-vector, vertex 3-vector and PDG, status, parent index.

Definition at line 74 of file hadronic/ParticleMC.cxx.

Member Function Documentation

◆ Get4Vector()

TLorentzVector erhic::hadronic::ParticleMC::Get4Vector ( ) const
inlinevirtual

Returns the momentum-energy four-vector (px, py, pz, E).

Implements erhic::VirtualParticle.

Definition at line 196 of file hadronic/ParticleMC.h.

◆ GetE()

Double_t erhic::hadronic::ParticleMC::GetE ( ) const
inlinevirtual

Returns total energy.

Implements erhic::VirtualParticle.

Definition at line 212 of file hadronic/ParticleMC.h.

◆ GetEta()

Double_t erhic::hadronic::ParticleMC::GetEta ( ) const
inlinevirtual

Returns the pseudorapidity.

Implements erhic::VirtualParticle.

Definition at line 240 of file hadronic/ParticleMC.h.

◆ GetM()

Double_t erhic::hadronic::ParticleMC::GetM ( ) const
inlinevirtual

Returns invariant mass (GeV/c2).

Implements erhic::VirtualParticle.

Definition at line 220 of file hadronic/ParticleMC.h.

◆ GetP()

Double_t erhic::hadronic::ParticleMC::GetP ( ) const
inlinevirtual

Returns the magnitude of 3-momentum (GeV).

Implements erhic::VirtualParticle.

Definition at line 216 of file hadronic/ParticleMC.h.

◆ GetParentIndex()

UShort_t erhic::hadronic::ParticleMC::GetParentIndex ( ) const
inlinevirtual

Index of this particle's precursor in the event.

Returns 0 if the particle has no direct parent.

Implements erhic::VirtualParticle.

Definition at line 252 of file hadronic/ParticleMC.h.

◆ GetPhi()

Double_t erhic::hadronic::ParticleMC::GetPhi ( ) const
inlinevirtual

Returns the polar angle in the range [0, 2pi] radians.

Implements erhic::VirtualParticle.

Definition at line 232 of file hadronic/ParticleMC.h.

◆ GetPt()

Double_t erhic::hadronic::ParticleMC::GetPt ( ) const
inlinevirtual

Returns momentum perpendicular to the beam direction.

Implements erhic::VirtualParticle.

Definition at line 224 of file hadronic/ParticleMC.h.

◆ GetPx()

Double_t erhic::hadronic::ParticleMC::GetPx ( ) const
inlinevirtual

Returns the x component of 3-momentum.

Implements erhic::VirtualParticle.

Definition at line 200 of file hadronic/ParticleMC.h.

◆ GetPy()

Double_t erhic::hadronic::ParticleMC::GetPy ( ) const
inlinevirtual

Returns the y component of 3-momentum.

Implements erhic::VirtualParticle.

Definition at line 204 of file hadronic/ParticleMC.h.

◆ GetPz()

Double_t erhic::hadronic::ParticleMC::GetPz ( ) const
inlinevirtual

Returns the z component of 3-momentum.

Implements erhic::VirtualParticle.

Definition at line 208 of file hadronic/ParticleMC.h.

◆ GetRapidity()

Double_t erhic::hadronic::ParticleMC::GetRapidity ( ) const
inlinevirtual

Returns the rapidity.

Implements erhic::VirtualParticle.

Definition at line 236 of file hadronic/ParticleMC.h.

◆ GetStatus()

UShort_t erhic::hadronic::ParticleMC::GetStatus ( ) const
inlinevirtual

A general "status" code for the particle (definition depends on implementation).

Implements erhic::VirtualParticle.

Definition at line 248 of file hadronic/ParticleMC.h.

◆ GetTheta()

Double_t erhic::hadronic::ParticleMC::GetTheta ( ) const
inlinevirtual

Returns the polar angle in the range [0, pi] radians.

Implements erhic::VirtualParticle.

Definition at line 228 of file hadronic/ParticleMC.h.

◆ GetVertex()

TVector3 erhic::hadronic::ParticleMC::GetVertex ( ) const
inlinevirtual

Returns the origin point of the particle in cm.

(0,0,0) indicates a particle originating in the collision.

Implements erhic::VirtualParticle.

Definition at line 244 of file hadronic/ParticleMC.h.

◆ GetXFeynman()

Double_t erhic::hadronic::ParticleMC::GetXFeynman ( ) const
inlinevirtual

Returns Feynman-x.

xF = 2*pz/sqrt(s).

Definition at line 256 of file hadronic/ParticleMC.h.

◆ Id()

Pid erhic::hadronic::ParticleMC::Id ( ) const
inlinevirtual

Returns identity information for the Particle species.

Implements erhic::VirtualParticle.

Definition at line 192 of file hadronic/ParticleMC.h.

◆ Set4Vector()

void erhic::hadronic::ParticleMC::Set4Vector ( const TLorentzVector &  v)
virtual

Sets the four-momentum of the particle.

Changes are propagated to derived quantities.

Implements erhic::VirtualParticle.

Definition at line 101 of file hadronic/ParticleMC.cxx.

◆ SetParentIndex()

void erhic::hadronic::ParticleMC::SetParentIndex ( UShort_t  i)
virtual

Sets the parent index, in the range [1, N - 1] for particles with parents, or 0 for those without.

Definition at line 97 of file hadronic/ParticleMC.cxx.

◆ SetStatus()

void erhic::hadronic::ParticleMC::SetStatus ( UShort_t  i)
inlinevirtual

Sets the status code.

Definition at line 260 of file hadronic/ParticleMC.h.

◆ SetVertex()

void erhic::hadronic::ParticleMC::SetVertex ( const TVector3 &  v)
inlinevirtual

Sets the origin coordinates.

Implements erhic::VirtualParticle.

Definition at line 268 of file hadronic/ParticleMC.h.

◆ SetXFeynman()

void erhic::hadronic::ParticleMC::SetXFeynman ( double  xf)
inlinevirtual

Sets the Feynman-x.

Definition at line 264 of file hadronic/ParticleMC.h.

Member Data Documentation

◆ E

Double32_t erhic::hadronic::ParticleMC::E
protected

Total energy (GeV)

Definition at line 176 of file hadronic/ParticleMC.h.

◆ eta

Double32_t erhic::hadronic::ParticleMC::eta
protected

Pseudorapidity.

Definition at line 183 of file hadronic/ParticleMC.h.

◆ id

Int_t erhic::hadronic::ParticleMC::id
protected

PDG code identifying the particle.

Definition at line 172 of file hadronic/ParticleMC.h.

◆ KS

UShort_t erhic::hadronic::ParticleMC::KS
protected

Status code: see PYTHIA manual.

Definition at line 170 of file hadronic/ParticleMC.h.

◆ m

Double32_t erhic::hadronic::ParticleMC::m
protected

Invariant mass (GeV/c2)

Definition at line 178 of file hadronic/ParticleMC.h.

◆ orig

UShort_t erhic::hadronic::ParticleMC::orig
protected

I of parent particle.

Definition at line 171 of file hadronic/ParticleMC.h.

◆ p

Double32_t erhic::hadronic::ParticleMC::p
protected

Magnitude of momentum (GeV/c)

Definition at line 177 of file hadronic/ParticleMC.h.

◆ phi

Double32_t erhic::hadronic::ParticleMC::phi
protected

Angle of azimuth (radians [0, 2pi])

Definition at line 181 of file hadronic/ParticleMC.h.

◆ pt

Double32_t erhic::hadronic::ParticleMC::pt
protected

Momentum transverse to the beam direction (GeV/c)

Definition at line 179 of file hadronic/ParticleMC.h.

◆ px

Double32_t erhic::hadronic::ParticleMC::px
protected

x component of momentum (GeV/c)

Definition at line 173 of file hadronic/ParticleMC.h.

◆ py

Double32_t erhic::hadronic::ParticleMC::py
protected

y component of momentum (GeV/c)

Definition at line 174 of file hadronic/ParticleMC.h.

◆ pz

Double32_t erhic::hadronic::ParticleMC::pz
protected

z component of momentum (GeV/c)

Definition at line 175 of file hadronic/ParticleMC.h.

◆ rapidity

Double32_t erhic::hadronic::ParticleMC::rapidity
protected

Rapidity.

Definition at line 182 of file hadronic/ParticleMC.h.

◆ theta

Double32_t erhic::hadronic::ParticleMC::theta
protected

Polar angle (radians [0, pi])

Definition at line 180 of file hadronic/ParticleMC.h.

◆ xFeynman

Double32_t erhic::hadronic::ParticleMC::xFeynman
protected

Feynman x = 2 * pz / centre of mass energy.

Definition at line 184 of file hadronic/ParticleMC.h.

◆ xv

Double32_t erhic::hadronic::ParticleMC::xv
protected

x vertex position (cm)

Definition at line 185 of file hadronic/ParticleMC.h.

◆ yv

Double32_t erhic::hadronic::ParticleMC::yv
protected

y vertex position (cm)

Definition at line 186 of file hadronic/ParticleMC.h.

◆ zv

Double32_t erhic::hadronic::ParticleMC::zv
protected

z vertex position (cm)

Definition at line 187 of file hadronic/ParticleMC.h.


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