34 #define INCLXX_IN_GEANT4_MODE 1
45 #ifndef G4INCLStandardPropagationModel_hh
46 #define G4INCLStandardPropagationModel_hh 1
180 #ifdef INCL_REGENERATE_AVATARS
185 void generateAllAvatarsExceptUpdated(
FinalState const *
const fs);
G4double shootComposite(ParticleSpecies const &s, const G4double kineticEnergy, const G4double impactParameter, const G4double phi)
G4double shoot(ParticleSpecies const &projectileSpecies, const G4double kineticEnergy, const G4double impactParameter, const G4double phi)
void registerAvatar(G4INCL::IAvatar *anAvatar)
Add an avatar to the storage.
void generateAllAvatars()
(Re)Generate all possible avatars.
StandardPropagationModel(LocalEnergyType localEnergyType, LocalEnergyType localEnergyDeltaType)
void generateCollisions(const ParticleList &particles)
Generate and register collisions among particles in a list, except between those in another list...
G4INCL::IAvatar * propagate(FinalState const *const fs)
Propagate all particles and return the first avatar.
G4double getReflectionTime(G4INCL::Particle const *const aParticle)
Get the reflection time.
void updateAvatars(const ParticleList &particles)
Update all avatars related to a particle.
G4INCL::Nucleus * theNucleus
void setNucleus(G4INCL::Nucleus *nucleus)
Set the nucleus for this propagation model.
void setStoppingTime(G4double)
Set the stopping time of the simulation.
Propagation model takes care of transporting the particles until something interesting (i...
G4double getTime(G4INCL::Particle const *const particleA, G4INCL::Particle const *const particleB, G4double *minDistOfApproach) const
Get the predicted time of the collision between two particles.
Final state of an interaction.
LocalEnergyType theLocalEnergyDeltaType
G4double getCurrentTime()
Returns the current global time of the system.
IAvatar * generateBinaryCollisionAvatar(Particle *const p1, Particle *const p2)
Generate a two-particle avatar.
Standard INCL4 particle propagation and avatar prediction.
void generateDecays(const ParticleList &particles)
Generate decays for particles that can decay.
G4INCL::Nucleus * getNucleus()
Get the nucleus.
virtual ~StandardPropagationModel()
G4double shootParticle(ParticleType const t, const G4double kineticEnergy, const G4double impactParameter, const G4double phi)
void generateUpdatedCollisions(const ParticleList &updatedParticles, const ParticleList &particles)
Generate and register collisions between a list of updated particles and all the other particles...
G4double getStoppingTime()
Get the current stopping time.
LocalEnergyType theLocalEnergyType