![]() |
Belle II Software
release-06-01-15
|
Public Member Functions | |
bool | hasDaughters () |
Return whether the particle has any chidren. | |
PhotosParticle * | findLastSelf () |
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. More... | |
std::vector< PhotosParticle * > | findProductionMothers () |
Traverse the event structure and find the first set of mothers which are not of the same type as this particle. | |
std::vector< PhotosParticle * > | getDecayTree () |
Return whole decay tree starting from this particle. | |
void | boostToRestFrame (PhotosParticle *boost) |
Transform this particles four momentum from the lab frome into the rest frame of the paramter PhotosParticle. | |
void | boostDaughtersToRestFrame (PhotosParticle *boost) |
Transform the four momentum of all the daughters recursively into the frame of the "particle" PhotosParticle. | |
void | boostFromRestFrame (PhotosParticle *boost) |
Transform this particles four momentum from the rest frame of the paramter PhotosParticle, back into the lab frame. | |
void | boostDaughtersFromRestFrame (PhotosParticle *boost) |
Transform this particles four momentum from the lab frame to the rest frame of the parameter PhotosParticle. | |
void | boostAlongZ (double pz, double e) |
Do a Lorenz transformation along the Z axis. More... | |
void | rotate (int axis, double phi, int second_axis=Z_AXIS) |
rotate this particles 4-momentum by an angle phi from the axisis "axis" towards the axis "second_axis". More... | |
void | rotateDaughters (int axis, double phi, int second_axis=Z_AXIS) |
rotate 4-momentum of daughters of this particle by an angle phi from the axisis "axis" towards the axis "second_axis". | |
double | getRotationAngle (int axis, int second_axis=Z_AXIS) |
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. More... | |
double | getP () |
Get scalar momentum. | |
double | getP (int axis) |
Get momentum component in the direction of "axis" (x,y,z) | |
void | setP (int axis, double p_component) |
Set momentum component in the direction of "axis" (x,y,z) | |
virtual double | getVirtuality () |
Get sqrt(e^2-p^2) | |
virtual bool | checkMomentumConservation ()=0 |
check that the 4 momentum in conserved at the vertices producing and ending this particle | |
virtual double | getPx ()=0 |
Returns the px component of the four vector. | |
virtual double | getPy ()=0 |
Returns the py component of the four vector. | |
virtual double | getPz ()=0 |
Returns the pz component of the four vector. | |
virtual double | getE ()=0 |
Returns the energy component of the four vector. | |
virtual double | getMass ()=0 |
Get the invariant mass from the event record. | |
virtual void | setPx (double px)=0 |
Set the px component of the four vector. | |
virtual void | setPy (double py)=0 |
Set the px component of the four vector. | |
virtual void | setPz (double pz)=0 |
Set the pz component of the four vector. | |
virtual void | setE (double e)=0 |
Set the energy component of the four vector. | |
virtual void | setMothers (std::vector< PhotosParticle * > mothers)=0 |
Set the mothers of this particle via a vector of PhotosParticle. | |
virtual void | setDaughters (std::vector< PhotosParticle * > daughters)=0 |
Set the daughters of this particle via a vector of PhotosParticle. | |
virtual void | addDaughter (PhotosParticle *daughter)=0 |
Add a new daughter to this particle. | |
virtual std::vector< PhotosParticle * > | getMothers ()=0 |
Returns the mothers of this particle via a vector of PhotosParticle. | |
virtual std::vector< PhotosParticle * > | getDaughters ()=0 |
Returns the daughters of this particle via a vector of PhotosParticle. | |
virtual std::vector< PhotosParticle * > | getAllDecayProducts ()=0 |
Returns all particles in the decay tree of this particle via a vector of PhotosParticle. | |
virtual void | setPdgID (int pdg_id)=0 |
Set the PDG ID code of this particle. | |
virtual void | setMass (double mass)=0 |
Set the mass of this particle. | |
virtual void | setStatus (int status)=0 |
Set the status of this particle. | |
virtual int | getPdgID ()=0 |
Get the PDG ID code of this particle. | |
virtual int | getStatus ()=0 |
Get the status of this particle. | |
virtual int | getBarcode ()=0 |
Get the barcode of this particle. | |
virtual PhotosParticle * | createNewParticle (int pdg_id, int status, double mass, double px, double py, double pz, double e)=0 |
Create a new particle of the same type, with the given properties. More... | |
virtual void | createHistoryEntry ()=0 |
Create history entry of this particle before modifications of PHOTOS. More... | |
virtual void | createSelfDecayVertex (PhotosParticle *out)=0 |
Create a self-decay vertex for this particle with 'out' being the outgoing particle in new vertex. | |
virtual void | print ()=0 |
Print some information about this particle to standard output. | |
Static Public Attributes | |
static const int | STABLE = 1 |
Stable particle status. | |
static const int | DECAYED = 2 |
Decayed particle status. | |
static const int | HISTORY = 3 |
History particle status. | |
static const int | X_AXIS = 1 |
X Axis. | |
static const int | Y_AXIS = 2 |
Y Axis. | |
static const int | Z_AXIS = 3 |
Z Axis. | |
static const int | Z0 = 23 |
Z0 particle. | |
static const int | HIGGS = 25 |
H particle. | |
static const int | HIGGS_H = 35 |
H0 particle. | |
static const int | HIGGS_A = 36 |
A0 particle. | |
static const int | HIGGS_PLUS = 37 |
H+ particle. | |
static const int | HIGGS_MINUS = -37 |
H- particle. | |
static const int | W_PLUS = 24 |
W+ particle. | |
static const int | W_MINUS = -24 |
W- particle. | |
static const int | GAMMA = 22 |
photon | |
static const int | TAU_PLUS = -15 |
tau+ particle | |
static const int | TAU_MINUS = 15 |
tau- particle | |
static const int | TAU_NEUTRINO = 16 |
tau neutrino particle | |
static const int | TAU_ANTINEUTRINO = -16 |
tau antineutrino particle | |
static const int | MUON_PLUS = -13 |
muon+ particle | |
static const int | MUON_MINUS = 13 |
muon- particle | |
static const int | MUON_NEUTRINO = 14 |
muon neutrino particle | |
static const int | MUON_ANTINEUTRINO = -14 |
muon antineutrino particle | |
static const int | POSITRON = -11 |
e+ particle | |
static const int | ELECTRON = 11 |
e- particle | |
static const int | ELECTRON_NEUTRINO = 12 |
e neutrino particle | |
static const int | ELECTRON_ANTINEUTRINO = -12 |
e antineutrino particle | |
static const int | UP = 2 |
up quark | |
static const int | ANTIUP = -2 |
anti-up quark | |
static const int | DOWN = 1 |
down quark | |
static const int | ANTIDOWN = -1 |
anti-down quark | |
static const int | OTHER = 0 |
All other particle types. | |
Definition at line 24 of file PhotosParticle.h.
void boostAlongZ | ( | double | boost_pz, |
double | boost_e | ||
) |
Do a Lorenz transformation along the Z axis.
Boost this vector along the Z direction.
Assume no momentum components in the X or Y directions.
Definition at line 148 of file PhotosParticle.cc.
|
pure virtual |
Create history entry of this particle before modifications of PHOTOS.
Implementation of this method depends strongly on the event record.
Implemented in PhotosHEPEVTParticle.
|
pure virtual |
Create a new particle of the same type, with the given properties.
The new particle bares no relations to this particle, but it provides a way of creating a intance of the derived class. eg. createNewParticle() is used inside filhep_() so that an eg. PhotosHepMCParticle is created without the method having explicit knowledge of the PhotosHepMCParticle class
Implemented in PhotosHEPEVTParticle.
PhotosParticle * findLastSelf | ( | ) |
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 15 of file PhotosParticle.cc.
double getRotationAngle | ( | int | axis, |
int | second_axis = Z_AXIS |
||
) |
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.
Get the angle needed to rotate the 4 momentum vector so that the x (y) component disapears.
This is used to in rotating the coordinate system into a frame with only a Z component before calling boostAlongZ().
(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 129 of file PhotosParticle.cc.
void rotate | ( | int | axis, |
double | phi, | ||
int | second_axis = Z_AXIS |
||
) |
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 161 of file PhotosParticle.cc.