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::ParticleMC Class Reference

#include <ParticleMC.h>

Inheritance diagram for erhic::ParticleMC:
erhic::ParticleMCbase erhic::VirtualParticle

Public Member Functions

 ParticleMC ()
 Default constructor. More...
 
 ParticleMC (const std::string &, bool eAflag)
 
 ParticleMC (const ParticleMC &src)
 
 ~ParticleMC ()
 
virtual const ParticleMCGetParent () const
 Returns a pointer to the parent of this particle. More...
 
virtual const ParticleMCGetChild (UShort_t) const
 Returns a pointer to the nth child particle of this particle, where n is in the range [0, GetNChildren()). More...
 
virtual Bool_t HasChild (Int_t) const
 Returns true if n in the range [0, N), where N is the number of children of this particle. More...
 
- Public Member Functions inherited from erhic::ParticleMCbase
 ParticleMCbase ()
 
virtual ~ParticleMCbase ()
 Destructor. More...
 
virtual void Print (Option_t *="") const
 Print the contents of Particle to standard output. More...
 
virtual UInt_t GetIndex () const
 Returns the particle index in an event, in the range [1, N]. More...
 
virtual UShort_t GetStatus () const
 Returns the status of the particle. More...
 
virtual UShort_t GetParentIndex () const
 Returns the index of this particle's parent in an event. More...
 
virtual UShort_t GetParentIndex1 () const
 
virtual UShort_t GetChild1Index () const
 Returns the index of this particle's first child particle. More...
 
virtual UShort_t GetChildNIndex () const
 Returns the index of this particle's last child particle. More...
 
virtual UInt_t GetNChildren () const
 Returns the number of children of this particle. 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 GetM () const
 Returns invariant mass (GeV/c2). More...
 
virtual Double_t GetPt () const
 Returns momentum transverse to the beam direction. More...
 
virtual TVector3 GetVertex () const
 Returns the origin point of the particle (cm). More...
 
virtual Pid GetParentId () const
 Returns the identity information of this particle's parent. More...
 
virtual Double_t GetP () const
 Returns the total momentum (GeV). 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 Double_t GetZ () const
 Returns the variable z. More...
 
virtual Double_t GetXFeynman () const
 Returns Feynman-x. More...
 
virtual Double_t GetThetaVsGamma () const
 Returns the angle with respect to the exchange boson. More...
 
virtual Double_t GetPtVsGamma () const
 Returns the pT with respect to the exchange boson. More...
 
const EventMCGetEvent () const
 Returns a pointer to the event containing this particle. More...
 
void SetEvent (EventMC *event)
 Set the event with which to associate this particle. More...
 
virtual TLorentzVector Get4Vector () const
 Returns the (E,p) 4-vector in the lab frame. More...
 
virtual TLorentzVector PxPyPzE () const
 Returns the (E,p) 4-vector in the lab frame. More...
 
virtual TLorentzVector Get4VectorInHadronBosonFrame () const
 Returns the (E,p) 4-vector in the hadron-boson frame. More...
 
virtual Double_t GetE () const
 Returns the energy of the particle in the lab frame. More...
 
virtual void SetE (Double_t)
 
virtual void SetM (Double_t)
 
virtual void SetP (Double_t)
 
virtual void SetPt (Double_t)
 
virtual void SetPz (Double_t)
 
virtual void SetPhi (Double_t)
 
virtual void SetTheta (Double_t)
 
virtual void SetStatus (UShort_t)
 
virtual Pid Id () const
 Returns the ID of the particle. More...
 
virtual Pid GetPdgCode () const
 Returns the ID of the particle. More...
 
virtual void ComputeDerivedQuantities ()
 Sets quantities derived from the four-momentum (E, px, py, pz), namely. More...
 
virtual void ComputeEventDependentQuantities (EventMC &)
 Sets quantities that depend on the properties of the event or associations of one particle with another, namely. More...
 
virtual void SetIndex (int i)
 Sets the index of the particle i.e. More...
 
virtual void SetStatus (int i)
 Sets the status code of the particle (generally final state particles are given status == 1. More...
 
virtual void SetId (int i)
 Sets the ID of the particle. More...
 
virtual void SetParentIndex (int i)
 Sets the index of this particle's parent if it has one. More...
 
virtual void SetChild1Index (int i)
 Sets the index of this particle's first child. More...
 
virtual void SetChildNIndex (int i)
 Sets the index of this particle's last child. More...
 
virtual void Set4Vector (const TLorentzVector &)
 Sets the four-momentum of the particle. More...
 
virtual void SetVertex (const TVector3 &)
 Sets the origin coordinates. More...
 
virtual void SetParentId (int i)
 Sets the ID of this particle's parent. More...
 
- Public Member Functions inherited from erhic::VirtualParticle
virtual ~VirtualParticle ()
 Destructor. More...
 

Public Attributes

ParticleMCeAeA
 
- Public Attributes inherited from erhic::ParticleMCbase
UShort_t I
 Particle index in event. More...
 
Int_t KS
 Particle status code: see PYTHIA manual. More...
 
Int_t id
 PDG particle code. More...
 
UShort_t orig
 I of parent particle. More...
 
UShort_t orig1
 I of parent particle1. More...
 
UShort_t daughter
 I of first child particle. More...
 
UShort_t ldaughter
 I of last child particle. More...
 
Double_t px
 x component of particle momentum More...
 
Double_t py
 y component of particle momentum More...
 
Double_t pz
 z component of particle momentum More...
 
Double32_t E
 Energy of particle. More...
 
Double32_t m
 Invariant mass of particle. More...
 
Double32_t pt
 Transverse momentum of particle. More...
 
Double_t xv
 x coordinate of particle production vertex More...
 
Double_t yv
 y coordinate of particle production vertex More...
 
Double_t zv
 z coordinate of particle production vertex More...
 
Int_t parentId
 PDG code of this particle's parent. More...
 
Double32_t p
 Total momentum of particle. More...
 
Double32_t theta
 Polar angle. More...
 
Double32_t phi
 Azimuthal angle. More...
 
Double32_t rapidity
 Rapidity of particle. More...
 
Double32_t eta
 Pseudorapidity of particle. More...
 
Double32_t z
 Fraction of virtual photon energy carried by particle. More...
 
Double32_t xFeynman
 Feynman x = pz/(2sqrt(s)) More...
 
Double32_t thetaGamma
 Angle between particle and the exchange boson in the hadron beam rest frame. More...
 
Double32_t ptVsGamma
 pt w.r.t. More...
 
Double32_t phiPrf
 Azimuthal angle around virtual photon in hadron beam rest frame. More...
 
TRef event
 Persistent reference to the event containing this particle. More...
 

Detailed Description

Definition at line 403 of file erhic/ParticleMC.h.

Constructor & Destructor Documentation

◆ ParticleMC() [1/3]

erhic::ParticleMC::ParticleMC ( )
inlineexplicit

Default constructor.

Optionally pass a string with particle information in a HEPEVT format, namely: "index status id parent firstChild lastChild px py pz E m xv yv zv"

Definition at line 411 of file erhic/ParticleMC.h.

◆ ParticleMC() [2/3]

erhic::ParticleMC::ParticleMC ( const std::string &  line,
bool  eAflag 
)
explicit

Definition at line 85 of file erhic/ParticleMC.cxx.

◆ ParticleMC() [3/3]

erhic::ParticleMC::ParticleMC ( const ParticleMC src)
inline

Definition at line 414 of file erhic/ParticleMC.h.

◆ ~ParticleMC()

erhic::ParticleMC::~ParticleMC ( )

Definition at line 120 of file erhic/ParticleMC.cxx.

Member Function Documentation

◆ GetChild()

const ParticleMC * erhic::ParticleMC::GetChild ( UShort_t  u) const
virtual

Returns a pointer to the nth child particle of this particle, where n is in the range [0, GetNChildren()).

GetChild(0) returns the child whose index in this particle's event is GetChild1Index(). GetChild(GetNChildren()-1) returns the child whose index is GetChildNIndex(). Returns NULL if there is no such child particle or it cannot be accessed via the event for some reason (see GetEvent()).

Definition at line 207 of file erhic/ParticleMC.cxx.

◆ GetParent()

const ParticleMC * erhic::ParticleMC::GetParent ( ) const
virtual

Returns a pointer to the parent of this particle.

This is the particle with index GetParentIndex() in the event containing this particle (obtainable via GetEvent()). Returns NULL if this particle has no parent or if it cannot be accessed via GetEvent().

Definition at line 228 of file erhic/ParticleMC.cxx.

◆ HasChild()

Bool_t erhic::ParticleMC::HasChild ( Int_t  pdg) const
virtual

Returns true if n in the range [0, N), where N is the number of children of this particle.

Returns false otherwise. Equivalent to GetChild(n) != NULL.

Definition at line 240 of file erhic/ParticleMC.cxx.

Member Data Documentation

◆ eA

ParticleMCeA* erhic::ParticleMC::eA

Definition at line 451 of file erhic/ParticleMC.h.


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