#include <G4HadronicInteraction.hh>
|
| G4HadronicInteraction (const G4String &modelName="HadronicModel") |
|
virtual | ~G4HadronicInteraction () |
|
virtual G4HadFinalState * | ApplyYourself (const G4HadProjectile &aTrack, G4Nucleus &targetNucleus)=0 |
|
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 G4String & | GetModelName () 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, G4double > | GetFatalEnergyCheckLevels () const |
|
virtual std::pair< G4double,
G4double > | GetEnergyMomentumCheckLevels () const |
|
void | SetEnergyMomentumCheckLevels (G4double relativeLevel, G4double absoluteLevel) |
|
virtual void | ModelDescription (std::ostream &outFile) const |
|
virtual void | BuildPhysicsTable (const G4ParticleDefinition &) |
|
virtual void | InitialiseModel () |
|
Definition at line 64 of file G4HadronicInteraction.hh.
G4HadronicInteraction::G4HadronicInteraction |
( |
const G4String & |
modelName = "HadronicModel" | ) |
|
|
explicit |
Definition at line 42 of file G4HadronicInteraction.cc.
44 isBlocked(
false), recoilEnergyThreshold(0.0), theModelName(modelName),
void RegisterMe(G4HadronicInteraction *aModel)
static G4HadronicInteractionRegistry * Instance()
static constexpr double GeV
G4HadronicInteraction::~G4HadronicInteraction |
( |
| ) |
|
|
virtual |
void G4HadronicInteraction::ActivateFor |
( |
const G4Material * |
aMaterial | ) |
|
|
inline |
Definition at line 121 of file G4HadronicInteraction.hh.
G4double GetMinEnergy() const
G4double GetMaxEnergy() const
void SetMinEnergy(G4double anEnergy)
void SetMaxEnergy(const G4double anEnergy)
void G4HadronicInteraction::ActivateFor |
( |
const G4Element * |
anElement | ) |
|
|
inline |
Definition at line 129 of file G4HadronicInteraction.hh.
G4double GetMinEnergy() const
G4double GetMaxEnergy() const
void SetMinEnergy(G4double anEnergy)
void SetMaxEnergy(const G4double anEnergy)
Implemented in G4FissLib, G4INCLXXInterface, G4CascadeInterface, G4ParticleHPInelastic, G4UrQMD1_3Model, G4WilsonAbrasionModel, G4EMDissociation, G4ParticleHPThermalScattering, G4HIJING_Model, G4LMsdGenerator, G4MuonMinusBoundDecay, G4BinaryCascade, G4EmCaptureCascade, G4MuMinusCapturePrecompound, G4LFission, G4PreCompoundModel, G4LEnp, G4LENDInelastic, CexmcChargeExchangeProductionModel< OutputParticle >, G4GeneratorPrecompoundInterface, G4QMDReaction, G4TheoFSGenerator, G4LEHadronProtonElastic, G4LEpp, G4LENDFission, G4LENDCapture, G4LENDElastic, G4LowEIonFragmentation, G4ChargeExchange, G4NeutronRadCapture, G4LENDModel, G4ParticleHPFission, G4HadronElastic, G4RPGKLongInelastic, G4RPGAntiKZeroInelastic, G4ElectroVDNuclearModel, G4MuonVDNuclearModel, G4ParticleHPCapture, G4RPGKShortInelastic, G4RPGXiZeroInelastic, G4AblaInterface, G4ParaFissionModel, G4ParticleHPElastic, G4RPGAntiXiZeroInelastic, G4RPGKPlusInelastic, G4RPGKZeroInelastic, G4RPGLambdaInelastic, G4RPGSigmaMinusInelastic, G4RPGAntiNeutronInelastic, G4RPGAntiOmegaMinusInelastic, G4RPGAntiSigmaMinusInelastic, G4RPGAntiXiMinusInelastic, G4RPGOmegaMinusInelastic, G4RPGAntiLambdaInelastic, G4RPGAntiProtonInelastic, G4RPGAntiSigmaPlusInelastic, G4RPGSigmaPlusInelastic, G4RPGXiMinusInelastic, G4RPGKMinusInelastic, G4RPGNeutronInelastic, G4RPGProtonInelastic, G4RPGPiMinusInelastic, G4RPGPiPlusInelastic, and G4BinaryLightIonReaction.
void G4HadronicInteraction::Block |
( |
| ) |
|
|
inlineprotected |
void G4HadronicInteraction::DeActivateFor |
( |
const G4Material * |
aMaterial | ) |
|
void G4HadronicInteraction::DeActivateFor |
( |
const G4Element * |
anElement | ) |
|
std::pair< G4double, G4double > G4HadronicInteraction::GetEnergyMomentumCheckLevels |
( |
| ) |
const |
|
virtual |
const std::pair< G4double, G4double > G4HadronicInteraction::GetFatalEnergyCheckLevels |
( |
| ) |
const |
|
virtual |
G4double G4HadronicInteraction::GetMaxEnergy |
( |
| ) |
const |
|
inline |
Definition at line 146 of file G4HadronicInteraction.cc.
149 if(
IsBlocked(aMaterial) ) {
return 0.0; }
150 if(
IsBlocked(anElement) ) {
return 0.0; }
151 size_t length = theMaxEnergyListElements.size();
153 for(
size_t i=0; i<length; ++i ) {
154 if( anElement == theMaxEnergyListElements[i].
second )
155 {
return theMaxEnergyListElements[i].first; }
158 length = theMaxEnergyList.size();
160 for(
size_t i=0; i<length; ++i ) {
161 if( aMaterial == theMaxEnergyList[i].
second )
162 {
return theMaxEnergyList[i].first; }
167 G4cout <<
"*** Warning from HadronicInteraction::GetMaxEnergy" <<
G4endl
168 <<
" material " << aMaterial->
GetName()
169 <<
" not found in min energy List" <<
G4endl;
const G4String & GetName() const
static constexpr double second
G4GLOB_DLL std::ostream G4cout
G4double G4HadronicInteraction::GetMinEnergy |
( |
| ) |
const |
|
inline |
Definition at line 76 of file G4HadronicInteraction.cc.
79 if(
IsBlocked(aMaterial) ) {
return 0.0; }
80 if(
IsBlocked(anElement) ) {
return 0.0; }
81 size_t length = theMinEnergyListElements.size();
83 for(
size_t i=0; i<length; ++i ) {
84 if( anElement == theMinEnergyListElements[i].
second )
85 {
return theMinEnergyListElements[i].first; }
88 length = theMinEnergyList.size();
90 for(
size_t i=0; i<length; ++i ) {
91 if( aMaterial == theMinEnergyList[i].
second )
92 {
return theMinEnergyList[i].first; }
97 G4cout <<
"*** Warning from HadronicInteraction::GetMinEnergy" <<
G4endl
98 <<
" material " << aMaterial->
GetName()
99 <<
" not found in min energy List" <<
G4endl;
const G4String & GetName() const
static constexpr double second
G4GLOB_DLL std::ostream G4cout
const G4String& G4HadronicInteraction::GetModelName |
( |
| ) |
const |
|
inline |
G4double G4HadronicInteraction::GetRecoilEnergyThreshold |
( |
| ) |
const |
|
inline |
G4int G4HadronicInteraction::GetVerboseLevel |
( |
| ) |
const |
|
inline |
void G4HadronicInteraction::InitialiseModel |
( |
| ) |
|
|
virtual |
Definition at line 227 of file G4HadronicInteraction.cc.
229 for (
size_t i=0; i<theBlockedList.size(); ++i) {
230 if (aMaterial == theBlockedList[i])
return true;
G4bool G4HadronicInteraction::IsBlocked |
( |
const G4Element * |
anElement | ) |
const |
Definition at line 236 of file G4HadronicInteraction.cc.
238 for (
size_t i=0; i<theBlockedListElements.size(); ++i) {
239 if (anElement == theBlockedListElements[i])
return true;
G4bool G4HadronicInteraction::IsBlocked |
( |
| ) |
const |
|
inlineprotected |
void G4HadronicInteraction::ModelDescription |
( |
std::ostream & |
outFile | ) |
const |
|
virtual |
Reimplemented in G4INCLXXInterface, G4ElasticHadrNucleusHE, G4CascadeInterface, G4ParticleHPInelastic, G4WilsonAbrasionModel, G4ParticleHPThermalScattering, G4VIntraNuclearTransportModel, G4LMsdGenerator, G4BinaryCascade, G4MuonMinusBoundDecay, G4PreCompoundModel, G4QMDReaction, G4EmCaptureCascade, G4LFission, G4MuMinusCapturePrecompound, G4HadronElastic, G4TheoFSGenerator, G4ParticleHPElastic, G4ParticleHPFission, G4ParticleHPCapture, G4ChipsElasticModel, G4AblaInterface, G4ElectroVDNuclearModel, G4MuonVDNuclearModel, and G4BinaryLightIonReaction.
Definition at line 257 of file G4HadronicInteraction.cc.
259 outFile <<
"The description for this model has not been written yet.\n";
void G4HadronicInteraction::SetEnergyMomentumCheckLevels |
( |
G4double |
relativeLevel, |
|
|
G4double |
absoluteLevel |
|
) |
| |
|
inline |
Definition at line 150 of file G4HadronicInteraction.hh.
151 { epCheckLevels.first = relativeLevel;
152 epCheckLevels.second = absoluteLevel; }
void G4HadronicInteraction::SetMaxEnergy |
( |
const G4double |
anEnergy | ) |
|
|
inline |
Definition at line 174 of file G4HadronicInteraction.cc.
178 G4cout <<
"*** Warning from HadronicInteraction::SetMaxEnergy" <<
G4endl
179 <<
"Warning: The model is not active for the Element "
182 size_t length = theMaxEnergyListElements.size();
184 for(
size_t i=0; i<length; ++i ) {
185 if( anElement == theMaxEnergyListElements[i].
second )
187 theMaxEnergyListElements[i].first = anEnergy;
192 theMaxEnergyListElements.push_back(std::pair<G4double, const G4Element *>(anEnergy, anElement));
static constexpr double second
G4GLOB_DLL std::ostream G4cout
const G4String & GetName() const
Definition at line 195 of file G4HadronicInteraction.cc.
199 G4cout <<
"*** Warning from HadronicInteraction::SetMaxEnergy" <<
G4endl
200 <<
"Warning: The model is not active for the Material "
203 size_t length = theMaxEnergyList.size();
205 for(
size_t i=0; i<length; ++i ) {
206 if( aMaterial == theMaxEnergyList[i].
second )
208 theMaxEnergyList[i].first = anEnergy;
213 theMaxEnergyList.push_back(std::pair<G4double, const G4Material *>(anEnergy, aMaterial));
const G4String & GetName() const
static constexpr double second
G4GLOB_DLL std::ostream G4cout
void G4HadronicInteraction::SetMinEnergy |
( |
G4double |
anEnergy | ) |
|
|
inline |
Definition at line 104 of file G4HadronicInteraction.cc.
108 G4cout <<
"*** Warning from HadronicInteraction::SetMinEnergy" <<
G4endl
109 <<
" The model is not active for the Element "
112 size_t length = theMinEnergyListElements.size();
114 for(
size_t i=0; i<length; ++i ) {
115 if( anElement == theMinEnergyListElements[i].
second )
117 theMinEnergyListElements[i].first = anEnergy;
122 theMinEnergyListElements.push_back(std::pair<G4double, const G4Element *>(anEnergy, anElement));
static constexpr double second
G4GLOB_DLL std::ostream G4cout
const G4String & GetName() const
Definition at line 125 of file G4HadronicInteraction.cc.
129 G4cout <<
"*** Warning from HadronicInteraction::SetMinEnergy" <<
G4endl
130 <<
" The model is not active for the Material "
133 size_t length = theMinEnergyList.size();
135 for(
size_t i=0; i<length; ++i ) {
136 if( aMaterial == theMinEnergyList[i].
second )
138 theMinEnergyList[i].first = anEnergy;
143 theMinEnergyList.push_back(std::pair<G4double, const G4Material *>(anEnergy, aMaterial));
const G4String & GetName() const
static constexpr double second
G4GLOB_DLL std::ostream G4cout
void G4HadronicInteraction::SetModelName |
( |
const G4String & |
nam | ) |
|
|
inlineprotected |
void G4HadronicInteraction::SetRecoilEnergyThreshold |
( |
G4double |
val | ) |
|
|
inline |
void G4HadronicInteraction::SetVerboseLevel |
( |
G4int |
value | ) |
|
|
inline |
G4bool G4HadronicInteraction::isBlocked |
|
protected |
G4double G4HadronicInteraction::theMaxEnergy |
|
protected |
G4double G4HadronicInteraction::theMinEnergy |
|
protected |
G4int G4HadronicInteraction::verboseLevel |
|
protected |
The documentation for this class was generated from the following files: