Geant4_10
|
#include <G4INCLNucleus.hh>
Classes | |
struct | ConservationBalance |
Struct for conservation laws. More... | |
Public Member Functions | |
Nucleus (G4int mass, G4int charge, Config const *const conf, const G4double universeRadius=-1.) | |
virtual | ~Nucleus () |
Nucleus (const Nucleus &rhs) | |
Dummy copy constructor to silence Coverity warning. More... | |
Nucleus & | operator= (const Nucleus &rhs) |
Dummy assignment operator to silence Coverity warning. More... | |
void | initializeParticles () |
void | insertParticle (Particle *p) |
Insert a new particle (e.g. a projectile) in the nucleus. More... | |
void | applyFinalState (FinalState *) |
G4int | getInitialA () const |
G4int | getInitialZ () const |
ParticleList const & | getCreatedParticles () const |
ParticleList const & | getUpdatedParticles () const |
Particle * | getBlockedDelta () const |
Get the delta that could not decay. More... | |
void | propagateParticles (G4double step) |
G4int | getNumberOfEnteringProtons () const |
G4int | getNumberOfEnteringNeutrons () const |
G4double | computeSeparationEnergyBalance () const |
Outgoing - incoming separation energies. More... | |
G4bool | decayOutgoingDeltas () |
Force the decay of outgoing deltas. More... | |
G4bool | decayInsideDeltas () |
Force the decay of deltas inside the nucleus. More... | |
G4bool | decayOutgoingClusters () |
Force the decay of unstable outgoing clusters. More... | |
G4bool | decayMe () |
Force the phase-space decay of the Nucleus. More... | |
void | emitInsidePions () |
Force emission of all pions inside the nucleus. More... | |
void | computeRecoilKinematics () |
Compute the recoil momentum and spin of the nucleus. More... | |
ThreeVector | computeCenterOfMass () const |
Compute the current center-of-mass position. More... | |
G4double | computeTotalEnergy () const |
Compute the current total energy. More... | |
G4double | computeExcitationEnergy () const |
Compute the current excitation energy. More... | |
void | setIncomingAngularMomentum (const ThreeVector &j) |
Set the incoming angular-momentum vector. More... | |
const ThreeVector & | getIncomingAngularMomentum () const |
Get the incoming angular-momentum vector. More... | |
void | setIncomingMomentum (const ThreeVector &p) |
Set the incoming momentum vector. More... | |
const ThreeVector & | getIncomingMomentum () const |
Get the incoming momentum vector. More... | |
void | setInitialEnergy (const G4double e) |
Set the initial energy. More... | |
G4double | getInitialEnergy () const |
Get the initial energy. More... | |
G4double | getExcitationEnergy () const |
Get the excitation energy of the nucleus. More... | |
G4bool | containsDeltas () |
Returns true if the nucleus contains any deltas. More... | |
std::string | print () |
Store * | getStore () const |
void | setStore (Store *s) |
G4double | getInitialInternalEnergy () const |
G4bool | isEventTransparent () const |
Is the event transparent? More... | |
G4bool | hasRemnant () const |
Does the nucleus give a cascade remnant? More... | |
void | fillEventInfo (EventInfo *eventInfo) |
G4bool | getTryCompoundNucleus () |
G4int | getProjectileChargeNumber () const |
Return the charge number of the projectile. More... | |
G4int | getProjectileMassNumber () const |
Return the mass number of the projectile. More... | |
void | setProjectileChargeNumber (G4int n) |
Set the charge number of the projectile. More... | |
void | setProjectileMassNumber (G4int n) |
Set the mass number of the projectile. More... | |
G4double | getTransmissionBarrier (Particle const *const p) |
Get the transmission barrier. More... | |
ConservationBalance | getConservationBalance (EventInfo const &theEventInfo, const G4bool afterRecoil) const |
Compute charge, mass, energy and momentum balance. More... | |
void | useFusionKinematics () |
Adjust the kinematics for complete-fusion events. More... | |
G4double | getSurfaceRadius (Particle const *const particle) const |
Get the maximum allowed radius for a given particle. More... | |
G4double | getUniverseRadius () const |
Getter for theUniverseRadius. More... | |
void | setUniverseRadius (const G4double universeRadius) |
Setter for theUniverseRadius. More... | |
G4bool | isNucleusNucleusCollision () const |
Is it a nucleus-nucleus collision? More... | |
void | setNucleusNucleusCollision () |
Set a nucleus-nucleus collision. More... | |
void | setParticleNucleusCollision () |
Set a particle-nucleus collision. More... | |
void | setProjectileRemnant (ProjectileRemnant *const c) |
Set the projectile remnant. More... | |
ProjectileRemnant * | getProjectileRemnant () const |
Get the projectile remnant. More... | |
void | deleteProjectileRemnant () |
Delete the projectile remnant. More... | |
void | finalizeProjectileRemnant (const G4double emissionTime) |
Finalise the projectile remnant. More... | |
void | updatePotentialEnergy (Particle *p) const |
Update the particle potential energy. More... | |
void | setDensity (NuclearDensity const *const d) |
Setter for theDensity. More... | |
NuclearDensity const * | getDensity () const |
Getter for theDensity. More... | |
NuclearPotential::INuclearPotential const * | getPotential () const |
Getter for thePotential. More... | |
Public Member Functions inherited from G4INCL::Cluster | |
Cluster (const G4int Z, const G4int A, const G4bool createParticleSampler=true) | |
Standard Cluster constructor. More... | |
template<class Iterator > | |
Cluster (Iterator begin, Iterator end) | |
virtual | ~Cluster () |
Cluster (const Cluster &rhs) | |
Copy constructor. More... | |
Cluster & | operator= (const Cluster &rhs) |
Assignment operator. More... | |
void | swap (Cluster &rhs) |
Helper method for the assignment operator. More... | |
ParticleSpecies | getSpecies () const |
Get the particle species. More... | |
void | deleteParticles () |
void | clearParticles () |
void | setZ (const G4int Z) |
Set the charge number of the cluster. More... | |
void | setA (const G4int A) |
Set the mass number of the cluster. More... | |
G4double | getExcitationEnergy () const |
Get the excitation energy of the cluster. More... | |
void | setExcitationEnergy (const G4double e) |
Set the excitation energy of the cluster. More... | |
virtual G4double | getTableMass () const |
Get the real particle mass. More... | |
ParticleList const & | getParticles () const |
void | removeParticle (Particle *const p) |
Remove a particle from the cluster components. More... | |
void | addParticle (Particle *const p) |
void | addParticles (ParticleList const &pL) |
Add a list of particles to the cluster. More... | |
ParticleList | getParticleList () const |
Returns the list of particles that make up the cluster. More... | |
std::string | print () const |
void | internalBoostToCM () |
Boost to the CM of the component particles. More... | |
void | putParticlesOffShell () |
Put the cluster components off shell. More... | |
void | setPosition (const ThreeVector &position) |
Set the position of the cluster. More... | |
void | boost (const ThreeVector &aBoostVector) |
Boost the cluster with the indicated velocity. More... | |
void | freezeInternalMotion () |
Freeze the internal motion of the particles. More... | |
virtual void | rotate (const G4double angle, const ThreeVector &axis) |
Rotate position and momentum of all the particles. More... | |
virtual void | makeProjectileSpectator () |
Make all the components projectile spectators, too. More... | |
virtual void | makeTargetSpectator () |
Make all the components target spectators, too. More... | |
virtual void | makeParticipant () |
Make all the components participants, too. More... | |
ThreeVector const & | getSpin () const |
Get the spin of the nucleus. More... | |
void | setSpin (const ThreeVector &j) |
Set the spin of the nucleus. More... | |
G4INCL::ThreeVector | getAngularMomentum () const |
Get the total angular momentum (orbital + spin) More... | |
Public Member Functions inherited from G4INCL::Particle | |
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 |
void | setType (ParticleType t) |
G4bool | isNucleon () const |
ParticipantType | getParticipantType () const |
void | setParticipantType (ParticipantType const p) |
G4bool | isParticipant () const |
G4bool | isTargetSpectator () const |
G4bool | isProjectileSpectator () const |
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... | |
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 void | setMomentum (const G4INCL::ThreeVector &momentum) |
const G4INCL::ThreeVector & | getPosition () const |
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 | isInList (ParticleList const &l) const |
Check if the particle belongs to a given list. 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... | |
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... | |
Additional Inherited Members | |
Protected Member Functions inherited from G4INCL::Particle | |
void | swap (Particle &rhs) |
Helper method for the assignment operator. More... | |
Protected Attributes inherited from G4INCL::Cluster | |
ParticleList | particles |
G4double | theExcitationEnergy |
ThreeVector | theSpin |
ParticleSampler * | theParticleSampler |
Protected Attributes inherited from G4INCL::Particle | |
G4int | theZ |
G4int | theA |
ParticipantType | theParticipantType |
G4INCL::ParticleType | theType |
G4double | theEnergy |
G4double * | thePropagationEnergy |
G4double | theFrozenEnergy |
G4INCL::ThreeVector | theMomentum |
G4INCL::ThreeVector * | thePropagationMomentum |
G4INCL::ThreeVector | theFrozenMomentum |
G4INCL::ThreeVector | thePosition |
G4int | nCollisions |
G4int | nDecays |
G4double | thePotentialEnergy |
long | ID |
G4bool | rpCorrelated |
G4double | uncorrelatedMomentum |
Definition at line 64 of file G4INCLNucleus.hh.
|
virtual |
G4INCL::Nucleus::Nucleus | ( | const Nucleus & | rhs | ) |
Dummy copy constructor to silence Coverity warning.
void G4INCL::Nucleus::applyFinalState | ( | FinalState * | finalstate | ) |
Apply reaction final state information to the nucleus.
Definition at line 134 of file G4INCLNucleus.cc.
ThreeVector G4INCL::Nucleus::computeCenterOfMass | ( | ) | const |
Compute the current center-of-mass position.
Definition at line 268 of file G4INCLNucleus.cc.
G4double G4INCL::Nucleus::computeExcitationEnergy | ( | ) | const |
Compute the current excitation energy.
Definition at line 281 of file G4INCLNucleus.cc.
void G4INCL::Nucleus::computeRecoilKinematics | ( | ) |
Compute the recoil momentum and spin of the nucleus.
Definition at line 235 of file G4INCLNucleus.cc.
|
inline |
Outgoing - incoming separation energies.
Used by CDPP.
Definition at line 128 of file G4INCLNucleus.hh.
G4double G4INCL::Nucleus::computeTotalEnergy | ( | ) | const |
Compute the current total energy.
Definition at line 221 of file G4INCLNucleus.cc.
|
inline |
Returns true if the nucleus contains any deltas.
Definition at line 243 of file G4INCLNucleus.hh.
G4bool G4INCL::Nucleus::decayInsideDeltas | ( | ) |
Force the decay of deltas inside the nucleus.
Definition at line 361 of file G4INCLNucleus.cc.
G4bool G4INCL::Nucleus::decayMe | ( | ) |
Force the phase-space decay of the Nucleus.
Only applied if Z==0 or Z==A.
Definition at line 440 of file G4INCLNucleus.cc.
G4bool G4INCL::Nucleus::decayOutgoingClusters | ( | ) |
Force the decay of unstable outgoing clusters.
Definition at line 417 of file G4INCLNucleus.cc.
G4bool G4INCL::Nucleus::decayOutgoingDeltas | ( | ) |
Force the decay of outgoing deltas.
Definition at line 308 of file G4INCLNucleus.cc.
|
inline |
Delete the projectile remnant.
Definition at line 361 of file G4INCLNucleus.hh.
void G4INCL::Nucleus::emitInsidePions | ( | ) |
Force emission of all pions inside the nucleus.
Definition at line 452 of file G4INCLNucleus.cc.
Fill the event info which contains INCL output data
Definition at line 662 of file G4INCLNucleus.cc.
Finalise the projectile remnant.
Complete the treatment of the projectile remnant. If it contains nucleons, assign its excitation energy and spin. Move stuff to the outgoing list, if appropriate.
emissionTime | the emission time of the projectile remnant |
Definition at line 846 of file G4INCLNucleus.cc.
|
inline |
Get the delta that could not decay.
Definition at line 112 of file G4INCLNucleus.hh.
Nucleus::ConservationBalance G4INCL::Nucleus::getConservationBalance | ( | EventInfo const & | theEventInfo, |
const G4bool | afterRecoil | ||
) | const |
Compute charge, mass, energy and momentum balance.
Definition at line 794 of file G4INCLNucleus.cc.
|
inline |
Get the list of particles that were created by the last applied final state
Definition at line 104 of file G4INCLNucleus.hh.
|
inline |
Getter for theDensity.
Definition at line 389 of file G4INCLNucleus.hh.
|
inline |
Get the excitation energy of the nucleus.
Method computeRecoilKinematics() should be called first.
Definition at line 240 of file G4INCLNucleus.hh.
|
inline |
Get the incoming angular-momentum vector.
Definition at line 218 of file G4INCLNucleus.hh.
|
inline |
Get the incoming momentum vector.
Definition at line 226 of file G4INCLNucleus.hh.
|
inline |
|
inline |
Get the initial energy.
Definition at line 234 of file G4INCLNucleus.hh.
|
inline |
|
inline |
|
inline |
Definition at line 122 of file G4INCLNucleus.hh.
|
inline |
Definition at line 121 of file G4INCLNucleus.hh.
|
inline |
Getter for thePotential.
Definition at line 392 of file G4INCLNucleus.hh.
|
inline |
Return the charge number of the projectile.
Definition at line 283 of file G4INCLNucleus.hh.
|
inline |
Return the mass number of the projectile.
Definition at line 286 of file G4INCLNucleus.hh.
|
inline |
Get the projectile remnant.
Definition at line 358 of file G4INCLNucleus.hh.
|
inline |
Get the maximum allowed radius for a given particle.
Calls the NuclearDensity::getMaxRFromP() method for nucleons and deltas, and the NuclearDensity::getTrasmissionRadius() method for pions.
particle | pointer to a particle |
Definition at line 322 of file G4INCLNucleus.hh.
Get the transmission barrier.
Definition at line 295 of file G4INCLNucleus.hh.
|
inline |
Definition at line 280 of file G4INCLNucleus.hh.
|
inline |
Getter for theUniverseRadius.
Definition at line 337 of file G4INCLNucleus.hh.
|
inline |
Get the list of particles that were updated by the last applied final state
Definition at line 109 of file G4INCLNucleus.hh.
|
inline |
Does the nucleus give a cascade remnant?
To be called after computeRecoilKinematics().
Definition at line 273 of file G4INCLNucleus.hh.
|
virtual |
Call the Cluster method to generate the initial distribution of particles. At the beginning all particles are assigned as spectators.
Reimplemented from G4INCL::Cluster.
Definition at line 119 of file G4INCLNucleus.cc.
Insert a new particle (e.g. a projectile) in the nucleus.
Definition at line 82 of file G4INCLNucleus.hh.
G4bool G4INCL::Nucleus::isEventTransparent | ( | ) | const |
Is the event transparent?
To be called at the end of the cascade.
Definition at line 491 of file G4INCLNucleus.cc.
|
inline |
Is it a nucleus-nucleus collision?
Definition at line 343 of file G4INCLNucleus.hh.
Dummy assignment operator to silence Coverity warning.
std::string G4INCL::Nucleus::print | ( | ) |
Print the nucleus info
Definition at line 288 of file G4INCLNucleus.cc.
Propagate the particles one time step.
step | length of the time step |
Definition at line 217 of file G4INCLNucleus.cc.
|
inline |
Setter for theDensity.
Definition at line 382 of file G4INCLNucleus.hh.
|
inline |
Set the incoming angular-momentum vector.
Definition at line 213 of file G4INCLNucleus.hh.
|
inline |
Set the incoming momentum vector.
Definition at line 221 of file G4INCLNucleus.hh.
Set the initial energy.
Definition at line 231 of file G4INCLNucleus.hh.
|
inline |
Set a nucleus-nucleus collision.
Definition at line 346 of file G4INCLNucleus.hh.
|
inline |
Set a particle-nucleus collision.
Definition at line 349 of file G4INCLNucleus.hh.
Set the charge number of the projectile.
Definition at line 289 of file G4INCLNucleus.hh.
Set the mass number of the projectile.
Definition at line 292 of file G4INCLNucleus.hh.
|
inline |
Set the projectile remnant.
Definition at line 352 of file G4INCLNucleus.hh.
Definition at line 256 of file G4INCLNucleus.hh.
Setter for theUniverseRadius.
Definition at line 340 of file G4INCLNucleus.hh.
Update the particle potential energy.
Definition at line 377 of file G4INCLNucleus.hh.
void G4INCL::Nucleus::useFusionKinematics | ( | ) |
Adjust the kinematics for complete-fusion events.
Definition at line 838 of file G4INCLNucleus.cc.