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
Smear::ParticleMCS Class Reference

#include <ParticleMCS.h>

Inheritance diagram for Smear::ParticleMCS:
erhic::VirtualParticle

Public Member Functions

virtual ~ParticleMCS ()
 
 ParticleMCS ()
 
 ParticleMCS (const TLorentzVector &, int pdg, int status)
 
virtual Double_t GetPx () const
 
virtual Double_t GetPy () const
 
virtual Double_t GetPz () const
 
virtual Double_t GetE () const
 
virtual TLorentzVector Get4Vector () const
 
virtual TLorentzVector PxPyPzE () const
 
virtual Double_t GetM () const
 
virtual Double_t GetPt () const
 
virtual TVector3 GetVertex () const
 
virtual Double_t GetP () const
 
virtual Double_t GetTheta () const
 
virtual Double_t GetPhi () const
 
virtual Double_t GetRapidity () const
 
virtual Double_t GetEta () const
 
virtual UShort_t GetStatus () const
 
virtual ::erhic::Pid Id () const
 
virtual void SetE (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)
 
void Set4Vector (const TLorentzVector &)
 
virtual void SetId (Int_t)
 
virtual void SetStatus (Int_t)
 
virtual UShort_t GetParentIndex () const
 
virtual void Print (Option_t *="") const
 
virtual void SetVertex (const TVector3 &)
 
- Public Member Functions inherited from erhic::VirtualParticle
virtual ~VirtualParticle ()
 

Public Attributes

UShort_t status
 Status code.
 
Int_t id
 PDG particle code.
 
Double32_t px
 x component of particle momentum
 
Double32_t py
 y component of particle momentum
 
Double32_t pz
 z component of particle momentum
 
Double32_t E
 Energy of particle.
 
Double32_t pt
 Transverse momentum of particle.
 
Double32_t p
 Total momentum of particle.
 
Double32_t theta
 Polar angle.
 
Double32_t phi
 Azimuthal angle.
 

Detailed Description

A smeared Monte Carlo particle.

Definition at line 27 of file ParticleMCS.h.

Constructor & Destructor Documentation

Smear::ParticleMCS::~ParticleMCS ( )
virtual

Destructor.

Definition at line 45 of file ParticleMCS.cxx.

Smear::ParticleMCS::ParticleMCS ( )

Default constructor. Initialises the Particle from the argument string with the format I KS id orig daughter ldaughter px py pz m E xv yv zv

Definition at line 19 of file ParticleMCS.cxx.

Smear::ParticleMCS::ParticleMCS ( const TLorentzVector &  ep,
int  pdg,
int  status 
)

Construct from an E-p 4-vector, pdg code and status code.

Definition at line 32 of file ParticleMCS.cxx.

Member Function Documentation

TLorentzVector Smear::ParticleMCS::Get4Vector ( ) const
virtual

Returns the (E,p) 4-vector in the lab frame.

Implements erhic::VirtualParticle.

Definition at line 48 of file ParticleMCS.cxx.

Double_t Smear::ParticleMCS::GetE ( ) const
inlinevirtual

Returns the energy of the particle in the lab frame.

Implements erhic::VirtualParticle.

Definition at line 197 of file ParticleMCS.h.

Double_t Smear::ParticleMCS::GetEta ( ) const
virtual

Returns the pseudorapidity.

Implements erhic::VirtualParticle.

Definition at line 70 of file ParticleMCS.cxx.

Double_t Smear::ParticleMCS::GetM ( ) const
inlinevirtual

Returns the apparent mass of the smeared particle.

Todo:
Consider the implementation here. If the particle is identified (either correctly or incorrectly), it could return the PDG mass of that particle. If the particle is not identified, should it return sqrt(E^2 - p^2)? What about if p or E are not known? Return E or p? Or zero (e.g. that would work for photons, E known, p not).

Implements erhic::VirtualParticle.

Definition at line 201 of file ParticleMCS.h.

Double_t Smear::ParticleMCS::GetP ( ) const
inlinevirtual

Returns the total momentum (GeV).

Implements erhic::VirtualParticle.

Definition at line 213 of file ParticleMCS.h.

virtual UShort_t Smear::ParticleMCS::GetParentIndex ( ) const
inlinevirtual

Returns the index of the parent particle

Implements erhic::VirtualParticle.

Definition at line 156 of file ParticleMCS.h.

Double_t Smear::ParticleMCS::GetPhi ( ) const
inlinevirtual

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

Implements erhic::VirtualParticle.

Definition at line 221 of file ParticleMCS.h.

Double_t Smear::ParticleMCS::GetPt ( ) const
inlinevirtual

Returns momentum transverse to the beam direction.

Todo:
check this is set properly

Implements erhic::VirtualParticle.

Definition at line 205 of file ParticleMCS.h.

Double_t Smear::ParticleMCS::GetPx ( ) const
inlinevirtual

Returns the x component of 3-momentum.

Implements erhic::VirtualParticle.

Definition at line 185 of file ParticleMCS.h.

Double_t Smear::ParticleMCS::GetPy ( ) const
inlinevirtual

Returns the y component of 3-momentum.

Implements erhic::VirtualParticle.

Definition at line 189 of file ParticleMCS.h.

Double_t Smear::ParticleMCS::GetPz ( ) const
inlinevirtual

Returns the z component of 3-momentum.

Implements erhic::VirtualParticle.

Definition at line 193 of file ParticleMCS.h.

Double_t Smear::ParticleMCS::GetRapidity ( ) const
virtual

Returns the rapidity.

Implements erhic::VirtualParticle.

Definition at line 81 of file ParticleMCS.cxx.

UShort_t Smear::ParticleMCS::GetStatus ( ) const
inlinevirtual

Returns a status code following the PYTHIA defintion, where 21 indicates an initial-state particle and 1 indicates a final- state particle

Implements erhic::VirtualParticle.

Definition at line 225 of file ParticleMCS.h.

Double_t Smear::ParticleMCS::GetTheta ( ) const
inlinevirtual

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

Implements erhic::VirtualParticle.

Definition at line 217 of file ParticleMCS.h.

TVector3 Smear::ParticleMCS::GetVertex ( ) const
inlinevirtual

Returns the origin point of the particle (cm). (0,0,0) indicates a particle originating in the collision.

Implements erhic::VirtualParticle.

Definition at line 209 of file ParticleMCS.h.

erhic::Pid Smear::ParticleMCS::Id ( ) const
inlinevirtual

Returns the ID of the particle.

Implements erhic::VirtualParticle.

Definition at line 261 of file ParticleMCS.h.

void Smear::ParticleMCS::Print ( Option_t *  = "") const
virtual

Prints the attributes of this particle to standard output. The output format is "status id px py pz E".

Definition at line 52 of file ParticleMCS.cxx.

virtual TLorentzVector Smear::ParticleMCS::PxPyPzE ( ) const
inlinevirtual

Returns the (E,p) 4-vector in the lab frame.

Definition at line 74 of file ParticleMCS.h.

void Smear::ParticleMCS::Set4Vector ( const TLorentzVector &  )
inlinevirtual

Dummy one; just need to compile;

Implements erhic::VirtualParticle.

Definition at line 150 of file ParticleMCS.h.

virtual void Smear::ParticleMCS::SetVertex ( const TVector3 &  )
inlinevirtual

Sets the origin coordinates. No-op, just required for compilation.

Implements erhic::VirtualParticle.

Definition at line 168 of file ParticleMCS.h.


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