Geant4
10.02.p03
|
#include <G4INCLParticle.hh>
Public Member Functions | |
Particle () | |
Particle (ParticleType t, G4double energy, ThreeVector const &momentum, ThreeVector const &position) | |
Particle (ParticleType t, ThreeVector const &momentum, ThreeVector const &position) | |
virtual | ~Particle () |
Particle (const Particle &rhs) | |
Copy constructor. More... | |
Particle & | operator= (const Particle &rhs) |
Assignment operator. More... | |
G4INCL::ParticleType | getType () const |
virtual G4INCL::ParticleSpecies | getSpecies () const |
Get the particle species. More... | |
void | setType (ParticleType t) |
G4bool | isNucleon () const |
ParticipantType | getParticipantType () const |
void | setParticipantType (ParticipantType const p) |
G4bool | isParticipant () const |
G4bool | isTargetSpectator () const |
G4bool | isProjectileSpectator () const |
virtual void | makeParticipant () |
virtual void | makeTargetSpectator () |
virtual void | makeProjectileSpectator () |
G4bool | isPion () const |
Is this a pion? More... | |
G4bool | isResonance () const |
Is it a resonance? More... | |
G4bool | isDelta () const |
Is it a Delta? More... | |
G4int | getA () const |
Returns the baryon number. More... | |
G4int | getZ () const |
Returns the charge number. More... | |
G4double | getBeta () const |
ThreeVector | boostVector () const |
void | boost (const ThreeVector &aBoostVector) |
void | lorentzContract (const ThreeVector &aBoostVector, const ThreeVector &refPos) |
Lorentz-contract the particle position around some center. More... | |
G4double | getMass () const |
Get the cached particle mass. More... | |
G4double | getINCLMass () const |
Get the INCL particle mass. More... | |
virtual G4double | getTableMass () const |
Get the tabulated particle mass. More... | |
G4double | getRealMass () const |
Get the real particle mass. More... | |
void | setRealMass () |
Set the mass of the Particle to its real mass. More... | |
void | setTableMass () |
Set the mass of the Particle to its table mass. More... | |
void | setINCLMass () |
Set the mass of the Particle to its table mass. More... | |
G4double | getEmissionQValueCorrection (const G4int AParent, const G4int ZParent) const |
Computes correction on the emission Q-value. More... | |
G4double | getTransferQValueCorrection (const G4int AFrom, const G4int ZFrom, const G4int ATo, const G4int ZTo) const |
Computes correction on the transfer Q-value. More... | |
G4double | getInvariantMass () const |
Get the the particle invariant mass. More... | |
G4double | getKineticEnergy () const |
Get the particle kinetic energy. More... | |
G4double | getPotentialEnergy () const |
Get the particle potential energy. More... | |
void | setPotentialEnergy (G4double v) |
Set the particle potential energy. More... | |
G4double | getEnergy () const |
void | setMass (G4double mass) |
void | setEnergy (G4double energy) |
const G4INCL::ThreeVector & | getMomentum () const |
virtual G4INCL::ThreeVector | getAngularMomentum () const |
virtual void | setMomentum (const G4INCL::ThreeVector &momentum) |
const G4INCL::ThreeVector & | getPosition () const |
virtual void | setPosition (const G4INCL::ThreeVector &position) |
G4double | getHelicity () |
void | setHelicity (G4double h) |
void | propagate (G4double step) |
G4int | getNumberOfCollisions () const |
Return the number of collisions undergone by the particle. More... | |
void | setNumberOfCollisions (G4int n) |
Set the number of collisions undergone by the particle. More... | |
void | incrementNumberOfCollisions () |
Increment the number of collisions undergone by the particle. More... | |
G4int | getNumberOfDecays () const |
Return the number of decays undergone by the particle. More... | |
void | setNumberOfDecays (G4int n) |
Set the number of decays undergone by the particle. More... | |
void | incrementNumberOfDecays () |
Increment the number of decays undergone by the particle. More... | |
void | setOutOfWell () |
Mark the particle as out of its potential well. More... | |
G4bool | isOutOfWell () const |
Check if the particle is out of its potential well. More... | |
void | setEmissionTime (G4double t) |
G4double | getEmissionTime () |
ThreeVector | getTransversePosition () const |
Transverse component of the position w.r.t. the momentum. More... | |
ThreeVector | getLongitudinalPosition () const |
Longitudinal component of the position w.r.t. the momentum. More... | |
const ThreeVector & | adjustMomentumFromEnergy () |
Rescale the momentum to match the total energy. More... | |
G4double | adjustEnergyFromMomentum () |
Recompute the energy to match the momentum. More... | |
G4bool | isCluster () const |
void | setFrozenMomentum (const ThreeVector &momentum) |
Set the frozen particle momentum. More... | |
void | setFrozenEnergy (const G4double energy) |
Set the frozen particle momentum. More... | |
ThreeVector | getFrozenMomentum () const |
Get the frozen particle momentum. More... | |
G4double | getFrozenEnergy () const |
Get the frozen particle momentum. More... | |
ThreeVector | getPropagationVelocity () const |
Get the propagation velocity of the particle. More... | |
void | freezePropagation () |
Freeze particle propagation. More... | |
void | thawPropagation () |
Unfreeze particle propagation. More... | |
virtual void | rotatePositionAndMomentum (const G4double angle, const ThreeVector &axis) |
Rotate the particle position and momentum. More... | |
virtual void | rotatePosition (const G4double angle, const ThreeVector &axis) |
Rotate the particle position. More... | |
virtual void | rotateMomentum (const G4double angle, const ThreeVector &axis) |
Rotate the particle momentum. More... | |
std::string | print () const |
std::string | dump () const |
long | getID () const |
ParticleList const * | getParticles () const |
G4double | getReflectionMomentum () const |
Return the reflection momentum. More... | |
void | setUncorrelatedMomentum (const G4double p) |
Set the uncorrelated momentum. More... | |
void | rpCorrelate () |
Make the particle follow a strict r-p correlation. More... | |
void | rpDecorrelate () |
Make the particle not follow a strict r-p correlation. More... | |
G4double | getCosRPAngle () const |
Get the cosine of the angle between position and momentum. More... | |
Protected Member Functions | |
void | swap (Particle &rhs) |
Helper method for the assignment operator. More... | |
Private Member Functions | |
INCL_DECLARE_ALLOCATION_POOL (Particle) | |
Private Attributes | |
G4double | theHelicity |
G4double | emissionTime |
G4bool | outOfWell |
G4double | theMass |
Static Private Attributes | |
static G4ThreadLocal long | nextID = 1 |
Definition at line 73 of file G4INCLParticle.hh.
G4INCL::Particle::Particle | ( | ) |
Definition at line 52 of file G4INCLParticle.cc.
G4INCL::Particle::Particle | ( | ParticleType | t, |
G4double | energy, | ||
ThreeVector const & | momentum, | ||
ThreeVector const & | position | ||
) |
Definition at line 77 of file G4INCLParticle.cc.
G4INCL::Particle::Particle | ( | ParticleType | t, |
ThreeVector const & | momentum, | ||
ThreeVector const & | position | ||
) |
Definition at line 103 of file G4INCLParticle.cc.
|
inlinevirtual |
Definition at line 78 of file G4INCLParticle.hh.
|
inline |
Copy constructor.
Does not copy the particle ID.
Definition at line 84 of file G4INCLParticle.hh.
G4double G4INCL::Particle::adjustEnergyFromMomentum | ( | ) |
Recompute the energy to match the momentum.
Definition at line 142 of file G4INCLParticle.cc.
const ThreeVector & G4INCL::Particle::adjustMomentumFromEnergy | ( | ) |
Rescale the momentum to match the total energy.
Definition at line 129 of file G4INCLParticle.cc.
|
inline |
Boost the particle using a boost vector.
Example (go to the particle rest frame): particle->boost(particle->boostVector());
Definition at line 306 of file G4INCLParticle.hh.
|
inline |
Returns a three vector we can give to the boost() -method.
In order to go to the particle rest frame you need to multiply the boost vector by -1.0.
Definition at line 296 of file G4INCLParticle.hh.
|
inline |
Definition at line 727 of file G4INCLParticle.hh.
|
inline |
Freeze particle propagation.
Make the particle use theFrozenMomentum and theFrozenEnergy for propagation. The normal state can be restored by calling the thawPropagation() method.
Definition at line 667 of file G4INCLParticle.hh.
|
inline |
Returns the baryon number.
Definition at line 280 of file G4INCLParticle.hh.
|
inlinevirtual |
Get the angular momentum w.r.t. the origin
Reimplemented in G4INCL::Cluster.
Definition at line 559 of file G4INCLParticle.hh.
|
inline |
Definition at line 285 of file G4INCLParticle.hh.
|
inline |
Get the cosine of the angle between position and momentum.
Definition at line 773 of file G4INCLParticle.hh.
|
inline |
Computes correction on the emission Q-value.
Computes the correction that must be applied to INCL particles in order to obtain the correct Q-value for particle emission from a given nucleus. For absorption, the correction is obviously equal to minus the value returned by this function.
AParent | the mass number of the emitting nucleus |
ZParent | the charge number of the emitting nucleus |
Definition at line 444 of file G4INCLParticle.hh.
|
inline |
|
inline |
Get the energy of the particle in MeV.
Definition at line 529 of file G4INCLParticle.hh.
|
inline |
|
inline |
Get the frozen particle momentum.
Definition at line 653 of file G4INCLParticle.hh.
|
inline |
Definition at line 585 of file G4INCLParticle.hh.
|
inline |
|
inline |
Get the INCL particle mass.
Definition at line 338 of file G4INCLParticle.hh.
|
inline |
Get the the particle invariant mass.
Uses the relativistic invariant
Definition at line 507 of file G4INCLParticle.hh.
|
inline |
Get the particle kinetic energy.
Definition at line 518 of file G4INCLParticle.hh.
|
inline |
Longitudinal component of the position w.r.t. the momentum.
Definition at line 632 of file G4INCLParticle.hh.
|
inline |
Get the cached particle mass.
Definition at line 335 of file G4INCLParticle.hh.
|
inline |
Get the momentum vector.
Definition at line 553 of file G4INCLParticle.hh.
|
inline |
Return the number of collisions undergone by the particle.
Definition at line 593 of file G4INCLParticle.hh.
|
inline |
Return the number of decays undergone by the particle.
Definition at line 602 of file G4INCLParticle.hh.
|
inline |
Definition at line 235 of file G4INCLParticle.hh.
|
inline |
|
inline |
Set the position vector.
Definition at line 575 of file G4INCLParticle.hh.
|
inline |
Get the particle potential energy.
Definition at line 521 of file G4INCLParticle.hh.
|
inline |
Get the propagation velocity of the particle.
Definition at line 659 of file G4INCLParticle.hh.
|
inline |
Get the real particle mass.
Definition at line 396 of file G4INCLParticle.hh.
|
inline |
Return the reflection momentum.
The reflection momentum is used by calls to getSurfaceRadius to compute the radius of the sphere where the nucleon moves. It is necessary to introduce fuzzy r-p correlations.
Definition at line 756 of file G4INCLParticle.hh.
|
inlinevirtual |
Get the particle species.
Reimplemented in G4INCL::Cluster.
Definition at line 171 of file G4INCLParticle.hh.
|
inlinevirtual |
Get the tabulated particle mass.
Reimplemented in G4INCL::Cluster.
Definition at line 367 of file G4INCLParticle.hh.
|
inline |
Computes correction on the transfer Q-value.
Computes the correction that must be applied to INCL particles in order to obtain the correct Q-value for particle transfer from a given nucleus to another.
Assumes that the receving nucleus is INCL's target nucleus, with the INCL separation energy.
AFrom | the mass number of the donating nucleus |
ZFrom | the charge number of the donating nucleus |
ATo | the mass number of the receiving nucleus |
ZTo | the charge number of the receiving nucleus |
Definition at line 482 of file G4INCLParticle.hh.
|
inline |
Transverse component of the position w.r.t. the momentum.
Definition at line 627 of file G4INCLParticle.hh.
|
inline |
Get the particle type.
Definition at line 166 of file G4INCLParticle.hh.
|
inline |
Returns the charge number.
Definition at line 283 of file G4INCLParticle.hh.
|
private |
|
inline |
Increment the number of collisions undergone by the particle.
Definition at line 599 of file G4INCLParticle.hh.
|
inline |
Increment the number of decays undergone by the particle.
Definition at line 608 of file G4INCLParticle.hh.
|
inline |
Definition at line 642 of file G4INCLParticle.hh.
|
inline |
Is it a Delta?
Definition at line 274 of file G4INCLParticle.hh.
|
inline |
Is this a nucleon?
Definition at line 228 of file G4INCLParticle.hh.
|
inline |
Check if the particle is out of its potential well.
Definition at line 621 of file G4INCLParticle.hh.
|
inline |
Definition at line 243 of file G4INCLParticle.hh.
|
inline |
Is this a pion?
Definition at line 268 of file G4INCLParticle.hh.
|
inline |
Definition at line 251 of file G4INCLParticle.hh.
|
inline |
Is it a resonance?
Definition at line 271 of file G4INCLParticle.hh.
|
inline |
Definition at line 247 of file G4INCLParticle.hh.
|
inline |
Lorentz-contract the particle position around some center.
Apply Lorentz contraction to the position component along the direction of the boost vector.
aBoostVector | the boost vector (velocity) [c] |
refPos | the reference position |
Definition at line 324 of file G4INCLParticle.hh.
|
inlinevirtual |
Reimplemented in G4INCL::Cluster.
Definition at line 255 of file G4INCLParticle.hh.
|
inlinevirtual |
Reimplemented in G4INCL::Cluster.
Definition at line 263 of file G4INCLParticle.hh.
|
inlinevirtual |
Reimplemented in G4INCL::Cluster.
Definition at line 259 of file G4INCLParticle.hh.
Assignment operator.
Does not copy the particle ID.
Definition at line 156 of file G4INCLParticle.hh.
|
inline |
Definition at line 712 of file G4INCLParticle.hh.
|
inline |
|
inlinevirtual |
Rotate the particle momentum.
angle | the rotation angle |
axis | a unit vector representing the rotation axis |
Reimplemented in G4INCL::Cluster.
Definition at line 707 of file G4INCLParticle.hh.
|
inlinevirtual |
Rotate the particle position.
angle | the rotation angle |
axis | a unit vector representing the rotation axis |
Reimplemented in G4INCL::Cluster.
Definition at line 698 of file G4INCLParticle.hh.
|
inlinevirtual |
Rotate the particle position and momentum.
angle | the rotation angle |
axis | a unit vector representing the rotation axis |
Definition at line 688 of file G4INCLParticle.hh.
|
inline |
Make the particle follow a strict r-p correlation.
Definition at line 767 of file G4INCLParticle.hh.
|
inline |
Make the particle not follow a strict r-p correlation.
Definition at line 770 of file G4INCLParticle.hh.
|
inline |
|
inline |
Set the energy of the particle in MeV.
Definition at line 545 of file G4INCLParticle.hh.
|
inline |
|
inline |
Set the frozen particle momentum.
Definition at line 647 of file G4INCLParticle.hh.
|
inline |
|
inline |
Set the mass of the Particle to its table mass.
Definition at line 431 of file G4INCLParticle.hh.
|
inline |
Set the mass of the particle in MeV/c^2.
Definition at line 537 of file G4INCLParticle.hh.
|
inlinevirtual |
Set the momentum vector.
Definition at line 567 of file G4INCLParticle.hh.
|
inline |
Set the number of collisions undergone by the particle.
Definition at line 596 of file G4INCLParticle.hh.
|
inline |
Set the number of decays undergone by the particle.
Definition at line 605 of file G4INCLParticle.hh.
|
inline |
Mark the particle as out of its potential well.
This flag is used to control pions created outside their potential well in delta decay. The pion potential checks it and returns zero if it is true (necessary in order to correctly enforce energy conservation). The Nucleus::applyFinalState() method uses it to determine whether new avatars should be generated for the particle.
Definition at line 618 of file G4INCLParticle.hh.
|
inline |
Definition at line 239 of file G4INCLParticle.hh.
|
inlinevirtual |
Reimplemented in G4INCL::Cluster.
Definition at line 580 of file G4INCLParticle.hh.
|
inline |
Set the particle potential energy.
Definition at line 524 of file G4INCLParticle.hh.
|
inline |
Set the mass of the Particle to its real mass.
Definition at line 425 of file G4INCLParticle.hh.
|
inline |
Set the mass of the Particle to its table mass.
Definition at line 428 of file G4INCLParticle.hh.
|
inline |
Definition at line 175 of file G4INCLParticle.hh.
|
inline |
Set the uncorrelated momentum.
Definition at line 764 of file G4INCLParticle.hh.
|
inlineprotected |
Helper method for the assignment operator.
Definition at line 118 of file G4INCLParticle.hh.
|
inline |
Unfreeze particle propagation.
Make the particle use theMomentum and theEnergy for propagation. Call this method to restore the normal propagation if the freezePropagation() method has been called.
Definition at line 678 of file G4INCLParticle.hh.
|
private |
Definition at line 802 of file G4INCLParticle.hh.
|
protected |
Definition at line 795 of file G4INCLParticle.hh.
|
protected |
Definition at line 792 of file G4INCLParticle.hh.
|
protected |
Definition at line 793 of file G4INCLParticle.hh.
|
staticprivate |
Definition at line 806 of file G4INCLParticle.hh.
|
private |
Definition at line 803 of file G4INCLParticle.hh.
|
protected |
Definition at line 797 of file G4INCLParticle.hh.
|
protected |
Definition at line 782 of file G4INCLParticle.hh.
|
protected |
Definition at line 785 of file G4INCLParticle.hh.
|
protected |
Definition at line 787 of file G4INCLParticle.hh.
|
protected |
Definition at line 790 of file G4INCLParticle.hh.
|
private |
Definition at line 801 of file G4INCLParticle.hh.
|
private |
Definition at line 805 of file G4INCLParticle.hh.
|
protected |
Definition at line 788 of file G4INCLParticle.hh.
|
protected |
Definition at line 783 of file G4INCLParticle.hh.
|
protected |
Definition at line 791 of file G4INCLParticle.hh.
|
protected |
Definition at line 794 of file G4INCLParticle.hh.
|
protected |
Definition at line 786 of file G4INCLParticle.hh.
|
protected |
Definition at line 789 of file G4INCLParticle.hh.
|
protected |
Definition at line 784 of file G4INCLParticle.hh.
|
protected |
Definition at line 782 of file G4INCLParticle.hh.
|
protected |
Definition at line 798 of file G4INCLParticle.hh.