#include <G4INCLIPropagationModel.hh>
Inheritance diagram for G4INCL::IPropagationModel:
Public Member Functions | |
IPropagationModel () | |
virtual | ~IPropagationModel () |
virtual void | setNucleus (G4INCL::Nucleus *nucleus)=0 |
virtual G4INCL::Nucleus * | getNucleus ()=0 |
virtual G4double | shoot (ParticleSpecies const projectileSpecies, const G4double kineticEnergy, const G4double impactParameter, const G4double phi)=0 |
virtual G4double | getCurrentTime ()=0 |
virtual void | setStoppingTime (G4double)=0 |
virtual G4double | getStoppingTime ()=0 |
virtual G4INCL::IAvatar * | propagate ()=0 |
Protected Member Functions | |
virtual G4double | shootParticle (ParticleType const t, const G4double kineticEnergy, const G4double impactParameter, const G4double phi)=0 |
virtual G4double | shootComposite (ParticleSpecies const s, const G4double kineticEnergy, const G4double impactParameter, const G4double phi)=0 |
The propagation model idea abstracts the details of propagation. This allows us to conveniently support multiple propagation models and to compare their results. Some possible future propagation models are: straight line trajectories by using constant time step and curved trajectories.
Definition at line 62 of file G4INCLIPropagationModel.hh.
G4INCL::IPropagationModel::IPropagationModel | ( | ) | [inline] |
virtual G4INCL::IPropagationModel::~IPropagationModel | ( | ) | [inline, virtual] |
virtual G4double G4INCL::IPropagationModel::getCurrentTime | ( | ) | [pure virtual] |
Returns the current global time of the system.
Implemented in G4INCL::StandardPropagationModel.
virtual G4INCL::Nucleus* G4INCL::IPropagationModel::getNucleus | ( | ) | [pure virtual] |
Get a pointer to the nucleus.
Implemented in G4INCL::StandardPropagationModel.
virtual G4double G4INCL::IPropagationModel::getStoppingTime | ( | ) | [pure virtual] |
Get the current stopping time.
Implemented in G4INCL::StandardPropagationModel.
virtual G4INCL::IAvatar* G4INCL::IPropagationModel::propagate | ( | ) | [pure virtual] |
Propagate the particles and get the next avatar.
Implemented in G4INCL::StandardPropagationModel.
virtual void G4INCL::IPropagationModel::setNucleus | ( | G4INCL::Nucleus * | nucleus | ) | [pure virtual] |
Set the nucleus for the propagation model.
nucleus | Pointer to the nucleus |
Implemented in G4INCL::StandardPropagationModel.
Referenced by G4INCL::INCL::initializeTarget().
virtual void G4INCL::IPropagationModel::setStoppingTime | ( | G4double | ) | [pure virtual] |
Set new stopping time to the propagation.
Implemented in G4INCL::StandardPropagationModel.
virtual G4double G4INCL::IPropagationModel::shoot | ( | ParticleSpecies const | projectileSpecies, | |
const G4double | kineticEnergy, | |||
const G4double | impactParameter, | |||
const G4double | phi | |||
) | [pure virtual] |
Implemented in G4INCL::StandardPropagationModel.
virtual G4double G4INCL::IPropagationModel::shootComposite | ( | ParticleSpecies const | s, | |
const G4double | kineticEnergy, | |||
const G4double | impactParameter, | |||
const G4double | phi | |||
) | [protected, pure virtual] |
Implemented in G4INCL::StandardPropagationModel.
virtual G4double G4INCL::IPropagationModel::shootParticle | ( | ParticleType const | t, | |
const G4double | kineticEnergy, | |||
const G4double | impactParameter, | |||
const G4double | phi | |||
) | [protected, pure virtual] |
Implemented in G4INCL::StandardPropagationModel.