Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes
G4VIntraNuclearTransportModel Class Referenceabstract

#include <G4VIntraNuclearTransportModel.hh>

Inheritance diagram for G4VIntraNuclearTransportModel:
G4HadronicInteraction G4BinaryCascade G4CascadeInterface G4GeneratorPrecompoundInterface G4HIJING_Model G4INCLXXInterface G4UrQMD1_3Model

Public Member Functions

 G4VIntraNuclearTransportModel (const G4String &modelName="CascadeModel", G4VPreCompoundModel *ptr=0)
 
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
 
- Public Member Functions inherited from G4HadronicInteraction
 G4HadronicInteraction (const G4String &modelName="HadronicModel")
 
virtual ~G4HadronicInteraction ()
 
virtual G4HadFinalStateApplyYourself (const G4HadProjectile &aTrack, G4Nucleus &targetNucleus)=0
 
virtual G4double SampleInvariantT (const G4ParticleDefinition *p, G4double plab, G4int Z, G4int A)
 
virtual G4bool IsApplicable (const G4HadProjectile &, G4Nucleus &)
 
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)
 
const G4HadronicInteractionGetMyPointer () const
 
virtual G4int GetVerboseLevel () const
 
virtual 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
 
G4bool operator== (const G4HadronicInteraction &right) const
 
G4bool operator!= (const G4HadronicInteraction &right) const
 
virtual const std::pair
< G4double, G4double
GetFatalEnergyCheckLevels () const
 
virtual std::pair< G4double,
G4double
GetEnergyMomentumCheckLevels () const
 
void SetEnergyMomentumCheckLevels (G4double relativeLevel, G4double absoluteLevel)
 

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 64 of file G4VIntraNuclearTransportModel.hh.

Constructor & Destructor Documentation

G4VIntraNuclearTransportModel::G4VIntraNuclearTransportModel ( const G4String modelName = "CascadeModel",
G4VPreCompoundModel ptr = 0 
)
G4VIntraNuclearTransportModel::~G4VIntraNuclearTransportModel ( )
virtual

Definition at line 49 of file G4VIntraNuclearTransportModel.cc.

50 {
51  // if(the3DNucleus!=NULL) delete the3DNucleus;
52  // This is deleted by ~G4HadronicInteractionRegistry
53  // if(theDeExcitation!=NULL) delete theDeExcitation;
54 }

Member Function Documentation

G4V3DNucleus * G4VIntraNuclearTransportModel::Get3DNucleus ( ) const
inlineprotected

Definition at line 122 of file G4VIntraNuclearTransportModel.hh.

References the3DNucleus.

123 {
124  return the3DNucleus;
125 }
G4VPreCompoundModel * G4VIntraNuclearTransportModel::GetDeExcitation ( ) const
inlineprotected

Definition at line 132 of file G4VIntraNuclearTransportModel.hh.

References theDeExcitation.

Referenced by G4BinaryCascade::G4BinaryCascade().

133 {
134  return theDeExcitation;
135 }
const G4String & G4VIntraNuclearTransportModel::GetModelName ( ) const
inline

Definition at line 117 of file G4VIntraNuclearTransportModel.hh.

References theTransportModelName.

118 {
119  return theTransportModelName;
120 }
const G4HadProjectile * G4VIntraNuclearTransportModel::GetPrimaryProjectile ( ) const
inlineprotected
void G4VIntraNuclearTransportModel::ModelDescription ( std::ostream &  outFile) const
virtual

Reimplemented from G4HadronicInteraction.

Reimplemented in G4CascadeInterface, and G4BinaryCascade.

Definition at line 56 of file G4VIntraNuclearTransportModel.cc.

References FatalException, G4endl, and G4Exception().

57 {
58  outFile << "G4VIntraNuclearTransportModel is abstract class" << G4endl;
59  G4Exception("G4VIntraNuclearTransportModel::ModelDescription()","G4VINT01",FatalException,
60  "G4VIntraNuclearTransportModel is abstract class, no description available");
61 }
std::ofstream outFile
Definition: GammaRayTel.cc:68
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
Definition: G4Exception.cc:41
#define G4endl
Definition: G4ios.hh:61
virtual G4ReactionProductVector* G4VIntraNuclearTransportModel::Propagate ( G4KineticTrackVector theSecondaries,
G4V3DNucleus theNucleus 
)
pure virtual
void G4VIntraNuclearTransportModel::PropagateModelDescription ( std::ostream &  outFile) const
virtual

Reimplemented in G4BinaryCascade, and G4GeneratorPrecompoundInterface.

Definition at line 63 of file G4VIntraNuclearTransportModel.cc.

References G4endl.

64 {
65  outFile << "G4VIntraNuclearTransportModel is abstract class, missing description" << G4endl;
66 // G4Exception("G4VIntraNuclearTransportModel::ModelDescription()","G4VINT01",FatalException,
67 // "G4VIntraNuclearTransportModel is abstract class, no description available");
68 }
std::ofstream outFile
Definition: GammaRayTel.cc:68
#define G4endl
Definition: G4ios.hh:61
G4ReactionProductVector * G4VIntraNuclearTransportModel::PropagateNuclNucl ( G4KineticTrackVector theSecondaries,
G4V3DNucleus theNucleus,
G4V3DNucleus theProjectileNucleus 
)
virtual

Reimplemented in G4GeneratorPrecompoundInterface.

Definition at line 70 of file G4VIntraNuclearTransportModel.cc.

References FatalException, and G4Exception().

Referenced by G4TheoFSGenerator::ApplyYourself().

72 {
73  G4Exception("G4VIntraNuclearTransportModel::Propagate()","G4VINT02",FatalException,
74  "Propagate method for nucleus-nucleus interactions not implemented");
75  return 0;
76 }
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
Definition: G4Exception.cc:41
void G4VIntraNuclearTransportModel::Set3DNucleus ( G4V3DNucleus *const  value)
inline

Definition at line 127 of file G4VIntraNuclearTransportModel.hh.

References the3DNucleus.

128 {
129  delete the3DNucleus; the3DNucleus = value;
130 }
const XML_Char int const XML_Char * value
void G4VIntraNuclearTransportModel::SetDeExcitation ( G4VPreCompoundModel ptr)
inline
void G4VIntraNuclearTransportModel::SetPrimaryProjectile ( const G4HadProjectile aPrimary)
inline

Definition at line 151 of file G4VIntraNuclearTransportModel.hh.

References thePrimaryProjectile.

Referenced by G4TheoFSGenerator::ApplyYourself().

152 {
153  // NOTE: Previous pointer is NOT deleted: passed by reference, no ownership
154  thePrimaryProjectile = &aPrimary;
155 }

Field Documentation

G4V3DNucleus* G4VIntraNuclearTransportModel::the3DNucleus
protected
G4VPreCompoundModel* G4VIntraNuclearTransportModel::theDeExcitation
protected
const G4HadProjectile* G4VIntraNuclearTransportModel::thePrimaryProjectile
protected

Definition at line 114 of file G4VIntraNuclearTransportModel.hh.

Referenced by GetPrimaryProjectile(), and SetPrimaryProjectile().

G4String G4VIntraNuclearTransportModel::theTransportModelName
protected

Definition at line 108 of file G4VIntraNuclearTransportModel.hh.

Referenced by GetModelName().


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