Public Member Functions | |
PhotosHepMC3Particle () | |
PhotosHepMC3Particle (GenParticlePtr particle) | |
PhotosHepMC3Particle (int pdg_id, int status, double mass) | |
~PhotosHepMC3Particle () | |
GenParticlePtr | getHepMC3 () |
void | setMothers (std::vector< PhotosParticle * > mothers) |
void | setDaughters (std::vector< PhotosParticle * > daughters) |
void | addDaughter (PhotosParticle *daughter) |
std::vector< PhotosParticle * > | getMothers () |
std::vector< PhotosParticle * > | getDaughters () |
std::vector< PhotosParticle * > | getAllDecayProducts () |
void | setPdgID (int pdg_id) |
void | setStatus (int statu) |
void | setMass (double mass) |
int | getPdgID () |
int | getStatus () |
int | getBarcode () |
bool | checkMomentumConservation () |
PhotosHepMC3Particle * | createNewParticle (int pdg_id, int status, double mass, double px, double py, double pz, double e) |
void | createHistoryEntry () |
void | createSelfDecayVertex (PhotosParticle *out) |
void | print () |
double | getPx () |
double | getPy () |
double | getPz () |
double | getE () |
double | getMass () |
void | setPx (double px) |
void | setPy (double py) |
void | setPz (double pz) |
void | setE (double e) |
PhotosHepMC3Particle () | |
PhotosHepMC3Particle (GenParticlePtr particle) | |
PhotosHepMC3Particle (int pdg_id, int status, double mass) | |
~PhotosHepMC3Particle () | |
GenParticlePtr | getHepMC3 () |
void | setMothers (std::vector< PhotosParticle * > mothers) |
void | setDaughters (std::vector< PhotosParticle * > daughters) |
void | addDaughter (PhotosParticle *daughter) |
std::vector< PhotosParticle * > | getMothers () |
std::vector< PhotosParticle * > | getDaughters () |
std::vector< PhotosParticle * > | getAllDecayProducts () |
void | setPdgID (int pdg_id) |
void | setStatus (int statu) |
void | setMass (double mass) |
int | getPdgID () |
int | getStatus () |
int | getBarcode () |
bool | checkMomentumConservation () |
PhotosHepMC3Particle * | createNewParticle (int pdg_id, int status, double mass, double px, double py, double pz, double e) |
void | createHistoryEntry () |
void | createSelfDecayVertex (PhotosParticle *out) |
void | print () |
double | getPx () |
double | getPy () |
double | getPz () |
double | getE () |
double | getMass () |
void | setPx (double px) |
void | setPy (double py) |
void | setPz (double pz) |
void | setE (double e) |
bool | hasDaughters () |
bool | hasDaughters () |
PhotosParticle * | findLastSelf () |
PhotosParticle * | findLastSelf () |
std::vector< PhotosParticle * > | findProductionMothers () |
std::vector< PhotosParticle * > | findProductionMothers () |
std::vector< PhotosParticle * > | getDecayTree () |
std::vector< PhotosParticle * > | getDecayTree () |
void | boostToRestFrame (PhotosParticle *boost) |
void | boostToRestFrame (PhotosParticle *boost) |
void | boostDaughtersToRestFrame (PhotosParticle *boost) |
void | boostDaughtersToRestFrame (PhotosParticle *boost) |
void | boostFromRestFrame (PhotosParticle *boost) |
void | boostFromRestFrame (PhotosParticle *boost) |
void | boostDaughtersFromRestFrame (PhotosParticle *boost) |
void | boostDaughtersFromRestFrame (PhotosParticle *boost) |
void | boostAlongZ (double pz, double e) |
void | boostAlongZ (double pz, double e) |
void | rotate (int axis, double phi, int second_axis=Z_AXIS) |
void | rotate (int axis, double phi, int second_axis=Z_AXIS) |
void | rotateDaughters (int axis, double phi, int second_axis=Z_AXIS) |
void | rotateDaughters (int axis, double phi, int second_axis=Z_AXIS) |
double | getRotationAngle (int axis, int second_axis=Z_AXIS) |
double | getRotationAngle (int axis, int second_axis=Z_AXIS) |
double | getP () |
double | getP (int axis) |
double | getP () |
double | getP (int axis) |
void | setP (int axis, double p_component) |
void | setP (int axis, double p_component) |
virtual double | getVirtuality () |
virtual double | getVirtuality () |
Static Public Attributes | |
static const int | STABLE =1 |
static const int | DECAYED =2 |
static const int | HISTORY =3 |
static const int | X_AXIS =1 |
static const int | Y_AXIS =2 |
static const int | Z_AXIS =3 |
static const int | Z0 = 23 |
static const int | HIGGS = 25 |
static const int | HIGGS_H = 35 |
static const int | HIGGS_A = 36 |
static const int | HIGGS_PLUS = 37 |
static const int | HIGGS_MINUS = -37 |
static const int | W_PLUS = 24 |
static const int | W_MINUS = -24 |
static const int | GAMMA = 22 |
static const int | TAU_PLUS = -15 |
static const int | TAU_MINUS = 15 |
static const int | TAU_NEUTRINO = 16 |
static const int | TAU_ANTINEUTRINO = -16 |
static const int | MUON_PLUS = -13 |
static const int | MUON_MINUS = 13 |
static const int | MUON_NEUTRINO = 14 |
static const int | MUON_ANTINEUTRINO = -14 |
static const int | POSITRON = -11 |
static const int | ELECTRON = 11 |
static const int | ELECTRON_NEUTRINO = 12 |
static const int | ELECTRON_ANTINEUTRINO = -12 |
static const int | UP = 2 |
static const int | ANTIUP = -2 |
static const int | DOWN = 1 |
static const int | ANTIDOWN = -1 |
static const int | OTHER = 0 |
Private Member Functions | |
void | clear (std::vector< PhotosParticle * > v) |
void | clear (std::vector< PhotosParticle * > v) |
Private Attributes | |
GenParticlePtr | m_particle |
std::vector< PhotosParticle * > | m_mothers |
std::vector< PhotosParticle * > | m_daughters |
std::vector< PhotosParticle * > | m_decay_products |
std::vector< PhotosParticle * > | m_created_particles |
Definition at line 28 of file include/Photos/PhotosHepMC3Particle.h.
PhotosHepMC3Particle | ( | GenParticlePtr | particle | ) |
Constructor which keeps a pointer to the GenParticle
Definition at line 25 of file PhotosHepMC3Particle.cxx.
References m_particle.
PhotosHepMC3Particle | ( | int | pdg_id, |
int | status, | ||
double | mass ) |
Constructor which creates a new GenParticle and sets the properties pdg_id, statu and mass.
Definition at line 18 of file PhotosHepMC3Particle.cxx.
References m_particle.
~PhotosHepMC3Particle | ( | ) |
Destructor
Definition at line 29 of file PhotosHepMC3Particle.cxx.
References clear(), m_daughters, and m_mothers.
General constructor
PhotosHepMC3Particle | ( | GenParticlePtr | particle | ) |
Constructor which keeps a pointer to the GenParticle
PhotosHepMC3Particle | ( | int | pdg_id, |
int | status, | ||
double | mass ) |
Constructor which creates a new GenParticle and sets the properties pdg_id, statu and mass.
~PhotosHepMC3Particle | ( | ) |
Destructor
|
virtual |
Add a new daughter to the end vertex of this particle
Implements PhotosParticle.
Definition at line 96 of file PhotosHepMC3Particle.cxx.
References Log::Fatal(), getHepMC3(), m_daughters, m_particle, and PhotosHepMC3Particle().
|
virtual |
Add a new daughter to the end vertex of this particle
Implements PhotosParticle.
|
inherited |
|
inherited |
Do a Lorenz transformation along the Z axis.
|
inherited |
Transform this particles four momentum from the lab frame to the rest frame of the parameter PhotosParticle.
Definition at line 63 of file PhotosParticle.cxx.
References getAllDecayProducts(), and hasDaughters().
|
inherited |
Transform this particles four momentum from the lab frame to the rest frame of the parameter PhotosParticle.
|
inherited |
Transform the four momentum of all the daughters recursively into the frame of the "particle" PhotosParticle.
Definition at line 80 of file PhotosParticle.cxx.
References getAllDecayProducts(), and hasDaughters().
|
inherited |
Transform the four momentum of all the daughters recursively into the frame of the "particle" PhotosParticle.
|
inherited |
Transform this particles four momentum from the rest frame of the paramter PhotosParticle, back into the lab frame.
Definition at line 114 of file PhotosParticle.cxx.
References boostAlongZ(), getE(), getP(), getRotationAngle(), rotate(), X_AXIS, and Y_AXIS.
|
inherited |
Transform this particles four momentum from the rest frame of the paramter PhotosParticle, back into the lab frame.
|
inherited |
Transform this particles four momentum from the lab frome into the rest frame of the paramter PhotosParticle.
Definition at line 98 of file PhotosParticle.cxx.
References boostAlongZ(), getE(), getP(), getRotationAngle(), rotate(), X_AXIS, and Y_AXIS.
|
inherited |
Transform this particles four momentum from the lab frome into the rest frame of the paramter PhotosParticle.
|
virtual |
check that the 4 momentum in conserved at the vertices producing and ending this particle
Implements PhotosParticle.
Definition at line 219 of file PhotosHepMC3Particle.cxx.
References Photos::isStatusCodeIgnored(), m_particle, Photos::momentum_conservation_threshold, Log::RedirectOutput(), and Log::RevertOutput().
|
virtual |
check that the 4 momentum in conserved at the vertices producing and ending this particle
Implements PhotosParticle.
|
private |
Internal function used to clear particles from the vector
Definition at line 37 of file PhotosHepMC3Particle.cxx.
|
private |
Internal function used to clear particles from the vector
References m_created_particles, m_daughters, m_decay_products, m_mothers, and m_particle.
|
virtual |
Create history entry for HepMC event record. Creates copy of this particle with status = 3
Implements PhotosParticle.
Definition at line 291 of file PhotosHepMC3Particle.cxx.
References Photos::historyEntriesStatus, and m_particle.
|
virtual |
Create history entry for HepMC event record. Creates copy of this particle with status = 3
Implements PhotosParticle.
|
virtual |
Create a new particle of type PhotosHepMC3Particle, with the given properties. The new particle bares no relations to this particle, but it provides a way of creating a instance of this derived class. eg. createNewParticle() is used inside filhep_() so that a PhotosHepMC3Particle can be created without the method having explicit knowledge of the PhotosHepMC3Particle class
Implements PhotosParticle.
Definition at line 275 of file PhotosHepMC3Particle.cxx.
References getHepMC3(), m_created_particles, and PhotosHepMC3Particle().
|
virtual |
Create a new particle of type PhotosHepMC3Particle, with the given properties. The new particle bares no relations to this particle, but it provides a way of creating a instance of this derived class. eg. createNewParticle() is used inside filhep_() so that a PhotosHepMC3Particle can be created without the method having explicit knowledge of the PhotosHepMC3Particle class
Implements PhotosParticle.
References PhotosHepMC3Particle().
|
virtual |
Create a self-decay vertex for this particle with 'out' being the outgoing particle in new vertex
Implements PhotosParticle.
Definition at line 304 of file PhotosHepMC3Particle.cxx.
References getHepMC3(), getStatus(), m_particle, PhotosHepMC3Particle(), and setStatus().
|
virtual |
Create a self-decay vertex for this particle with 'out' being the outgoing particle in new vertex
Implements PhotosParticle.
|
inherited |
Traverse the event structure and find the final version of this particle which does not have a particle of it's own type as it's daughter. eg. Generally the final stable copy
Definition at line 16 of file PhotosParticle.cxx.
References getDaughters().
|
inherited |
Traverse the event structure and find the final version of this particle which does not have a particle of it's own type as it's daughter. eg. Generally the final stable copy
|
inherited |
Traverse the event structure and find the first set of mothers which are not of the same type as this particle.
Definition at line 31 of file PhotosParticle.cxx.
References getMothers().
|
inherited |
Traverse the event structure and find the first set of mothers which are not of the same type as this particle.
|
virtual |
Returns all particles in the decay tree of this particle via a vector of PhotosParticle
Implements PhotosParticle.
Definition at line 180 of file PhotosHepMC3Particle.cxx.
References getBarcode(), getDaughters(), PhotosParticle::hasDaughters(), and m_decay_products.
|
virtual |
Returns all particles in the decay tree of this particle via a vector of PhotosParticle
Implements PhotosParticle.
|
virtual |
Get the barcode of this particle
Implements PhotosParticle.
Definition at line 270 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Get the barcode of this particle
Implements PhotosParticle.
|
virtual |
Returns the daughters of this particle via a vector of PhotosParticle IMPORTANT: this method will remeber list from the first call. Particles (e.g. photons) added later will be ignored
Implements PhotosParticle.
Definition at line 164 of file PhotosHepMC3Particle.cxx.
References Photos::isStatusCodeIgnored(), m_daughters, m_particle, and PhotosHepMC3Particle().
|
virtual |
Returns the daughters of this particle via a vector of PhotosParticle IMPORTANT: this method will remeber list from the first call. Particles (e.g. photons) added later will be ignored
Implements PhotosParticle.
|
inherited |
Return whole decay tree starting from this particle
Definition at line 45 of file PhotosParticle.cxx.
References getBarcode(), getDaughters(), getDecayTree(), and getMothers().
|
inherited |
Return whole decay tree starting from this particle
|
virtual |
Returns the energy component of the four vector
Implements PhotosParticle.
Definition at line 353 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Returns the energy component of the four vector
Implements PhotosParticle.
GenParticlePtr getHepMC3 | ( | ) |
return the GenParticlePtr
Definition at line 45 of file PhotosHepMC3Particle.cxx.
References m_particle.
GenParticlePtr getHepMC3 | ( | ) |
return the GenParticlePtr
|
virtual |
Returns the mass taken from event record
Implements PhotosParticle.
Definition at line 385 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Returns the mass taken from event record
Implements PhotosParticle.
|
virtual |
Returns the mothers of this particle via a vector of PhotosParticle
Implements PhotosParticle.
Definition at line 153 of file PhotosHepMC3Particle.cxx.
References m_mothers, m_particle, and PhotosHepMC3Particle().
|
virtual |
Returns the mothers of this particle via a vector of PhotosParticle
Implements PhotosParticle.
|
inherited |
Get scalar momentum
Definition at line 202 of file PhotosParticle.cxx.
|
inherited |
Get scalar momentum
|
inherited |
|
inherited |
Get momentum component in the direction of "axis" (x,y,z)
|
virtual |
Get the PDG ID code of this particle
Implements PhotosParticle.
Definition at line 262 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Get the PDG ID code of this particle
Implements PhotosParticle.
|
inlinevirtual |
Returns the px component of the four vector
Implements PhotosParticle.
Definition at line 341 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Returns the px component of the four vector
Implements PhotosParticle.
|
inlinevirtual |
Returns the py component of the four vector
Implements PhotosParticle.
Definition at line 345 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Returns the py component of the four vector
Implements PhotosParticle.
|
virtual |
Returns the pz component of the four vector
Implements PhotosParticle.
Definition at line 349 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Returns the pz component of the four vector
Implements PhotosParticle.
|
inherited |
Returns the angle around the axis "axis" needed to rotate the four momenum is such a way that the non-Z component disappears and Z>0. This is used to in rotating the coordinate system into a frame with only a Z component before calling boostAlongZ().
Get the angle needed to rotate the 4 momentum vector so that the x (y) component disapears. (and the Z component is > 0)
if(getP(axis)==0){ if(getPz()>0) return 0; //no rotaion required else return M_PI; }
Definition at line 135 of file PhotosParticle.cxx.
References getP().
|
inherited |
Returns the angle around the axis "axis" needed to rotate the four momenum is such a way that the non-Z component disappears and Z>0. This is used to in rotating the coordinate system into a frame with only a Z component before calling boostAlongZ().
References Z_AXIS.
|
virtual |
Get the status of this particle
Implements PhotosParticle.
Definition at line 266 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Get the status of this particle
Implements PhotosParticle.
|
virtualinherited |
|
virtualinherited |
Get sqrt(e^2-p^2)
|
inherited |
Return whether the particle has any chidren
Definition at line 10 of file PhotosParticle.cxx.
References getDaughters().
|
inherited |
Return whether the particle has any chidren
|
virtual |
Print some information about this particle to standard output
Implements PhotosParticle.
Definition at line 334 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Print some information about this particle to standard output
Implements PhotosParticle.
|
inherited |
rotate this particles 4-momentum by an angle phi from the axisis "axis" towards the axis "second_axis".
Rotation around an axis X or Y
Definition at line 168 of file PhotosParticle.cxx.
|
inherited |
rotate this particles 4-momentum by an angle phi from the axisis "axis" towards the axis "second_axis".
References Z_AXIS.
|
inherited |
rotate 4-momentum of daughters of this particle by an angle phi from the axisis "axis" towards the axis "second_axis".
Definition at line 176 of file PhotosParticle.cxx.
References getDaughters(), and hasDaughters().
|
inherited |
rotate 4-momentum of daughters of this particle by an angle phi from the axisis "axis" towards the axis "second_axis".
References Z_AXIS.
|
virtual |
Set the daughters of this particle via a vector of PhotosParticle
Implements PhotosParticle.
Definition at line 111 of file PhotosHepMC3Particle.cxx.
References clear(), Log::Fatal(), m_daughters, m_particle, and PhotosHepMC3Particle().
|
virtual |
Set the daughters of this particle via a vector of PhotosParticle
Implements PhotosParticle.
|
virtual |
Set the energy component of the four vector
Implements PhotosParticle.
Definition at line 379 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Set the energy component of the four vector
Implements PhotosParticle.
|
virtual |
Set the mass of this particle
Implements PhotosParticle.
Definition at line 254 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Set the mass of this particle
Implements PhotosParticle.
|
virtual |
Set the mothers of this particle via a vector of PhotosParticle
Implements PhotosParticle.
Definition at line 49 of file PhotosHepMC3Particle.cxx.
References clear(), Log::Fatal(), m_mothers, m_particle, PhotosHepMC3Particle(), and PhotosParticle::STABLE.
|
virtual |
Set the mothers of this particle via a vector of PhotosParticle
Implements PhotosParticle.
|
inherited |
|
inherited |
Set momentum component in the direction of "axis" (x,y,z)
|
virtual |
Set the PDG ID code of this particle
Implements PhotosParticle.
Definition at line 250 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Set the PDG ID code of this particle
Implements PhotosParticle.
|
virtual |
Set the px component of the four vector
Implements PhotosParticle.
Definition at line 357 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Set the px component of the four vector
Implements PhotosParticle.
|
virtual |
Set the px component of the four vector
Implements PhotosParticle.
Definition at line 366 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Set the px component of the four vector
Implements PhotosParticle.
|
virtual |
Set the pz component of the four vector
Implements PhotosParticle.
Definition at line 373 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Set the pz component of the four vector
Implements PhotosParticle.
|
virtual |
Set the status of this particle
Implements PhotosParticle.
Definition at line 258 of file PhotosHepMC3Particle.cxx.
References m_particle.
|
virtual |
Set the status of this particle
Implements PhotosParticle.
|
staticinherited |
anti-down quark
Definition at line 119 of file include/Photos/PhotosParticle.h.
|
staticinherited |
anti-up quark
Definition at line 113 of file include/Photos/PhotosParticle.h.
|
staticinherited |
Decayed particle status
Definition at line 32 of file include/Photos/PhotosParticle.h.
|
staticinherited |
down quark
Definition at line 116 of file include/Photos/PhotosParticle.h.
|
staticinherited |
e- particle
Definition at line 101 of file include/Photos/PhotosParticle.h.
|
staticinherited |
e antineutrino particle
Definition at line 107 of file include/Photos/PhotosParticle.h.
|
staticinherited |
e neutrino particle
Definition at line 104 of file include/Photos/PhotosParticle.h.
|
staticinherited |
photon
Definition at line 71 of file include/Photos/PhotosParticle.h.
|
staticinherited |
H particle
Definition at line 50 of file include/Photos/PhotosParticle.h.
|
staticinherited |
A0 particle
Definition at line 56 of file include/Photos/PhotosParticle.h.
|
staticinherited |
H0 particle
Definition at line 53 of file include/Photos/PhotosParticle.h.
|
staticinherited |
H- particle
Definition at line 62 of file include/Photos/PhotosParticle.h.
|
staticinherited |
H+ particle
Definition at line 59 of file include/Photos/PhotosParticle.h.
|
staticinherited |
History particle status
Definition at line 35 of file include/Photos/PhotosParticle.h.
|
private |
list to keep track of new particles which have been created from this one, so we can call their destructor later
Definition at line 157 of file include/Photos/PhotosHepMC3Particle.h.
|
private |
A vector of this particles daughters
Definition at line 150 of file include/Photos/PhotosHepMC3Particle.h.
|
private |
A vector of all decay products of this particle
Definition at line 153 of file include/Photos/PhotosHepMC3Particle.h.
|
private |
A vector of this particles mothers
Definition at line 147 of file include/Photos/PhotosHepMC3Particle.h.
|
private |
A pointer to the GenParticle particle
Definition at line 144 of file include/Photos/PhotosHepMC3Particle.h.
|
staticinherited |
muon antineutrino particle
Definition at line 95 of file include/Photos/PhotosParticle.h.
|
staticinherited |
muon- particle
Definition at line 89 of file include/Photos/PhotosParticle.h.
|
staticinherited |
muon neutrino particle
Definition at line 92 of file include/Photos/PhotosParticle.h.
|
staticinherited |
muon+ particle
Definition at line 86 of file include/Photos/PhotosParticle.h.
|
staticinherited |
All other particle types
Definition at line 122 of file include/Photos/PhotosParticle.h.
|
staticinherited |
e+ particle
Definition at line 98 of file include/Photos/PhotosParticle.h.
|
staticinherited |
Stable particle status
Definition at line 29 of file include/Photos/PhotosParticle.h.
|
staticinherited |
tau antineutrino particle
Definition at line 83 of file include/Photos/PhotosParticle.h.
|
staticinherited |
tau- particle
Definition at line 77 of file include/Photos/PhotosParticle.h.
|
staticinherited |
tau neutrino particle
Definition at line 80 of file include/Photos/PhotosParticle.h.
|
staticinherited |
tau+ particle
Definition at line 74 of file include/Photos/PhotosParticle.h.
|
staticinherited |
up quark
Definition at line 110 of file include/Photos/PhotosParticle.h.
|
staticinherited |
W- particle
Definition at line 68 of file include/Photos/PhotosParticle.h.
|
staticinherited |
W+ particle
Definition at line 65 of file include/Photos/PhotosParticle.h.
|
staticinherited |
X Axis
Definition at line 38 of file include/Photos/PhotosParticle.h.
|
staticinherited |
Y Axis
Definition at line 41 of file include/Photos/PhotosParticle.h.
|
staticinherited |
Z0 particle
Definition at line 47 of file include/Photos/PhotosParticle.h.
|
staticinherited |
Z Axis
Definition at line 44 of file include/Photos/PhotosParticle.h.