Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
|
#include <G4INCLInteractionAvatar.hh>
Public Member Functions | |
InteractionAvatar (G4double, G4INCL::Nucleus *, G4INCL::Particle *) | |
InteractionAvatar (G4double, G4INCL::Nucleus *, G4INCL::Particle *, G4INCL::Particle *) | |
virtual | ~InteractionAvatar () |
Public Member Functions inherited from G4INCL::IAvatar | |
IAvatar () | |
IAvatar (G4double time) | |
virtual | ~IAvatar () |
virtual G4INCL::IChannel * | getChannel () const =0 |
G4INCL::FinalState * | getFinalState () |
virtual void | preInteraction ()=0 |
virtual FinalState * | postInteraction (FinalState *)=0 |
G4double | getTime () const |
virtual ParticleList | getParticles () const =0 |
virtual std::string | dump () const =0 |
AvatarType | getType () const |
G4bool | isACollision () const |
G4bool | isADecay () const |
void | setType (AvatarType t) |
long | getID () const |
std::string | toString () |
Static Public Attributes | |
static const G4double | locEAccuracy = 1.E-4 |
Target accuracy in the determination of the local-energy Q-value. | |
static const G4int | maxIterLocE = 50 |
Max number of iterations for the determination of the local-energy Q-value. | |
Protected Member Functions | |
virtual G4INCL::IChannel * | getChannel () const =0 |
G4bool | bringParticleInside (Particle *const p) |
void | preInteractionLocalEnergy (Particle *const p) |
Apply local-energy transformation, if appropriate. | |
void | preInteractionBlocking () |
Store the state of the particles before the interaction. | |
void | preInteraction () |
FinalState * | postInteraction (FinalState *) |
void | restoreParticles () const |
Restore the state of both particles. | |
G4bool | shouldUseLocalEnergy () const |
true if the given avatar should use local energy | |
G4bool | enforceEnergyConservation (FinalState *const fs) |
Enforce energy conservation. | |
Definition at line 61 of file G4INCLInteractionAvatar.hh.
G4INCL::InteractionAvatar::InteractionAvatar | ( | G4double | time, |
G4INCL::Nucleus * | n, | ||
G4INCL::Particle * | p1 | ||
) |
Definition at line 64 of file G4INCLInteractionAvatar.cc.
G4INCL::InteractionAvatar::InteractionAvatar | ( | G4double | time, |
G4INCL::Nucleus * | n, | ||
G4INCL::Particle * | p1, | ||
G4INCL::Particle * | p2 | ||
) |
Definition at line 70 of file G4INCLInteractionAvatar.cc.
|
virtual |
Definition at line 78 of file G4INCLInteractionAvatar.cc.
Definition at line 131 of file G4INCLInteractionAvatar.cc.
Referenced by postInteraction().
|
protected |
Enforce energy conservation.
Final states generated by the channels might violate energy conservation because of different reasons (energy-dependent potentials, local energy...). This conservation law must therefore be enforced by hand. We do so by rescaling the momenta of the final-state particles in the CM frame. If this turns out to be impossible, this method returns false.
Definition at line 345 of file G4INCLInteractionAvatar.cc.
Referenced by G4INCL::DecayAvatar::postInteraction(), and postInteraction().
|
protectedpure virtual |
Implements G4INCL::IAvatar.
Implemented in G4INCL::BinaryCollisionAvatar, and G4INCL::DecayAvatar.
|
protectedvirtual |
Implements G4INCL::IAvatar.
Definition at line 156 of file G4INCLInteractionAvatar.cc.
Referenced by G4INCL::BinaryCollisionAvatar::postInteraction(), and G4INCL::DecayAvatar::postInteraction().
|
protectedvirtual |
Implements G4INCL::IAvatar.
Definition at line 113 of file G4INCLInteractionAvatar.cc.
Referenced by G4INCL::BinaryCollisionAvatar::preInteraction(), and G4INCL::DecayAvatar::preInteraction().
|
protected |
Store the state of the particles before the interaction.
If the interaction cannot be realised for any reason, we will need to restore the particle state as it was before. This is done by calling the restoreParticles() method.
Definition at line 81 of file G4INCLInteractionAvatar.cc.
Referenced by preInteraction().
Apply local-energy transformation, if appropriate.
p | particle to apply the transformation to |
Definition at line 106 of file G4INCLInteractionAvatar.cc.
Referenced by preInteraction().
|
protected |
Restore the state of both particles.
The state must first be stored by calling preInteractionBlocking().
Definition at line 325 of file G4INCLInteractionAvatar.cc.
Referenced by G4INCL::BinaryCollisionAvatar::getChannel(), G4INCL::DecayAvatar::postInteraction(), and postInteraction().
|
inlineprotected |
true if the given avatar should use local energy
Definition at line 101 of file G4INCLInteractionAvatar.hh.
Referenced by enforceEnergyConservation(), G4INCL::BinaryCollisionAvatar::getChannel(), postInteraction(), and preInteractionLocalEnergy().
|
protected |
Definition at line 116 of file G4INCLInteractionAvatar.hh.
Referenced by enforceEnergyConservation(), G4INCL::BinaryCollisionAvatar::getChannel(), postInteraction(), and preInteraction().
|
protected |
Definition at line 124 of file G4INCLInteractionAvatar.hh.
Referenced by postInteraction(), preInteraction(), and shouldUseLocalEnergy().
Target accuracy in the determination of the local-energy Q-value.
Definition at line 68 of file G4INCLInteractionAvatar.hh.
Max number of iterations for the determination of the local-energy Q-value.
Definition at line 70 of file G4INCLInteractionAvatar.hh.
|
protected |
Definition at line 118 of file G4INCLInteractionAvatar.hh.
Referenced by preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 121 of file G4INCLInteractionAvatar.hh.
Referenced by preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 120 of file G4INCLInteractionAvatar.hh.
Referenced by preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 122 of file G4INCLInteractionAvatar.hh.
Referenced by preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 123 of file G4INCLInteractionAvatar.hh.
Referenced by preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 119 of file G4INCLInteractionAvatar.hh.
Referenced by preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 117 of file G4INCLInteractionAvatar.hh.
Referenced by preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 118 of file G4INCLInteractionAvatar.hh.
Referenced by preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 121 of file G4INCLInteractionAvatar.hh.
Referenced by preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 120 of file G4INCLInteractionAvatar.hh.
Referenced by preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 122 of file G4INCLInteractionAvatar.hh.
Referenced by preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 123 of file G4INCLInteractionAvatar.hh.
Referenced by preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 119 of file G4INCLInteractionAvatar.hh.
Referenced by preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 117 of file G4INCLInteractionAvatar.hh.
Referenced by preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 118 of file G4INCLInteractionAvatar.hh.
Referenced by G4INCL::DecayAvatar::postInteraction(), postInteraction(), and preInteractionBlocking().
|
protected |
Definition at line 118 of file G4INCLInteractionAvatar.hh.
Referenced by G4INCL::BinaryCollisionAvatar::postInteraction(), and preInteractionBlocking().
|
protected |
Definition at line 115 of file G4INCLInteractionAvatar.hh.
Referenced by G4INCL::BinaryCollisionAvatar::dump(), G4INCL::DecayAvatar::dump(), G4INCL::BinaryCollisionAvatar::getChannel(), G4INCL::DecayAvatar::getChannel(), G4INCL::BinaryCollisionAvatar::getParticles(), G4INCL::DecayAvatar::getParticles(), G4INCL::DecayAvatar::postInteraction(), preInteraction(), preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 115 of file G4INCLInteractionAvatar.hh.
Referenced by G4INCL::BinaryCollisionAvatar::dump(), G4INCL::BinaryCollisionAvatar::getChannel(), G4INCL::BinaryCollisionAvatar::getParticles(), preInteraction(), preInteractionBlocking(), and restoreParticles().
|
protected |
Definition at line 114 of file G4INCLInteractionAvatar.hh.
Referenced by bringParticleInside(), enforceEnergyConservation(), G4INCL::BinaryCollisionAvatar::getChannel(), G4INCL::DecayAvatar::getChannel(), G4INCL::BinaryCollisionAvatar::postInteraction(), G4INCL::DecayAvatar::postInteraction(), postInteraction(), preInteractionLocalEnergy(), and shouldUseLocalEnergy().