G4INCL::IPropagationModel Class Reference

#include <G4INCLIPropagationModel.hh>

Inheritance diagram for G4INCL::IPropagationModel:

G4INCL::StandardPropagationModel

Public Member Functions

 IPropagationModel ()
virtual ~IPropagationModel ()
virtual void setNucleus (G4INCL::Nucleus *nucleus)=0
virtual G4INCL::NucleusgetNucleus ()=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::IAvatarpropagate ()=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

Detailed Description

Propagation model takes care of transporting the particles until something interesting (i.e. an avatar) happens. This avatar is then returned back to the INCL kernel for further processing.

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.


Constructor & Destructor Documentation

G4INCL::IPropagationModel::IPropagationModel (  )  [inline]

Definition at line 64 of file G4INCLIPropagationModel.hh.

00064 {}

virtual G4INCL::IPropagationModel::~IPropagationModel (  )  [inline, virtual]

Definition at line 65 of file G4INCLIPropagationModel.hh.

00065 {}


Member Function Documentation

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.

Returns:
G4INCL::Nuleus*

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.

Returns:
G4INCL::IAvatar the next avatar

Implemented in G4INCL::StandardPropagationModel.

virtual void G4INCL::IPropagationModel::setNucleus ( G4INCL::Nucleus nucleus  )  [pure virtual]

Set the nucleus for the propagation model.

Parameters:
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.


The documentation for this class was generated from the following file:
Generated on Mon May 27 17:54:07 2013 for Geant4 by  doxygen 1.4.7