void SetTime(const TimeInterval &time)
const utl::Point & GetProductionPoint() const
boost::shared_ptr< const utl::Point > fProductionPoint
const TimeInterval & GetTime() const
Arrival time delay at the ground.
bool HasProductionPoint() const
void SetPosition(const utl::Point &position)
std::string GetName() const
string with particle name
static int NucleusCode(const int charge, const int atomicNumber)
Calculate particle type code for a given (A, Z)
Describes a particle for Simulation.
void SetDirection(const utl::Vector &direction)
const Particle & GetParent() const
void SetMomentum(const utl::Vector &momentum)
void SetTotalEnergy(const double totE)
Set Total (relativistic) energy.
void SetProductionPoint(const utl::Point &point)
Particle(const int type, const Source &source, const Point &position, const Vector &direction, const TimeInterval &time, const double weight, const double kineticEnergy)
Constructor using kinetic energy.
void SetWeight(const double weight)
boost::shared_ptr< Particle > fParent
Base class to report non-existing particle id's.
ParticlePropertiesPtr fProperties
double GetKineticEnergy() const
Get kinetic energy of the particle.
double GetTotalEnergy() const
Get Total (relativistic) energy.
double GetWeight() const
Particle weight (assigned by shower generator thinning algorithms)
Source GetSource() const
Source of the particle (eg. shower or background)
const Point & GetPosition() const
Position of the particle.
void SetParent(Particle &parent)
const Vector & GetDirection() const
Unit vector giving particle direction.
Vector GetMomentum() const
Vector giving particle momentum.
void SetKineticEnergy(const double ke)
Set kinetic energy of the particle.