Geant4 10.7.0
Toolkit for the simulation of the passage of particles through matter
|
#include <G4HadronicProcess.hh>
Protected Member Functions | |
G4HadronicInteraction * | ChooseHadronicInteraction (const G4HadProjectile &aHadProjectile, G4Nucleus &aTargetNucleus, const G4Material *aMaterial, const G4Element *anElement) |
G4Nucleus * | GetTargetNucleusPointer () |
void | DumpState (const G4Track &, const G4String &, G4ExceptionDescription &) |
G4HadronicInteraction * | GetHadronicInteraction () const |
G4double | GetLastCrossSection () |
void | FillResult (G4HadFinalState *aR, const G4Track &aT) |
G4HadFinalState * | CheckResult (const G4HadProjectile &thePro, const G4Nucleus &targetNucleus, G4HadFinalState *result) |
void | CheckEnergyMomentumConservation (const G4Track &, const G4Nucleus &) |
virtual G4double | GetMeanFreePath (const G4Track &aTrack, G4double previousStepSize, G4ForceCondition *condition)=0 |
Protected Member Functions inherited from G4VProcess | |
void | SubtractNumberOfInteractionLengthLeft (G4double prevStepSize) |
void | ClearNumberOfInteractionLengthLeft () |
Protected Attributes | |
G4HadProjectile | thePro |
G4ParticleChange * | theTotalResult |
G4double | fWeight |
G4int | epReportLevel |
Protected Attributes inherited from G4VProcess | |
const G4ProcessManager * | aProcessManager = nullptr |
G4VParticleChange * | pParticleChange = nullptr |
G4ParticleChange | aParticleChange |
G4double | theNumberOfInteractionLengthLeft = -1.0 |
G4double | currentInteractionLength = -1.0 |
G4double | theInitialNumberOfInteractionLength = -1.0 |
G4String | theProcessName |
G4String | thePhysicsTableFileName |
G4ProcessType | theProcessType = fNotDefined |
G4int | theProcessSubType = -1 |
G4double | thePILfactor = 1.0 |
G4int | verboseLevel = 0 |
G4bool | enableAtRestDoIt = true |
G4bool | enableAlongStepDoIt = true |
G4bool | enablePostStepDoIt = true |
Additional Inherited Members | |
Static Public Member Functions inherited from G4VProcess | |
static const G4String & | GetProcessTypeName (G4ProcessType) |
Definition at line 68 of file G4HadronicProcess.hh.
G4HadronicProcess::G4HadronicProcess | ( | const G4String & | processName = "Hadronic" , |
G4ProcessType | procType = fHadronic |
||
) |
Definition at line 83 of file G4HadronicProcess.cc.
G4HadronicProcess::G4HadronicProcess | ( | const G4String & | processName, |
G4HadronicProcessType | subType | ||
) |
Definition at line 93 of file G4HadronicProcess.cc.
|
override |
Definition at line 101 of file G4HadronicProcess.cc.
void G4HadronicProcess::AddDataSet | ( | G4VCrossSectionDataSet * | aDataSet | ) |
Definition at line 769 of file G4HadronicProcess.cc.
Referenced by G4HadProcesses::AddCaptureCrossSection(), G4HadProcesses::AddElasticCrossSection(), G4HadProcesses::AddFissionCrossSection(), G4HadProcesses::AddInelasticCrossSection(), G4HadronElasticPhysics::AddXSection(), G4LENDBertiniGammaElectroNuclearBuilder::Build(), G4AlphaPHPBuilder::Build(), G4FTFPAntiBarionBuilder::Build(), G4QGSPAntiBarionBuilder::Build(), G4DeuteronPHPBuilder::Build(), G4NeutronLENDBuilder::Build(), G4NeutronPHPBuilder::Build(), G4He3PHPBuilder::Build(), G4BertiniKaonBuilder::Build(), G4HyperonFTFPBuilder::Build(), G4HyperonQGSPBuilder::Build(), G4FTFBinaryNeutronBuilder::Build(), G4FTFPNeutronBuilder::Build(), G4INCLXXNeutronBuilder::Build(), G4PrecoNeutronBuilder::Build(), G4QGSBinaryNeutronBuilder::Build(), G4QGSPNeutronBuilder::Build(), G4BertiniPiKBuilder::Build(), G4BertiniPionBuilder::Build(), G4BinaryPiKBuilder::Build(), G4BinaryPionBuilder::Build(), G4FTFBinaryPiKBuilder::Build(), G4FTFBinaryPionBuilder::Build(), G4FTFPPiKBuilder::Build(), G4FTFPPionBuilder::Build(), G4INCLXXPionBuilder::Build(), G4QGSBinaryPiKBuilder::Build(), G4QGSBinaryPionBuilder::Build(), G4QGSPPiKBuilder::Build(), G4QGSPPionBuilder::Build(), G4FTFBinaryProtonBuilder::Build(), G4FTFPProtonBuilder::Build(), G4INCLXXProtonBuilder::Build(), G4PrecoProtonBuilder::Build(), G4ProtonPHPBuilder::Build(), G4QGSBinaryProtonBuilder::Build(), G4QGSPLundStrFragmProtonBuilder::Build(), G4QGSPProtonBuilder::Build(), G4TritonPHPBuilder::Build(), LBE::ConstructHad(), G4NeutronCrossSectionXS::ConstructProcess(), G4EmExtraPhysics::ConstructProcess(), G4HadronElasticPhysicsHP::ConstructProcess(), G4HadronElasticPhysicsLEND::ConstructProcess(), G4HadronElasticPhysicsPHP::ConstructProcess(), G4HadronDElasticPhysics::ConstructProcess(), G4HadronElasticPhysics::ConstructProcess(), G4HadronHElasticPhysics::ConstructProcess(), G4IonElasticPhysics::ConstructProcess(), G4ThermalNeutrons::ConstructProcess(), G4HadronInelasticQBBC::ConstructProcess(), G4HadronPhysicsFTFQGSP_BERT::ConstructProcess(), G4ChargeExchangeProcess::G4ChargeExchangeProcess(), G4HadronCaptureProcess::G4HadronCaptureProcess(), G4HadronFissionProcess::G4HadronFissionProcess(), G4MuonNuclearProcess::G4MuonNuclearProcess(), G4HadronPhysicsFTFP_BERT::Neutron(), G4HadronPhysicsQGS_BIC::Neutron(), G4HadronPhysicsQGSP_BERT::Neutron(), G4HadronPhysicsQGSP_BIC::Neutron(), and G4HadronPhysicsFTF_BIC::Neutron().
void G4HadronicProcess::BiasCrossSectionByFactor | ( | G4double | aScale | ) |
Definition at line 490 of file G4HadronicProcess.cc.
Referenced by MultiplyCrossSectionBy().
|
overridevirtual |
Reimplemented from G4VProcess.
Reimplemented in G4HadronStoppingProcess, and G4ChargeExchangeProcess.
Definition at line 181 of file G4HadronicProcess.cc.
Referenced by G4GammaGeneralProcess::BuildPhysicsTable(), and G4ChargeExchangeProcess::BuildPhysicsTable().
|
protected |
Definition at line 594 of file G4HadronicProcess.cc.
Referenced by G4HadronStoppingProcess::AtRestDoIt(), PostStepDoIt(), and G4HadronElasticProcess::PostStepDoIt().
|
protected |
Definition at line 502 of file G4HadronicProcess.cc.
Referenced by G4HadronStoppingProcess::AtRestDoIt(), PostStepDoIt(), and G4HadronElasticProcess::PostStepDoIt().
|
inlineprotected |
Definition at line 135 of file G4HadronicProcess.hh.
Referenced by G4HadronStoppingProcess::AtRestDoIt(), PostStepDoIt(), and G4HadronElasticProcess::PostStepDoIt().
|
inline |
Definition at line 152 of file G4HadronicProcess.hh.
void G4HadronicProcess::DumpPhysicsTable | ( | const G4ParticleDefinition & | p | ) |
Definition at line 764 of file G4HadronicProcess.cc.
|
protected |
Definition at line 739 of file G4HadronicProcess.cc.
Referenced by G4HadronStoppingProcess::AtRestDoIt(), FillResult(), G4NeutrinoElectronProcess::GetMeanFreePath(), G4NeutrinoElectronProcess::PostStepDoIt(), PostStepDoIt(), G4ElNeutrinoNucleusProcess::PostStepDoIt(), G4HadronElasticProcess::PostStepDoIt(), and G4MuNeutrinoNucleusProcess::PostStepDoIt().
|
protected |
Definition at line 383 of file G4HadronicProcess.cc.
Referenced by G4NeutrinoElectronProcess::PostStepDoIt(), PostStepDoIt(), G4ElNeutrinoNucleusProcess::PostStepDoIt(), G4HadronElasticProcess::PostStepDoIt(), and G4MuNeutrinoNucleusProcess::PostStepDoIt().
|
inline |
Definition at line 173 of file G4HadronicProcess.hh.
Referenced by G4GammaGeneralProcess::BuildPhysicsTable(), G4ChargeExchangeProcess::BuildPhysicsTable(), G4ElectronNuclearProcess::G4ElectronNuclearProcess(), G4PhotoNuclearProcess::G4PhotoNuclearProcess(), G4PositronNuclearProcess::G4PositronNuclearProcess(), G4NeutrinoElectronProcess::GetMeanFreePath(), G4ElNeutrinoNucleusProcess::GetMeanFreePath(), G4MuNeutrinoNucleusProcess::GetMeanFreePath(), G4HadronPhysicsShielding::Neutron(), G4NeutrinoElectronProcess::PostStepDoIt(), G4HadronElasticProcess::PostStepDoIt(), G4HadronicProcessStore::PrintHtml(), and G4GammaGeneralProcess::SampleHadSecondaries().
G4double G4HadronicProcess::GetElementCrossSection | ( | const G4DynamicParticle * | part, |
const G4Element * | elm, | ||
const G4Material * | mat = nullptr |
||
) |
Definition at line 151 of file G4HadronicProcess.cc.
Referenced by G4HadronicProcessStore::GetCaptureCrossSectionPerAtom(), G4HadronicProcessStore::GetChargeExchangeCrossSectionPerAtom(), G4HadronicProcessStore::GetElasticCrossSectionPerAtom(), G4HadronicProcessStore::GetFissionCrossSectionPerAtom(), G4HadronicProcessStore::GetInelasticCrossSectionPerAtom(), and GetMicroscopicCrossSection().
Definition at line 169 of file G4HadronicProcess.hh.
Referenced by G4HadronicProcessStore::SetProcessAbsLevel(), and G4HadronicProcessStore::SetProcessRelLevel().
|
inlineprotected |
Definition at line 181 of file G4HadronicProcess.hh.
Referenced by CheckEnergyMomentumConservation(), and CheckResult().
std::vector< G4HadronicInteraction * > & G4HadronicProcess::GetHadronicInteractionList | ( | ) |
Definition at line 775 of file G4HadronicProcess.cc.
Referenced by G4ThermalNeutrons::ConstructProcess(), G4HadronElasticPhysics::GetElasticModel(), G4NeutrinoElectronProcess::PostStepDoIt(), G4ElNeutrinoNucleusProcess::PostStepDoIt(), and G4MuNeutrinoNucleusProcess::PostStepDoIt().
G4HadronicInteraction * G4HadronicProcess::GetHadronicModel | ( | const G4String & | modelName | ) |
Definition at line 781 of file G4HadronicProcess.cc.
|
inlineprotected |
Definition at line 185 of file G4HadronicProcess.hh.
|
overridevirtual |
Implements G4VDiscreteProcess.
Reimplemented in G4NeutrinoElectronProcess, G4ElNeutrinoNucleusProcess, and G4MuNeutrinoNucleusProcess.
Definition at line 188 of file G4HadronicProcess.cc.
|
inline |
Definition at line 90 of file G4HadronicProcess.hh.
|
inline |
Definition at line 126 of file G4HadronicProcess.hh.
|
inline |
Definition at line 122 of file G4HadronicProcess.hh.
|
inlineprotected |
Definition at line 144 of file G4HadronicProcess.hh.
Referenced by G4HadronStoppingProcess::AtRestDoIt(), G4NeutrinoElectronProcess::PostStepDoIt(), G4ElNeutrinoNucleusProcess::PostStepDoIt(), G4HadronElasticProcess::PostStepDoIt(), and G4MuNeutrinoNucleusProcess::PostStepDoIt().
void G4HadronicProcess::MultiplyCrossSectionBy | ( | G4double | factor | ) |
Definition at line 485 of file G4HadronicProcess.cc.
Referenced by G4HadronElasticPhysics::ConstructProcess(), G4HadronInelasticQBBC::ConstructProcess(), G4HadronPhysicsFTFQGSP_BERT::ConstructProcess(), G4HadronPhysicsFTFP_BERT::Kaon(), G4HadronPhysicsFTF_BIC::Kaon(), G4HadronPhysicsINCLXX::Kaon(), G4HadronPhysicsFTFP_BERT::Neutron(), G4HadronPhysicsQGS_BIC::Neutron(), G4HadronPhysicsQGSP_BERT::Neutron(), G4HadronPhysicsQGSP_BIC::Neutron(), G4HadronPhysicsFTF_BIC::Neutron(), G4HadronPhysicsFTFP_BERT_HP::Neutron(), G4HadronPhysicsINCLXX::Neutron(), G4HadronPhysicsQGSP_BERT_HP::Neutron(), G4HadronPhysicsQGSP_BIC_HP::Neutron(), G4HadronPhysicsShielding::Neutron(), G4HadronPhysicsFTFP_BERT::Pion(), G4HadronPhysicsQGS_BIC::Pion(), G4HadronPhysicsQGSP_BERT::Pion(), G4HadronPhysicsQGSP_BIC::Pion(), G4HadronPhysicsFTF_BIC::Pion(), G4HadronPhysicsINCLXX::Pion(), G4HadronPhysicsFTFP_BERT::Proton(), G4HadronPhysicsQGS_BIC::Proton(), G4HadronPhysicsQGSP_BERT::Proton(), G4HadronPhysicsQGSP_BIC::Proton(), G4HadronPhysicsFTF_BIC::Proton(), G4HadronPhysicsINCLXX::Proton(), G4HadronPhysicsNuBeam::Proton(), and G4HadronPhysicsQGSP_BIC_AllHP::Proton().
|
overridevirtual |
Reimplemented from G4VDiscreteProcess.
Reimplemented in G4NeutrinoElectronProcess, G4ElNeutrinoNucleusProcess, G4HadronElasticProcess, and G4MuNeutrinoNucleusProcess.
Definition at line 201 of file G4HadronicProcess.cc.
Referenced by G4GammaGeneralProcess::SampleHadSecondaries().
|
overridevirtual |
Reimplemented from G4VProcess.
Reimplemented in G4NeutrinoElectronProcess, G4HadronStoppingProcess, G4ElNeutrinoNucleusProcess, and G4MuNeutrinoNucleusProcess.
Definition at line 173 of file G4HadronicProcess.cc.
Referenced by G4NeutrinoElectronProcess::PreparePhysicsTable(), G4GammaGeneralProcess::PreparePhysicsTable(), G4ElNeutrinoNucleusProcess::PreparePhysicsTable(), and G4MuNeutrinoNucleusProcess::PreparePhysicsTable().
|
overridevirtual |
Reimplemented from G4VProcess.
Reimplemented in G4AlphaInelasticProcess, G4AntiAlphaInelasticProcess, G4AntiDeuteronInelasticProcess, G4AntiHe3InelasticProcess, G4AntiLambdaInelasticProcess, G4AntiNeutronInelasticProcess, G4AntiOmegaMinusInelasticProcess, G4AntiProtonInelasticProcess, G4AntiSigmaMinusInelasticProcess, G4AntiSigmaPlusInelasticProcess, G4AntiTritonInelasticProcess, G4AntiXiMinusInelasticProcess, G4AntiXiZeroInelasticProcess, G4DeuteronInelasticProcess, G4ElectronNuclearProcess, G4HadronFissionProcess, G4He3InelasticProcess, G4IonInelasticProcess, G4KaonMinusInelasticProcess, G4KaonPlusInelasticProcess, G4KaonZeroLInelasticProcess, G4KaonZeroSInelasticProcess, G4LambdaInelasticProcess, G4MuonNuclearProcess, G4NeutrinoElectronProcess, G4NeutronInelasticProcess, G4OmegaMinusInelasticProcess, G4PhotoCaptureProcess, G4PhotoFissionProcess, G4PhotoNuclearProcess, G4PionMinusInelasticProcess, G4PionPlusInelasticProcess, G4PositronNuclearProcess, G4ProtonInelasticProcess, G4SigmaMinusInelasticProcess, G4SigmaPlusInelasticProcess, G4TritonInelasticProcess, G4XiMinusInelasticProcess, G4XiZeroInelasticProcess, G4HadronicAbsorptionBertini, G4HadronicAbsorptionFritiof, G4HadronicAbsorptionFritiofWithBinaryCascade, G4HadronStoppingProcess, G4MuonMinusCapture, G4HadronCaptureProcess, G4ElNeutrinoNucleusProcess, G4HadronElasticProcess, and G4MuNeutrinoNucleusProcess.
Definition at line 359 of file G4HadronicProcess.cc.
Referenced by G4HadronicProcessStore::PrintHtml(), and G4GammaGeneralProcess::ProcessDescription().
void G4HadronicProcess::RegisterMe | ( | G4HadronicInteraction * | a | ) |
Definition at line 143 of file G4HadronicProcess.cc.
Referenced by G4BertiniElectroNuclearBuilder::Build(), G4LENDBertiniGammaElectroNuclearBuilder::Build(), G4AlphaPHPBuilder::Build(), G4BinaryAlphaBuilder::Build(), G4FTFPAntiBarionBuilder::Build(), G4QGSPAntiBarionBuilder::Build(), G4BinaryDeuteronBuilder::Build(), G4DeuteronPHPBuilder::Build(), G4NeutronLENDBuilder::Build(), G4NeutronPHPBuilder::Build(), G4BinaryHe3Builder::Build(), G4He3PHPBuilder::Build(), G4BertiniKaonBuilder::Build(), G4FTFBinaryKaonBuilder::Build(), G4FTFPKaonBuilder::Build(), G4QGSBinaryKaonBuilder::Build(), G4QGSPKaonBuilder::Build(), G4HyperonFTFPBuilder::Build(), G4HyperonQGSPBuilder::Build(), G4BertiniNeutronBuilder::Build(), G4BinaryNeutronBuilder::Build(), G4FTFBinaryNeutronBuilder::Build(), G4FTFPNeutronBuilder::Build(), G4INCLXXNeutronBuilder::Build(), G4PrecoNeutronBuilder::Build(), G4QGSBinaryNeutronBuilder::Build(), G4QGSPNeutronBuilder::Build(), G4BertiniPiKBuilder::Build(), G4BertiniPionBuilder::Build(), G4BinaryPiKBuilder::Build(), G4BinaryPionBuilder::Build(), G4FTFBinaryPiKBuilder::Build(), G4FTFBinaryPionBuilder::Build(), G4FTFPPiKBuilder::Build(), G4FTFPPionBuilder::Build(), G4INCLXXPionBuilder::Build(), G4QGSBinaryPiKBuilder::Build(), G4QGSBinaryPionBuilder::Build(), G4QGSPPiKBuilder::Build(), G4QGSPPionBuilder::Build(), G4BertiniProtonBuilder::Build(), G4BinaryProtonBuilder::Build(), G4FTFBinaryProtonBuilder::Build(), G4FTFPProtonBuilder::Build(), G4INCLXXProtonBuilder::Build(), G4PrecoProtonBuilder::Build(), G4ProtonPHPBuilder::Build(), G4QGSBinaryProtonBuilder::Build(), G4QGSPLundStrFragmProtonBuilder::Build(), G4QGSPProtonBuilder::Build(), G4BinaryTritonBuilder::Build(), G4TritonPHPBuilder::Build(), LBE::ConstructHad(), G4EmExtraPhysics::ConstructProcess(), G4HadronElasticPhysicsHP::ConstructProcess(), G4HadronElasticPhysicsLEND::ConstructProcess(), G4HadronElasticPhysicsPHP::ConstructProcess(), G4ChargeExchangePhysics::ConstructProcess(), G4HadronDElasticPhysics::ConstructProcess(), G4HadronElasticPhysics::ConstructProcess(), G4HadronHElasticPhysics::ConstructProcess(), G4IonElasticPhysics::ConstructProcess(), G4ThermalNeutrons::ConstructProcess(), G4HadronInelasticQBBC::ConstructProcess(), G4HadronPhysicsFTFQGSP_BERT::ConstructProcess(), G4HadronicAbsorptionBertini::G4HadronicAbsorptionBertini(), G4HadronicAbsorptionFritiof::G4HadronicAbsorptionFritiof(), G4HadronicAbsorptionFritiofWithBinaryCascade::G4HadronicAbsorptionFritiofWithBinaryCascade(), G4MuonMinusCapture::G4MuonMinusCapture(), G4HadronPhysicsFTFP_BERT::Neutron(), G4HadronPhysicsQGS_BIC::Neutron(), G4HadronPhysicsQGSP_BERT::Neutron(), G4HadronPhysicsQGSP_BIC::Neutron(), G4HadronPhysicsFTF_BIC::Neutron(), G4HadronPhysicsFTFP_BERT_HP::Neutron(), G4HadronPhysicsINCLXX::Neutron(), G4HadronPhysicsQGSP_BERT_HP::Neutron(), G4HadronPhysicsQGSP_BIC_HP::Neutron(), and G4HadronPhysicsShielding::Neutron().
|
inline |
Definition at line 163 of file G4HadronicProcess.hh.
Referenced by G4HadronicProcessStore::SetProcessAbsLevel(), and G4HadronicProcessStore::SetProcessRelLevel().
|
inline |
Definition at line 160 of file G4HadronicProcess.hh.
|
inline |
Definition at line 156 of file G4HadronicProcess.hh.
|
protected |
Definition at line 221 of file G4HadronicProcess.hh.
Referenced by G4HadronStoppingProcess::AtRestDoIt(), CheckEnergyMomentumConservation(), CheckResult(), PostStepDoIt(), G4HadronElasticProcess::PostStepDoIt(), and SetEpReportLevel().
|
protected |
Definition at line 219 of file G4HadronicProcess.hh.
Referenced by FillResult(), and PostStepDoIt().
|
protected |
Definition at line 215 of file G4HadronicProcess.hh.
Referenced by G4HadronStoppingProcess::AtRestDoIt(), G4NeutrinoElectronProcess::PostStepDoIt(), PostStepDoIt(), G4ElNeutrinoNucleusProcess::PostStepDoIt(), and G4MuNeutrinoNucleusProcess::PostStepDoIt().
|
protected |
Definition at line 217 of file G4HadronicProcess.hh.
Referenced by G4HadronStoppingProcess::AtRestDoIt(), CheckEnergyMomentumConservation(), FillResult(), G4NeutrinoElectronProcess::PostStepDoIt(), PostStepDoIt(), G4ElNeutrinoNucleusProcess::PostStepDoIt(), G4HadronElasticProcess::PostStepDoIt(), G4MuNeutrinoNucleusProcess::PostStepDoIt(), and ~G4HadronicProcess().