Geant4 11.1.1
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4HadProcesses Class Reference

#include <G4HadProcesses.hh>

Static Public Member Functions

static const G4ParticleDefinitionFindParticle (const G4String &)
 
static G4HadronicProcessFindInelasticProcess (const G4ParticleDefinition *)
 
static G4HadronicProcessFindInelasticProcess (const G4String &)
 
static G4HadronicProcessFindElasticProcess (const G4ParticleDefinition *)
 
static G4HadronicProcessFindElasticProcess (const G4String &)
 
static G4HadronicProcessFindCaptureProcess ()
 
static G4HadronicProcessFindFissionProcess ()
 
static G4CrossSectionInelasticInelasticXS (const G4String &componentName)
 
static G4CrossSectionElasticElasticXS (const G4String &componentName)
 
static G4bool AddInelasticCrossSection (const G4ParticleDefinition *, G4VCrossSectionDataSet *)
 
static G4bool AddInelasticCrossSection (const G4String &, G4VCrossSectionDataSet *)
 
static G4bool AddElasticCrossSection (const G4ParticleDefinition *, G4VCrossSectionDataSet *)
 
static G4bool AddElasticCrossSection (const G4String &, G4VCrossSectionDataSet *)
 
static G4bool AddCaptureCrossSection (G4VCrossSectionDataSet *)
 
static G4bool AddFissionCrossSection (G4VCrossSectionDataSet *)
 
static void BuildNeutronInelasticAndCapture (G4HadronicProcess *)
 
static void BuildNeutronElastic (G4HadronicProcess *)
 

Detailed Description

Definition at line 51 of file G4HadProcesses.hh.

Member Function Documentation

◆ AddCaptureCrossSection()

G4bool G4HadProcesses::AddCaptureCrossSection ( G4VCrossSectionDataSet xs)
static

Definition at line 159 of file G4HadProcesses.cc.

160{
161 G4bool isOK(false);
163 if( had != nullptr ) {
164 isOK = true;
165 had->AddDataSet( xs );
166 }
167 return isOK;
168}
bool G4bool
Definition: G4Types.hh:86
static G4HadronicProcess * FindCaptureProcess()
void AddDataSet(G4VCrossSectionDataSet *aDataSet)

◆ AddElasticCrossSection() [1/2]

G4bool G4HadProcesses::AddElasticCrossSection ( const G4ParticleDefinition ptr,
G4VCrossSectionDataSet xs 
)
static

Definition at line 141 of file G4HadProcesses.cc.

142{
143 G4bool isOK(false);
144 if( ptr != nullptr ) {
146 if( had != nullptr ) {
147 isOK = true;
148 had->AddDataSet( xs );
149 }
150 }
151 return isOK;
152}
static G4HadronicProcess * FindElasticProcess(const G4ParticleDefinition *)

Referenced by AddElasticCrossSection().

◆ AddElasticCrossSection() [2/2]

G4bool G4HadProcesses::AddElasticCrossSection ( const G4String pname,
G4VCrossSectionDataSet xs 
)
static

Definition at line 154 of file G4HadProcesses.cc.

155{
156 return AddElasticCrossSection( FindParticle(pname), xs );
157}
static G4bool AddElasticCrossSection(const G4ParticleDefinition *, G4VCrossSectionDataSet *)
static const G4ParticleDefinition * FindParticle(const G4String &)

◆ AddFissionCrossSection()

G4bool G4HadProcesses::AddFissionCrossSection ( G4VCrossSectionDataSet xs)
static

Definition at line 170 of file G4HadProcesses.cc.

171{
172 G4bool isOK(false);
174 if( had != nullptr ) {
175 isOK = true;
176 had->AddDataSet( xs );
177 }
178 return isOK;
179}
static G4HadronicProcess * FindFissionProcess()

◆ AddInelasticCrossSection() [1/2]

G4bool G4HadProcesses::AddInelasticCrossSection ( const G4ParticleDefinition ptr,
G4VCrossSectionDataSet xs 
)
static

Definition at line 122 of file G4HadProcesses.cc.

124{
125 G4bool isOK(false);
126 if( ptr != nullptr ) {
128 if( had != nullptr ) {
129 isOK = true;
130 had->AddDataSet( xs );
131 }
132 }
133 return isOK;
134}
static G4HadronicProcess * FindInelasticProcess(const G4ParticleDefinition *)

Referenced by AddInelasticCrossSection().

◆ AddInelasticCrossSection() [2/2]

G4bool G4HadProcesses::AddInelasticCrossSection ( const G4String pname,
G4VCrossSectionDataSet xs 
)
static

Definition at line 136 of file G4HadProcesses.cc.

137{
138 return AddInelasticCrossSection( FindParticle(pname), xs );
139}
static G4bool AddInelasticCrossSection(const G4ParticleDefinition *, G4VCrossSectionDataSet *)

◆ BuildNeutronElastic()

void G4HadProcesses::BuildNeutronElastic ( G4HadronicProcess nEl)
static

Definition at line 205 of file G4HadProcesses.cc.

206{
208 G4bool useNeutronGeneral = param->EnableNeutronGeneralProcess();
209
210 if(useNeutronGeneral) {
212 nGen->SetElasticProcess(nEl);
213 } else {
215 nEl->AddDataSet(new G4NeutronElasticXS());
217 ph->RegisterProcess(nEl, neutron);
218 if( param->ApplyFactorXS() ) {
220 }
221 }
222}
static G4HadronicParameters * Instance()
G4double XSFactorNucleonElastic() const
G4bool EnableNeutronGeneralProcess() const
void MultiplyCrossSectionBy(G4double factor)
static G4Neutron * Neutron()
Definition: G4Neutron.cc:103
static G4NeutronGeneralProcess * FindNeutronGeneralProcess()
G4bool RegisterProcess(G4VProcess *process, G4ParticleDefinition *particle)
static G4PhysicsListHelper * GetPhysicsListHelper()

Referenced by G4HadronElasticPhysics::ConstructProcess().

◆ BuildNeutronInelasticAndCapture()

void G4HadProcesses::BuildNeutronInelasticAndCapture ( G4HadronicProcess nInel)
static

Definition at line 181 of file G4HadProcesses.cc.

182{
184 G4bool useNeutronGeneral = param->EnableNeutronGeneralProcess();
185
186 G4HadronicProcess* nCap = new G4NeutronCaptureProcess("nCapture");
187 nCap->RegisterMe(new G4NeutronRadCapture());
188
189 if(useNeutronGeneral) {
191 nGen->SetInelasticProcess(nInel);
192 nGen->SetCaptureProcess(nCap);
193 } else {
196 nInel->AddDataSet(new G4NeutronInelasticXS());
197 ph->RegisterProcess(nInel, neutron);
198 ph->RegisterProcess(nCap, neutron);
199 if( param->ApplyFactorXS() ) {
201 }
202 }
203}
G4double XSFactorNucleonInelastic() const
void RegisterMe(G4HadronicInteraction *a)

Referenced by G4HadronInelasticQBBC::ConstructProcess().

◆ ElasticXS()

G4CrossSectionElastic * G4HadProcesses::ElasticXS ( const G4String componentName)
static

Definition at line 106 of file G4HadProcesses.cc.

107{
108 G4CrossSectionElastic* xs = nullptr;
110 if( comp != nullptr ) {
111 xs = new G4CrossSectionElastic(comp);
112 } else if( "Glauber-Gribov" == compName ) {
114 } else if( "Glauber-Gribov Nucl-nucl" == compName ) {
116 } else if( "AntiAGlauber" == compName ) {
118 }
119 return xs;
120}
G4VComponentCrossSection * GetComponentCrossSection(const G4String &name)
static G4CrossSectionDataSetRegistry * Instance()

Referenced by G4HadronicBuilder::BuildElastic(), G4HadronDElasticPhysics::ConstructProcess(), G4HadronElasticPhysics::ConstructProcess(), and G4HadronHElasticPhysics::ConstructProcess().

◆ FindCaptureProcess()

G4HadronicProcess * G4HadProcesses::FindCaptureProcess ( )
static

Definition at line 80 of file G4HadProcesses.cc.

81{
83}
static G4HadronicProcess * FindCaptureProcess(const G4ParticleDefinition *)

Referenced by AddCaptureCrossSection().

◆ FindElasticProcess() [1/2]

G4HadronicProcess * G4HadProcesses::FindElasticProcess ( const G4ParticleDefinition ptr)
static

Definition at line 70 of file G4HadProcesses.cc.

71{
73}
static G4HadronicProcess * FindElasticProcess(const G4ParticleDefinition *)

Referenced by AddElasticCrossSection(), and FindElasticProcess().

◆ FindElasticProcess() [2/2]

G4HadronicProcess * G4HadProcesses::FindElasticProcess ( const G4String pname)
static

Definition at line 75 of file G4HadProcesses.cc.

76{
77 return FindElasticProcess( FindParticle(pname) );
78}

◆ FindFissionProcess()

G4HadronicProcess * G4HadProcesses::FindFissionProcess ( )
static

Definition at line 85 of file G4HadProcesses.cc.

86{
88}
static G4HadronicProcess * FindFissionProcess(const G4ParticleDefinition *)

Referenced by AddFissionCrossSection().

◆ FindInelasticProcess() [1/2]

G4HadronicProcess * G4HadProcesses::FindInelasticProcess ( const G4ParticleDefinition ptr)
static

Definition at line 60 of file G4HadProcesses.cc.

61{
63}
static G4HadronicProcess * FindInelasticProcess(const G4ParticleDefinition *)

Referenced by AddInelasticCrossSection(), and FindInelasticProcess().

◆ FindInelasticProcess() [2/2]

G4HadronicProcess * G4HadProcesses::FindInelasticProcess ( const G4String pname)
static

Definition at line 65 of file G4HadProcesses.cc.

66{
67 return FindInelasticProcess( FindParticle(pname) );
68}

◆ FindParticle()

const G4ParticleDefinition * G4HadProcesses::FindParticle ( const G4String pname)
static

Definition at line 55 of file G4HadProcesses.cc.

56{
58}
G4ParticleDefinition * FindParticle(G4int PDGEncoding)
static G4ParticleTable * GetParticleTable()

Referenced by AddElasticCrossSection(), AddInelasticCrossSection(), FindElasticProcess(), and FindInelasticProcess().

◆ InelasticXS()

G4CrossSectionInelastic * G4HadProcesses::InelasticXS ( const G4String componentName)
static

Definition at line 90 of file G4HadProcesses.cc.

91{
92 G4CrossSectionInelastic* xs = nullptr;
94 if( comp != nullptr ) {
95 xs = new G4CrossSectionInelastic(comp);
96 } else if( "Glauber-Gribov" == compName ) {
98 } else if( "Glauber-Gribov Nucl-nucl" == compName ) {
100 } else if( "AntiAGlauber" == compName ) {
102 }
103 return xs;
104}

Referenced by G4HadronicBuilder::BuildFTFP_INCLXX().


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