Geant4  10.00
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
INCL Class Reference

Classes

class  RecoilCMFunctor
 Class to adjust remnant recoil in the reaction CM system. More...
 
class  RecoilFunctor
 Class to adjust remnant recoil. More...
 

Public Member Functions

 INCL (Config const *const config)
 
 ~INCL ()
 
 INCL (const INCL &rhs)
 Dummy copy constructor to silence Coverity warning. More...
 
INCLoperator= (const INCL &rhs)
 Dummy assignment operator to silence Coverity warning. More...
 
G4bool prepareReaction (const ParticleSpecies &projectileSpecies, const G4double kineticEnergy, const G4int A, const G4int Z)
 
G4bool initializeTarget (const G4int A, const G4int Z)
 
const EventInfoprocessEvent ()
 
const EventInfoprocessEvent (ParticleSpecies const &projectileSpecies, const G4double kineticEnergy, const G4int targetA, const G4int targetZ)
 
void finalizeGlobalInfo ()
 
const GlobalInfogetGlobalInfo () const
 

Private Member Functions

void rescaleOutgoingForRecoil ()
 Rescale the energies of the outgoing particles. More...
 
G4bool continueCascade ()
 Stopping criterion for the cascade. More...
 
G4int makeProjectileRemnant ()
 Make a projectile pre-fragment out of geometrical spectators. More...
 
void makeCompoundNucleus ()
 Make a compound nucleus. More...
 
G4bool preCascade (ParticleSpecies const projectileSpecies, const G4double kineticEnergy)
 Initialise the cascade. More...
 
void cascade ()
 The actual cascade loop. More...
 
void postCascade ()
 Finalise the cascade and clean up. More...
 
void initMaxInteractionDistance (ParticleSpecies const &p, const G4double kineticEnergy)
 Initialise the maximum interaction distance. More...
 
void initUniverseRadius (ParticleSpecies const &p, const G4double kineticEnergy, const G4int A, const G4int Z)
 Initialize the universe radius. More...
 
void updateGlobalInfo ()
 Update global counters and other members of theGlobalInfo object. More...
 

Private Attributes

IPropagationModelpropagationModel
 
G4int theA
 
G4int theZ
 
G4bool targetInitSuccess
 
G4double maxImpactParameter
 
G4double maxUniverseRadius
 
G4double maxInteractionDistance
 
G4double fixedImpactParameter
 
CascadeActioncascadeAction
 
Config const *const theConfig
 
Nucleusnucleus
 
G4bool forceTransparent
 
EventInfo theEventInfo
 
GlobalInfo theGlobalInfo
 
G4int minRemnantSize
 Remnant size below which cascade stops. More...
 

Constructor & Destructor Documentation

INCL ( Config const *const  config)
~INCL ( )
INCL ( const INCL rhs)

Dummy copy constructor to silence Coverity warning.

Member Function Documentation

INCL& operator= ( const INCL rhs)

Dummy assignment operator to silence Coverity warning.

G4bool prepareReaction ( const ParticleSpecies projectileSpecies,
const G4double  kineticEnergy,
const G4int  A,
const G4int  Z 
)
G4bool initializeTarget ( const G4int  A,
const G4int  Z 
)
const EventInfo& processEvent ( ParticleSpecies const projectileSpecies,
const G4double  kineticEnergy,
const G4int  targetA,
const G4int  targetZ 
)
void finalizeGlobalInfo ( )
const GlobalInfo& getGlobalInfo ( ) const

References INCL::theGlobalInfo.

void rescaleOutgoingForRecoil ( )
private

Rescale the energies of the outgoing particles.

Allow for the remnant recoil energy by rescaling the energy (and momenta) of the outgoing particles.

G4bool continueCascade ( )
private

Stopping criterion for the cascade.

Returns true if the cascade should continue, and false if any of the stopping criteria is satisfied.

G4int makeProjectileRemnant ( )
private

Make a projectile pre-fragment out of geometrical spectators.

The projectile pre-fragment is assigned an excitation energy given by $E_\mathrm{sp}-E_\mathrm{i,A}$, where $E_\mathrm{sp}$ is the sum of the energies of the spectator particles, and $E_\mathrm{i,A}$ is the sum of the smallest $A$ particle energies initially present in the projectile, $A$ being the mass of the projectile pre-fragment. This is equivalent to assuming that the excitation energy is given by the sum of the transitions of all excited projectile components to the "holes" left by the participants.

This method can modify the outgoing list and adds a projectile pre-fragment.

Returns
the number of dynamical spectators that were merged back in the projectile
void makeCompoundNucleus ( )
private

Make a compound nucleus.

Selects the projectile components that can actually enter their potential and puts them into the target nucleus. If the CN excitation energy turns out to be negative, the event is considered a transparent. This method modifies theEventInfo and theGlobalInfo.

G4bool preCascade ( ParticleSpecies const  projectileSpecies,
const G4double  kineticEnergy 
)
private

Initialise the cascade.

void cascade ( )
private

The actual cascade loop.

void postCascade ( )
private

Finalise the cascade and clean up.

void initMaxInteractionDistance ( ParticleSpecies const p,
const G4double  kineticEnergy 
)
private

Initialise the maximum interaction distance.

Used in forced CN events.

void initUniverseRadius ( ParticleSpecies const p,
const G4double  kineticEnergy,
const G4int  A,
const G4int  Z 
)
private

Initialize the universe radius.

Used for determining the energy-dependent size of the volume particles live in.

void updateGlobalInfo ( )
private

Update global counters and other members of theGlobalInfo object.

Member Data Documentation

IPropagationModel* propagationModel
private
G4int theA
private
G4int theZ
private
G4bool targetInitSuccess
private
G4double maxImpactParameter
private
G4double maxUniverseRadius
private
G4double maxInteractionDistance
private
G4double fixedImpactParameter
private
CascadeAction* cascadeAction
private
Config const* const theConfig
private

Referenced by INCL::processEvent().

Nucleus* nucleus
private
G4bool forceTransparent
private
EventInfo theEventInfo
private
GlobalInfo theGlobalInfo
private

Referenced by INCL::getGlobalInfo().

G4int minRemnantSize
private

Remnant size below which cascade stops.