Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4VIntraNuclearTransportModel Class Referenceabstract

#include <G4VIntraNuclearTransportModel.hh>

+ Inheritance diagram for G4VIntraNuclearTransportModel:

Public Member Functions

 G4VIntraNuclearTransportModel (const G4String &mName="CascadeModel", G4VPreCompoundModel *ptr=nullptr)
 
virtual ~G4VIntraNuclearTransportModel ()
 
virtual G4ReactionProductVectorPropagate (G4KineticTrackVector *theSecondaries, G4V3DNucleus *theNucleus)=0
 
virtual G4ReactionProductVectorPropagateNuclNucl (G4KineticTrackVector *theSecondaries, G4V3DNucleus *theNucleus, G4V3DNucleus *theProjectileNucleus)
 
void SetDeExcitation (G4VPreCompoundModel *ptr)
 
void Set3DNucleus (G4V3DNucleus *const value)
 
void SetPrimaryProjectile (const G4HadProjectile &aPrimary)
 
const G4StringGetModelName () const
 
virtual void ModelDescription (std::ostream &outFile) const
 
virtual void PropagateModelDescription (std::ostream &outFile) const
 
 G4VIntraNuclearTransportModel (const G4VIntraNuclearTransportModel &right)=delete
 
const G4VIntraNuclearTransportModeloperator= (const G4VIntraNuclearTransportModel &right)=delete
 
G4bool operator== (const G4VIntraNuclearTransportModel &right) const =delete
 
G4bool operator!= (const G4VIntraNuclearTransportModel &right) const =delete
 
- Public Member Functions inherited from G4HadronicInteraction
 G4HadronicInteraction (const G4String &modelName="HadronicModel")
 
virtual ~G4HadronicInteraction ()
 
virtual G4HadFinalStateApplyYourself (const G4HadProjectile &aTrack, G4Nucleus &targetNucleus)
 
virtual G4double SampleInvariantT (const G4ParticleDefinition *p, G4double plab, G4int Z, G4int A)
 
virtual G4bool IsApplicable (const G4HadProjectile &aTrack, G4Nucleus &targetNucleus)
 
G4double GetMinEnergy () const
 
G4double GetMinEnergy (const G4Material *aMaterial, const G4Element *anElement) const
 
void SetMinEnergy (G4double anEnergy)
 
void SetMinEnergy (G4double anEnergy, const G4Element *anElement)
 
void SetMinEnergy (G4double anEnergy, const G4Material *aMaterial)
 
G4double GetMaxEnergy () const
 
G4double GetMaxEnergy (const G4Material *aMaterial, const G4Element *anElement) const
 
void SetMaxEnergy (const G4double anEnergy)
 
void SetMaxEnergy (G4double anEnergy, const G4Element *anElement)
 
void SetMaxEnergy (G4double anEnergy, const G4Material *aMaterial)
 
G4int GetVerboseLevel () const
 
void SetVerboseLevel (G4int value)
 
const G4StringGetModelName () const
 
void DeActivateFor (const G4Material *aMaterial)
 
void ActivateFor (const G4Material *aMaterial)
 
void DeActivateFor (const G4Element *anElement)
 
void ActivateFor (const G4Element *anElement)
 
G4bool IsBlocked (const G4Material *aMaterial) const
 
G4bool IsBlocked (const G4Element *anElement) const
 
void SetRecoilEnergyThreshold (G4double val)
 
G4double GetRecoilEnergyThreshold () const
 
virtual const std::pair< G4double, G4doubleGetFatalEnergyCheckLevels () const
 
virtual std::pair< G4double, G4doubleGetEnergyMomentumCheckLevels () const
 
void SetEnergyMomentumCheckLevels (G4double relativeLevel, G4double absoluteLevel)
 
virtual void BuildPhysicsTable (const G4ParticleDefinition &)
 
virtual void InitialiseModel ()
 
 G4HadronicInteraction (const G4HadronicInteraction &right)=delete
 
const G4HadronicInteractionoperator= (const G4HadronicInteraction &right)=delete
 
G4bool operator== (const G4HadronicInteraction &right) const =delete
 
G4bool operator!= (const G4HadronicInteraction &right) const =delete
 

Protected Member Functions

G4V3DNucleusGet3DNucleus () const
 
G4VPreCompoundModelGetDeExcitation () const
 
const G4HadProjectileGetPrimaryProjectile () const
 
- Protected Member Functions inherited from G4HadronicInteraction
void SetModelName (const G4String &nam)
 
G4bool IsBlocked () const
 
void Block ()
 

Protected Attributes

G4String theTransportModelName
 
G4V3DNucleusthe3DNucleus
 
G4VPreCompoundModeltheDeExcitation
 
const G4HadProjectilethePrimaryProjectile
 
- Protected Attributes inherited from G4HadronicInteraction
G4HadFinalState theParticleChange
 
G4int verboseLevel
 
G4double theMinEnergy
 
G4double theMaxEnergy
 
G4bool isBlocked
 

Detailed Description

Definition at line 63 of file G4VIntraNuclearTransportModel.hh.

Constructor & Destructor Documentation

◆ G4VIntraNuclearTransportModel() [1/2]

G4VIntraNuclearTransportModel::G4VIntraNuclearTransportModel ( const G4String & mName = "CascadeModel",
G4VPreCompoundModel * ptr = nullptr )
explicit

◆ ~G4VIntraNuclearTransportModel()

G4VIntraNuclearTransportModel::~G4VIntraNuclearTransportModel ( )
virtual

Definition at line 47 of file G4VIntraNuclearTransportModel.cc.

48{}

◆ G4VIntraNuclearTransportModel() [2/2]

G4VIntraNuclearTransportModel::G4VIntraNuclearTransportModel ( const G4VIntraNuclearTransportModel & right)
delete

Member Function Documentation

◆ Get3DNucleus()

G4V3DNucleus * G4VIntraNuclearTransportModel::Get3DNucleus ( ) const
inlineprotected

Definition at line 119 of file G4VIntraNuclearTransportModel.hh.

120{
121 return the3DNucleus;
122}

◆ GetDeExcitation()

G4VPreCompoundModel * G4VIntraNuclearTransportModel::GetDeExcitation ( ) const
inlineprotected

Definition at line 129 of file G4VIntraNuclearTransportModel.hh.

130{
131 return theDeExcitation;
132}

Referenced by G4BinaryCascade::G4BinaryCascade().

◆ GetModelName()

const G4String & G4VIntraNuclearTransportModel::GetModelName ( ) const
inline

Definition at line 114 of file G4VIntraNuclearTransportModel.hh.

115{
117}

◆ GetPrimaryProjectile()

const G4HadProjectile * G4VIntraNuclearTransportModel::GetPrimaryProjectile ( ) const
inlineprotected

◆ ModelDescription()

void G4VIntraNuclearTransportModel::ModelDescription ( std::ostream & outFile) const
virtual

Reimplemented from G4HadronicInteraction.

Reimplemented in G4BinaryCascade, G4CascadeInterface, and G4INCLXXInterface.

Definition at line 50 of file G4VIntraNuclearTransportModel.cc.

51{
52 outFile << "G4VIntraNuclearTransportModel is abstract class.\n";
53 G4Exception("G4VIntraNuclearTransportModel::ModelDescription()","G4VINT01",
55 "G4VIntraNuclearTransportModel is abstract class, no description available");
56}
@ FatalException
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)

◆ operator!=()

G4bool G4VIntraNuclearTransportModel::operator!= ( const G4VIntraNuclearTransportModel & right) const
delete

◆ operator=()

const G4VIntraNuclearTransportModel & G4VIntraNuclearTransportModel::operator= ( const G4VIntraNuclearTransportModel & right)
delete

◆ operator==()

G4bool G4VIntraNuclearTransportModel::operator== ( const G4VIntraNuclearTransportModel & right) const
delete

◆ Propagate()

virtual G4ReactionProductVector * G4VIntraNuclearTransportModel::Propagate ( G4KineticTrackVector * theSecondaries,
G4V3DNucleus * theNucleus )
pure virtual

◆ PropagateModelDescription()

void G4VIntraNuclearTransportModel::PropagateModelDescription ( std::ostream & outFile) const
virtual

Reimplemented in G4BinaryCascade, and G4GeneratorPrecompoundInterface.

Definition at line 58 of file G4VIntraNuclearTransportModel.cc.

59{
60 outFile << "G4VIntraNuclearTransportModel is abstract class, missing description.\n";
61}

Referenced by G4TheoFSGenerator::ModelDescription().

◆ PropagateNuclNucl()

G4ReactionProductVector * G4VIntraNuclearTransportModel::PropagateNuclNucl ( G4KineticTrackVector * theSecondaries,
G4V3DNucleus * theNucleus,
G4V3DNucleus * theProjectileNucleus )
virtual

Reimplemented in G4GeneratorPrecompoundInterface.

Definition at line 64 of file G4VIntraNuclearTransportModel.cc.

66{
67 G4Exception("G4VIntraNuclearTransportModel::Propagate()","G4VINT02",
69 "Propagate method for nucleus-nucleus interactions not implemented");
70 return nullptr;
71}

Referenced by G4TheoFSGenerator::ApplyYourself().

◆ Set3DNucleus()

void G4VIntraNuclearTransportModel::Set3DNucleus ( G4V3DNucleus *const value)
inline

Definition at line 124 of file G4VIntraNuclearTransportModel.hh.

125{
126 delete the3DNucleus; the3DNucleus = value;
127}

◆ SetDeExcitation()

void G4VIntraNuclearTransportModel::SetDeExcitation ( G4VPreCompoundModel * ptr)
inline

◆ SetPrimaryProjectile()

void G4VIntraNuclearTransportModel::SetPrimaryProjectile ( const G4HadProjectile & aPrimary)
inline

Definition at line 148 of file G4VIntraNuclearTransportModel.hh.

149{
150 // NOTE: Previous pointer is NOT deleted: passed by reference, no ownership
151 thePrimaryProjectile = &aPrimary;
152}

Referenced by G4TheoFSGenerator::ApplyYourself().

Member Data Documentation

◆ the3DNucleus

G4V3DNucleus* G4VIntraNuclearTransportModel::the3DNucleus
protected

◆ theDeExcitation

◆ thePrimaryProjectile

const G4HadProjectile* G4VIntraNuclearTransportModel::thePrimaryProjectile
protected

Definition at line 111 of file G4VIntraNuclearTransportModel.hh.

Referenced by GetPrimaryProjectile(), and SetPrimaryProjectile().

◆ theTransportModelName

G4String G4VIntraNuclearTransportModel::theTransportModelName
protected

Definition at line 105 of file G4VIntraNuclearTransportModel.hh.

Referenced by GetModelName().


The documentation for this class was generated from the following files: