Geant4-11
Public Member Functions | Static Public Member Functions | Private Attributes | Static Private Attributes
G4ComponentGGHadronNucleusXsc Class Referencefinal

#include <G4ComponentGGHadronNucleusXsc.hh>

Inheritance diagram for G4ComponentGGHadronNucleusXsc:
G4VComponentCrossSection

Public Member Functions

virtual void BuildPhysicsTable (const G4ParticleDefinition &)
 
void ComputeCrossSections (const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4int A)
 
G4double ComputeQuasiElasticRatio (const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4int A) final
 
void Description (std::ostream &) const final
 
virtual void DumpPhysicsTable (const G4ParticleDefinition &)
 
 G4ComponentGGHadronNucleusXsc ()
 
G4double GetAxsc2piR2 () const
 
G4double GetDiffractionGlauberGribovXsc () const
 
G4double GetElasticElementCrossSection (const G4ParticleDefinition *, G4double kinEnergy, const G4Element *)
 
G4double GetElasticElementCrossSection (const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4double A) final
 
G4double GetElasticGlauberGribov (const G4DynamicParticle *, G4int Z, G4int A)
 
G4double GetElasticGlauberGribovXsc () const
 
G4double GetElasticIsotopeCrossSection (const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4int A) final
 
G4double GetHadronNucleonXsc (const G4DynamicParticle *, const G4Element *)
 
G4double GetHadronNucleonXsc (const G4DynamicParticle *, G4int At, G4int Zt)
 
G4double GetHadronNucleonXscNS (const G4DynamicParticle *, const G4Element *)
 
G4double GetHadronNucleonXscNS (const G4DynamicParticle *, G4int At, G4int Zt)
 
G4double GetHadronNucleonXscPDG (const G4DynamicParticle *, const G4Element *)
 
G4double GetHadronNucleonXscPDG (const G4DynamicParticle *, G4int At, G4int Zt)
 
G4double GetHNinelasticXsc (const G4DynamicParticle *, const G4Element *)
 
G4double GetHNinelasticXsc (const G4DynamicParticle *, G4int At, G4int Zt)
 
G4double GetHNinelasticXscVU (const G4DynamicParticle *, G4int At, G4int Zt)
 
G4double GetInelasticElementCrossSection (const G4ParticleDefinition *, G4double kinEnergy, const G4Element *)
 
G4double GetInelasticElementCrossSection (const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4double A) final
 
G4double GetInelasticGlauberGribov (const G4DynamicParticle *, G4int Z, G4int A)
 
G4double GetInelasticGlauberGribovXsc () const
 
G4double GetInelasticIsotopeCrossSection (const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4int A) final
 
G4double GetIsoCrossSection (const G4DynamicParticle *, G4int Z, G4int A, const G4Isotope *iso=nullptr, const G4Element *elm=nullptr, const G4Material *mat=nullptr)
 
G4double GetMaxKinEnergy () const
 
G4double GetMinKinEnergy () const
 
G4double GetModelInLog () const
 
const G4StringGetName () const
 
G4double GetParticleBarCorIn (const G4ParticleDefinition *theParticle, G4int Z)
 
G4double GetParticleBarCorTot (const G4ParticleDefinition *theParticle, G4int Z)
 
G4double GetProductionElementCrossSection (const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4double A)
 
G4double GetProductionGlauberGribovXsc () const
 
G4double GetProductionIsotopeCrossSection (const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4int A)
 
G4double GetRatioQE (const G4DynamicParticle *, G4int At, G4int Zt)
 
G4double GetRatioSD (const G4DynamicParticle *, G4int At, G4int Zt)
 
G4double GetTotalElementCrossSection (const G4ParticleDefinition *, G4double kinEnergy, const G4Element *)
 
G4double GetTotalElementCrossSection (const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4double A) final
 
G4double GetTotalGlauberGribovXsc () const
 
G4double GetTotalIsotopeCrossSection (const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4int A) final
 
G4int GetVerboseLevel () const
 
void SetMaxKinEnergy (G4double value)
 
void SetMinKinEnergy (G4double value)
 
void SetVerboseLevel (G4int value)
 
 ~G4ComponentGGHadronNucleusXsc () final
 

Static Public Member Functions

static const char * Default_Name ()
 

Private Attributes

G4int fA
 
G4double fAxsc2piR2
 
G4double fDiffractionXsc
 
G4double fElasticXsc
 
G4double fEnergy
 
G4double fInelasticXsc
 
G4double fModelInLog
 
const G4ParticleDefinitionfParticle
 
G4double fProductionXsc
 
G4double fTotalXsc
 
G4int fZ
 
G4HadronNucleonXschnXsc
 
G4double maxKinEnergy
 
G4double minKinEnergy
 
const G4String name
 
G4CrossSectionDataSetRegistryregistry
 
const G4ParticleDefinitiontheANeutron
 
const G4ParticleDefinitiontheAProton
 
const G4ParticleDefinitiontheGamma
 
const G4ParticleDefinitiontheK0L
 
const G4ParticleDefinitiontheK0S
 
const G4ParticleDefinitiontheKMinus
 
const G4ParticleDefinitiontheKPlus
 
const G4ParticleDefinitiontheNeutron
 
const G4ParticleDefinitionthePiMinus
 
const G4ParticleDefinitionthePiPlus
 
const G4ParticleDefinitiontheProton
 
G4int verboseLevel
 

Static Private Attributes

static const G4double fNeutronBarCorrectionIn [93]
 
static const G4double fNeutronBarCorrectionTot [93]
 
static const G4double fPionMinusBarCorrectionIn [93]
 
static const G4double fPionMinusBarCorrectionTot [93]
 
static const G4double fPionPlusBarCorrectionIn [93]
 
static const G4double fPionPlusBarCorrectionTot [93]
 
static const G4double fProtonBarCorrectionIn [93]
 
static const G4double fProtonBarCorrectionTot [93]
 

Detailed Description

Definition at line 51 of file G4ComponentGGHadronNucleusXsc.hh.

Constructor & Destructor Documentation

◆ G4ComponentGGHadronNucleusXsc()

G4ComponentGGHadronNucleusXsc::G4ComponentGGHadronNucleusXsc ( )
explicit

Definition at line 50 of file G4ComponentGGHadronNucleusXsc.cc.

54 fParticle(nullptr),fZ(0),fA(0)
55{
67
69}
static G4AntiNeutron * AntiNeutron()
static G4AntiProton * AntiProton()
Definition: G4AntiProton.cc:92
const G4ParticleDefinition * theANeutron
static G4Gamma * Gamma()
Definition: G4Gamma.cc:85
static G4KaonMinus * KaonMinus()
Definition: G4KaonMinus.cc:112
static G4KaonPlus * KaonPlus()
Definition: G4KaonPlus.cc:112
static G4KaonZeroLong * KaonZeroLong()
static G4KaonZeroShort * KaonZeroShort()
static G4Neutron * Neutron()
Definition: G4Neutron.cc:103
static G4PionMinus * PionMinus()
Definition: G4PionMinus.cc:97
static G4PionPlus * PionPlus()
Definition: G4PionPlus.cc:97
static G4Proton * Proton()
Definition: G4Proton.cc:92
G4VComponentCrossSection(const G4String &nam="")

References G4AntiNeutron::AntiNeutron(), G4AntiProton::AntiProton(), G4Gamma::Gamma(), hnXsc, G4KaonMinus::KaonMinus(), G4KaonPlus::KaonPlus(), G4KaonZeroLong::KaonZeroLong(), G4KaonZeroShort::KaonZeroShort(), G4Neutron::Neutron(), G4PionMinus::PionMinus(), G4PionPlus::PionPlus(), G4Proton::Proton(), theANeutron, theAProton, theGamma, theK0L, theK0S, theKMinus, theKPlus, theNeutron, thePiMinus, thePiPlus, and theProton.

◆ ~G4ComponentGGHadronNucleusXsc()

G4ComponentGGHadronNucleusXsc::~G4ComponentGGHadronNucleusXsc ( )
final

Definition at line 73 of file G4ComponentGGHadronNucleusXsc.cc.

74{
75 delete hnXsc;
76}

References hnXsc.

Member Function Documentation

◆ BuildPhysicsTable()

void G4VComponentCrossSection::BuildPhysicsTable ( const G4ParticleDefinition )
virtualinherited

◆ ComputeCrossSections()

void G4ComponentGGHadronNucleusXsc::ComputeCrossSections ( const G4ParticleDefinition aParticle,
G4double  kinEnergy,
G4int  Z,
G4int  A 
)

Definition at line 179 of file G4ComponentGGHadronNucleusXsc.cc.

182{
183 // check cache
184 if(aParticle == fParticle && fZ == Z && fA == A && kinEnergy == fEnergy)
185 { return; }
186 fParticle = aParticle;
187 fZ = Z;
188 fA = A;
189 fEnergy = kinEnergy;
190
191 //
192 G4double cofInelastic = 2.4;
193 static const G4double cofTotal = 2.0;
194 G4double sigma(0.0), hpInXsc(0.0), hnInXsc(0.0), R(0.0);
195
196 G4int N = std::max(A - Z, 0); // number of neutrons
197
198 if( aParticle == theKPlus || aParticle == theKMinus ||
199 aParticle == theK0S || aParticle == theK0L)
200 {
201 sigma = (1 == Z)
202 ? hnXsc->KaonNucleonXscNS(aParticle, theProton, kinEnergy)
203 : Z*hnXsc->KaonNucleonXscGG(aParticle, theProton, kinEnergy);
205
206 if(N > 0) {
207 sigma += N*hnXsc->KaonNucleonXscGG(aParticle, theNeutron, kinEnergy);
209 }
211 cofInelastic = 2.2;
212 }
213 else
214 {
215 sigma = Z*hnXsc->HadronNucleonXsc(aParticle, theProton, kinEnergy);
217
218 if(N > 0) {
219 sigma += N*hnXsc->HadronNucleonXsc(aParticle, theNeutron, kinEnergy);
221 }
223 }
224
225 G4double nucleusSquare = cofTotal*pi*R*R; // basically 2piRR
226 G4double ratio = sigma/nucleusSquare;
227 G4double difratio = ratio/(1.+ratio);
228 fDiffractionXsc = 0.5*nucleusSquare*( difratio - G4Log( 1. + difratio ) );
229
230 if( A > 1 )
231 {
232 fTotalXsc = nucleusSquare*G4Log( 1. + ratio )
233 *GetParticleBarCorTot(aParticle, Z);
234
235 // inelastic xsc
236 fAxsc2piR2 = cofInelastic*ratio;
237 fModelInLog = G4Log( 1. + fAxsc2piR2 );
238 fInelasticXsc = nucleusSquare*fModelInLog/cofInelastic;
239 G4double barcorr = GetParticleBarCorIn(aParticle, Z);
240 fInelasticXsc *= barcorr;
242
243 G4double xratio = (Z*hpInXsc + N*hnInXsc)/nucleusSquare;
245 nucleusSquare*G4Log(1. + cofInelastic*xratio)*barcorr/cofInelastic;
247 }
248 else // H
249 {
250 fTotalXsc = sigma;
251 fInelasticXsc = hpInXsc;
255 // G4double xratio = hpInXsc/nucleusSquare;
256 // fProductionXsc = nucleusSquare*G4Log(1. + cofInelastic*xratio)/cofInelastic;
257 // fProductionXsc = std::min(fProductionXsc, fInelasticXsc);
258 }
259 /*
260 G4cout << "GGXsc: Z= " << Z << " A= " << A << " E= " << kinEnergy
261 << " xtot(b)= " << fTotalXsc/barn
262 << " xel(b)= " << fElasticXsc/barn << " xinel(b)= " << fInelasticXsc/barn
263 << G4endl;
264 */
265}
G4double G4Log(G4double x)
Definition: G4Log.hh:226
static constexpr double pi
Definition: G4SIunits.hh:55
double G4double
Definition: G4Types.hh:83
int G4int
Definition: G4Types.hh:85
const G4int Z[17]
const G4double A[17]
G4double GetParticleBarCorTot(const G4ParticleDefinition *theParticle, G4int Z)
G4double GetParticleBarCorIn(const G4ParticleDefinition *theParticle, G4int Z)
G4double KaonNucleonXscGG(const G4ParticleDefinition *theParticle, const G4ParticleDefinition *nucleon, G4double ekin)
G4double KaonNucleonXscNS(const G4ParticleDefinition *theParticle, const G4ParticleDefinition *nucleon, G4double ekin)
G4double HadronNucleonXsc(const G4ParticleDefinition *theParticle, const G4ParticleDefinition *nucleon, G4double ekin)
G4double GetInelasticHadronNucleonXsc() const
static G4double RadiusHNGG(G4int A)
static G4double RadiusKNGG(G4int A)
T max(const T t1, const T t2)
brief Return the largest of the two arguments
T min(const T t1, const T t2)
brief Return the smallest of the two arguments

References A, fA, fAxsc2piR2, fDiffractionXsc, fElasticXsc, fEnergy, fInelasticXsc, fModelInLog, fParticle, fProductionXsc, fTotalXsc, fZ, G4Log(), G4HadronNucleonXsc::GetInelasticHadronNucleonXsc(), GetParticleBarCorIn(), GetParticleBarCorTot(), G4HadronNucleonXsc::HadronNucleonXsc(), hnXsc, G4HadronNucleonXsc::KaonNucleonXscGG(), G4HadronNucleonXsc::KaonNucleonXscNS(), G4INCL::Math::max(), G4INCL::Math::min(), pi, G4NuclearRadii::RadiusHNGG(), G4NuclearRadii::RadiusKNGG(), theK0L, theK0S, theKMinus, theKPlus, theNeutron, theProton, and Z.

Referenced by G4ComponentGGNuclNuclXsc::ComputeCrossSections(), ComputeQuasiElasticRatio(), GetElasticElementCrossSection(), GetElasticGlauberGribov(), GetElasticIsotopeCrossSection(), GetHadronNucleonXscPDG(), GetInelasticElementCrossSection(), GetInelasticGlauberGribov(), GetInelasticIsotopeCrossSection(), GetIsoCrossSection(), GetProductionElementCrossSection(), GetProductionIsotopeCrossSection(), GetRatioQE(), GetRatioSD(), GetTotalElementCrossSection(), and GetTotalIsotopeCrossSection().

◆ ComputeQuasiElasticRatio()

G4double G4ComponentGGHadronNucleusXsc::ComputeQuasiElasticRatio ( const G4ParticleDefinition aParticle,
G4double  kinEnergy,
G4int  Z,
G4int  A 
)
finalvirtual

Reimplemented from G4VComponentCrossSection.

Definition at line 140 of file G4ComponentGGHadronNucleusXsc.cc.

143{
144 ComputeCrossSections(aParticle, kinEnergy, Z, A);
145 G4double ratio = (fInelasticXsc > 0.)
147 ratio = std::max(ratio, 0.);
148 return ratio;
149}
void ComputeCrossSections(const G4ParticleDefinition *aParticle, G4double kinEnergy, G4int Z, G4int A)

References A, ComputeCrossSections(), fInelasticXsc, fProductionXsc, G4INCL::Math::max(), and Z.

◆ Default_Name()

static const char * G4ComponentGGHadronNucleusXsc::Default_Name ( )
inlinestatic

Definition at line 58 of file G4ComponentGGHadronNucleusXsc.hh.

58{ return "Glauber-Gribov"; }

◆ Description()

void G4ComponentGGHadronNucleusXsc::Description ( std::ostream &  outFile) const
finalvirtual

Reimplemented from G4VComponentCrossSection.

Definition at line 446 of file G4ComponentGGHadronNucleusXsc.cc.

447{
448 outFile << "G4ComponentGGHadronNucleusXsc calculates total, inelastic and\n"
449 << "elastic cross sections for hadron-nucleus cross sections using\n"
450 << "the Glauber model with Gribov corrections. It is valid for all\n"
451 << "targets except hydrogen, and for incident p, pbar, n, sigma-,\n"
452 << "pi+, pi-, K+, K- and gammas with energies above 3 GeV. This is\n"
453 << "a cross section component which is to be used to build a cross\n"
454 << "data set.\n";
455}

◆ DumpPhysicsTable()

void G4VComponentCrossSection::DumpPhysicsTable ( const G4ParticleDefinition )
virtualinherited

◆ GetAxsc2piR2()

G4double G4ComponentGGHadronNucleusXsc::GetAxsc2piR2 ( ) const
inline

Definition at line 127 of file G4ComponentGGHadronNucleusXsc.hh.

127{ return fAxsc2piR2; };

References fAxsc2piR2.

◆ GetDiffractionGlauberGribovXsc()

G4double G4ComponentGGHadronNucleusXsc::GetDiffractionGlauberGribovXsc ( ) const
inline

◆ GetElasticElementCrossSection() [1/2]

G4double G4VComponentCrossSection::GetElasticElementCrossSection ( const G4ParticleDefinition p,
G4double  kinEnergy,
const G4Element elm 
)
inlineinherited

◆ GetElasticElementCrossSection() [2/2]

G4double G4ComponentGGHadronNucleusXsc::GetElasticElementCrossSection ( const G4ParticleDefinition aParticle,
G4double  kinEnergy,
G4int  Z,
G4double  A 
)
finalvirtual

Implements G4VComponentCrossSection.

Definition at line 120 of file G4ComponentGGHadronNucleusXsc.cc.

123{
124 ComputeCrossSections(aParticle, kinEnergy, Z, G4lrint(A));
125 return fElasticXsc;
126}
int G4lrint(double ad)
Definition: templates.hh:134

References A, ComputeCrossSections(), fElasticXsc, G4lrint(), and Z.

Referenced by G4DiffElasticRatio::ComputeRatio().

◆ GetElasticGlauberGribov()

G4double G4ComponentGGHadronNucleusXsc::GetElasticGlauberGribov ( const G4DynamicParticle dp,
G4int  Z,
G4int  A 
)
inline

◆ GetElasticGlauberGribovXsc()

G4double G4ComponentGGHadronNucleusXsc::GetElasticGlauberGribovXsc ( ) const
inline

Definition at line 130 of file G4ComponentGGHadronNucleusXsc.hh.

130{ return fElasticXsc; };

References fElasticXsc.

Referenced by G4ComponentGGNuclNuclXsc::ComputeCrossSections().

◆ GetElasticIsotopeCrossSection()

G4double G4ComponentGGHadronNucleusXsc::GetElasticIsotopeCrossSection ( const G4ParticleDefinition aParticle,
G4double  kinEnergy,
G4int  Z,
G4int  A 
)
finalvirtual

Implements G4VComponentCrossSection.

Definition at line 130 of file G4ComponentGGHadronNucleusXsc.cc.

133{
134 ComputeCrossSections(aParticle, kinEnergy, Z, A);
135 return fElasticXsc;
136}

References A, ComputeCrossSections(), fElasticXsc, and Z.

◆ GetHadronNucleonXsc() [1/2]

G4double G4ComponentGGHadronNucleusXsc::GetHadronNucleonXsc ( const G4DynamicParticle aParticle,
const G4Element anElement 
)

Definition at line 298 of file G4ComponentGGHadronNucleusXsc.cc.

300{
301 G4int At = G4lrint(anElement->GetN()); // number of nucleons
302 G4int Zt = anElement->GetZasInt(); // number of protons
303
304 return GetHadronNucleonXsc(aParticle, At, Zt);
305}
G4double GetHadronNucleonXsc(const G4DynamicParticle *, const G4Element *)

References G4lrint(), GetHadronNucleonXsc(), G4Element::GetN(), and G4Element::GetZasInt().

Referenced by GetHadronNucleonXsc().

◆ GetHadronNucleonXsc() [2/2]

G4double G4ComponentGGHadronNucleusXsc::GetHadronNucleonXsc ( const G4DynamicParticle aParticle,
G4int  At,
G4int  Zt 
)

Definition at line 311 of file G4ComponentGGHadronNucleusXsc.cc.

313{
314 return hnXsc->HadronNucleonXscEL(aParticle->GetDefinition(), theProton,
315 aParticle->GetKineticEnergy());
316}
G4double HadronNucleonXscEL(const G4ParticleDefinition *theParticle, const G4ParticleDefinition *nucleon, G4double ekin)

References G4DynamicParticle::GetDefinition(), G4DynamicParticle::GetKineticEnergy(), G4HadronNucleonXsc::HadronNucleonXscEL(), hnXsc, and theProton.

◆ GetHadronNucleonXscNS() [1/2]

G4double G4ComponentGGHadronNucleusXsc::GetHadronNucleonXscNS ( const G4DynamicParticle aParticle,
const G4Element anElement 
)

Definition at line 360 of file G4ComponentGGHadronNucleusXsc.cc.

362{
363 G4int At = G4lrint(anElement->GetN()); // number of nucleons
364 G4int Zt = anElement->GetZasInt(); // number of protons
365
366 return GetHadronNucleonXscNS(aParticle, At, Zt);
367}
G4double GetHadronNucleonXscNS(const G4DynamicParticle *, const G4Element *)

References G4lrint(), GetHadronNucleonXscNS(), G4Element::GetN(), and G4Element::GetZasInt().

Referenced by GetHadronNucleonXscNS().

◆ GetHadronNucleonXscNS() [2/2]

G4double G4ComponentGGHadronNucleusXsc::GetHadronNucleonXscNS ( const G4DynamicParticle aParticle,
G4int  At,
G4int  Zt 
)

Definition at line 374 of file G4ComponentGGHadronNucleusXsc.cc.

376{
377 G4double res = 0.0;
378 if(1 == At && 1 == Zt) {
379 res = hnXsc->HadronNucleonXscNS(aParticle->GetDefinition(), theProton,
380 aParticle->GetKineticEnergy());
381 } else if(1 == At && 0 == Zt) {
382 res = hnXsc->HadronNucleonXscNS(aParticle->GetDefinition(), theNeutron,
383 aParticle->GetKineticEnergy());
384 }
385 return res;
386}
G4double HadronNucleonXscNS(const G4ParticleDefinition *theParticle, const G4ParticleDefinition *nucleon, G4double ekin)

References G4DynamicParticle::GetDefinition(), G4DynamicParticle::GetKineticEnergy(), G4HadronNucleonXsc::HadronNucleonXscNS(), hnXsc, theNeutron, and theProton.

◆ GetHadronNucleonXscPDG() [1/2]

G4double G4ComponentGGHadronNucleusXsc::GetHadronNucleonXscPDG ( const G4DynamicParticle aParticle,
const G4Element anElement 
)

Definition at line 323 of file G4ComponentGGHadronNucleusXsc.cc.

325{
326 G4int At = G4lrint(anElement->GetN()); // number of nucleons
327 G4int Zt = anElement->GetZasInt(); // number of protons
328
329 return GetHadronNucleonXscPDG(aParticle, At, Zt);
330}
G4double GetHadronNucleonXscPDG(const G4DynamicParticle *, const G4Element *)

References G4lrint(), GetHadronNucleonXscPDG(), G4Element::GetN(), and G4Element::GetZasInt().

Referenced by GetHadronNucleonXscPDG().

◆ GetHadronNucleonXscPDG() [2/2]

G4double G4ComponentGGHadronNucleusXsc::GetHadronNucleonXscPDG ( const G4DynamicParticle aParticle,
G4int  At,
G4int  Zt 
)

Definition at line 337 of file G4ComponentGGHadronNucleusXsc.cc.

339{
340 G4double res = 0.0;
341 if(1 == At && 1 == Zt) {
342 res = hnXsc->HadronNucleonXscPDG(aParticle->GetDefinition(), theProton,
343 aParticle->GetKineticEnergy());
344 } else if(1 == At && 0 == Zt) {
346 aParticle->GetKineticEnergy());
347 } else {
349 aParticle->GetKineticEnergy(), Zt, At);
350 res = fTotalXsc;
351 }
352 return res;
353}
G4double HadronNucleonXscPDG(const G4ParticleDefinition *theParticle, const G4ParticleDefinition *nucleon, G4double ekin)

References ComputeCrossSections(), fTotalXsc, G4DynamicParticle::GetDefinition(), G4DynamicParticle::GetKineticEnergy(), G4HadronNucleonXsc::HadronNucleonXscPDG(), hnXsc, theNeutron, and theProton.

◆ GetHNinelasticXsc() [1/2]

G4double G4ComponentGGHadronNucleusXsc::GetHNinelasticXsc ( const G4DynamicParticle aParticle,
const G4Element anElement 
)

Definition at line 393 of file G4ComponentGGHadronNucleusXsc.cc.

395{
396 G4int At = G4lrint(anElement->GetN()); // number of nucleons
397 G4int Zt = anElement->GetZasInt(); // number of protons
398
399 return GetHNinelasticXsc(aParticle, At, Zt);
400}
G4double GetHNinelasticXsc(const G4DynamicParticle *, const G4Element *)

References G4lrint(), GetHNinelasticXsc(), G4Element::GetN(), and G4Element::GetZasInt().

Referenced by GetHNinelasticXsc().

◆ GetHNinelasticXsc() [2/2]

G4double G4ComponentGGHadronNucleusXsc::GetHNinelasticXsc ( const G4DynamicParticle aParticle,
G4int  At,
G4int  Zt 
)

◆ GetHNinelasticXscVU()

G4double G4ComponentGGHadronNucleusXsc::GetHNinelasticXscVU ( const G4DynamicParticle aParticle,
G4int  At,
G4int  Zt 
)

Definition at line 426 of file G4ComponentGGHadronNucleusXsc.cc.

428{
429 const G4ParticleDefinition* hadron = aParticle->GetDefinition();
430 G4double e = aParticle->GetKineticEnergy();
431 G4int Nt = std::max(At - Zt, 0);
432
434 G4double sumInelastic = Zt*hnXsc->GetInelasticHadronNucleonXsc();
435 if(Nt > 0) {
437 sumInelastic += Nt*hnXsc->GetInelasticHadronNucleonXsc();
438 }
439 return sumInelastic;
440}
G4double HadronNucleonXscVU(const G4ParticleDefinition *theParticle, const G4ParticleDefinition *nucleon, G4double ekin)

References G4DynamicParticle::GetDefinition(), G4HadronNucleonXsc::GetInelasticHadronNucleonXsc(), G4DynamicParticle::GetKineticEnergy(), G4HadronNucleonXsc::HadronNucleonXscVU(), hnXsc, G4INCL::Math::max(), theNeutron, and theProton.

◆ GetInelasticElementCrossSection() [1/2]

G4double G4VComponentCrossSection::GetInelasticElementCrossSection ( const G4ParticleDefinition p,
G4double  kinEnergy,
const G4Element elm 
)
inlineinherited

◆ GetInelasticElementCrossSection() [2/2]

G4double G4ComponentGGHadronNucleusXsc::GetInelasticElementCrossSection ( const G4ParticleDefinition aParticle,
G4double  kinEnergy,
G4int  Z,
G4double  A 
)
finalvirtual

Implements G4VComponentCrossSection.

Definition at line 100 of file G4ComponentGGHadronNucleusXsc.cc.

103{
104 ComputeCrossSections(aParticle, kinEnergy, Z, G4lrint(A));
105 return fInelasticXsc;
106}

References A, ComputeCrossSections(), fInelasticXsc, G4lrint(), and Z.

◆ GetInelasticGlauberGribov()

G4double G4ComponentGGHadronNucleusXsc::GetInelasticGlauberGribov ( const G4DynamicParticle dp,
G4int  Z,
G4int  A 
)
inline

◆ GetInelasticGlauberGribovXsc()

G4double G4ComponentGGHadronNucleusXsc::GetInelasticGlauberGribovXsc ( ) const
inline

Definition at line 131 of file G4ComponentGGHadronNucleusXsc.hh.

131{ return fInelasticXsc; };

References fInelasticXsc.

Referenced by G4ComponentGGNuclNuclXsc::ComputeCrossSections().

◆ GetInelasticIsotopeCrossSection()

G4double G4ComponentGGHadronNucleusXsc::GetInelasticIsotopeCrossSection ( const G4ParticleDefinition aParticle,
G4double  kinEnergy,
G4int  Z,
G4int  A 
)
finalvirtual

Implements G4VComponentCrossSection.

Definition at line 110 of file G4ComponentGGHadronNucleusXsc.cc.

113{
114 ComputeCrossSections(aParticle, kinEnergy, Z, A);
115 return fInelasticXsc;
116}

References A, ComputeCrossSections(), fInelasticXsc, and Z.

◆ GetIsoCrossSection()

G4double G4ComponentGGHadronNucleusXsc::GetIsoCrossSection ( const G4DynamicParticle dp,
G4int  Z,
G4int  A,
const G4Isotope iso = nullptr,
const G4Element elm = nullptr,
const G4Material mat = nullptr 
)
inline

◆ GetMaxKinEnergy()

G4double G4VComponentCrossSection::GetMaxKinEnergy ( ) const
inlineinherited

Definition at line 203 of file G4VComponentCrossSection.hh.

204{
205 return maxKinEnergy;
206}

References G4VComponentCrossSection::maxKinEnergy.

◆ GetMinKinEnergy()

G4double G4VComponentCrossSection::GetMinKinEnergy ( ) const
inlineinherited

Definition at line 193 of file G4VComponentCrossSection.hh.

194{
195 return minKinEnergy;
196}

References G4VComponentCrossSection::minKinEnergy.

◆ GetModelInLog()

G4double G4ComponentGGHadronNucleusXsc::GetModelInLog ( ) const
inline

Definition at line 128 of file G4ComponentGGHadronNucleusXsc.hh.

128{ return fModelInLog; };

References fModelInLog.

◆ GetName()

const G4String & G4VComponentCrossSection::GetName ( ) const
inlineinherited

Definition at line 208 of file G4VComponentCrossSection.hh.

209{
210 return name;
211}

References G4VComponentCrossSection::name.

◆ GetParticleBarCorIn()

G4double G4ComponentGGHadronNucleusXsc::GetParticleBarCorIn ( const G4ParticleDefinition theParticle,
G4int  Z 
)
inline

Definition at line 232 of file G4ComponentGGHadronNucleusXsc.hh.

234{
235 G4double cor = 1.0;
236 G4int z = std::min(92, std::max(ZZ, 1));
237 if( theParticle == theProton ) cor = fProtonBarCorrectionIn[z];
238 else if( theParticle == theNeutron) cor = fNeutronBarCorrectionIn[z];
239 else if( theParticle == thePiPlus ) cor = fPionPlusBarCorrectionIn[z];
240 else if( theParticle == thePiMinus) cor = fPionMinusBarCorrectionIn[z];
241 return cor;
242}
static const G4double fNeutronBarCorrectionIn[93]
static const G4double fProtonBarCorrectionIn[93]
static const G4double fPionMinusBarCorrectionIn[93]
static const G4double fPionPlusBarCorrectionIn[93]

References fNeutronBarCorrectionIn, fPionMinusBarCorrectionIn, fPionPlusBarCorrectionIn, fProtonBarCorrectionIn, G4INCL::Math::max(), G4INCL::Math::min(), theNeutron, thePiMinus, thePiPlus, and theProton.

Referenced by ComputeCrossSections().

◆ GetParticleBarCorTot()

G4double G4ComponentGGHadronNucleusXsc::GetParticleBarCorTot ( const G4ParticleDefinition theParticle,
G4int  Z 
)
inline

Definition at line 214 of file G4ComponentGGHadronNucleusXsc.hh.

216{
217 G4double cor = 1.0;
218 G4int z = std::min(92, std::max(ZZ, 1));
219 if( theParticle == theProton ) cor = fProtonBarCorrectionTot[z];
220 else if( theParticle == theNeutron) cor = fNeutronBarCorrectionTot[z];
221 else if( theParticle == thePiPlus ) cor = fPionPlusBarCorrectionTot[z];
222 else if( theParticle == thePiMinus) cor = fPionMinusBarCorrectionTot[z];
223 return cor;
224}
static const G4double fPionMinusBarCorrectionTot[93]
static const G4double fNeutronBarCorrectionTot[93]
static const G4double fPionPlusBarCorrectionTot[93]
static const G4double fProtonBarCorrectionTot[93]

References fNeutronBarCorrectionTot, fPionMinusBarCorrectionTot, fPionPlusBarCorrectionTot, fProtonBarCorrectionTot, G4INCL::Math::max(), G4INCL::Math::min(), theNeutron, thePiMinus, thePiPlus, and theProton.

Referenced by ComputeCrossSections().

◆ GetProductionElementCrossSection()

G4double G4ComponentGGHadronNucleusXsc::GetProductionElementCrossSection ( const G4ParticleDefinition aParticle,
G4double  kinEnergy,
G4int  Z,
G4double  A 
)

Definition at line 153 of file G4ComponentGGHadronNucleusXsc.cc.

156{
157 ComputeCrossSections(aParticle, kinEnergy, Z, G4lrint(A));
158 return fProductionXsc;
159}

References A, ComputeCrossSections(), fProductionXsc, G4lrint(), and Z.

◆ GetProductionGlauberGribovXsc()

G4double G4ComponentGGHadronNucleusXsc::GetProductionGlauberGribovXsc ( ) const
inline

Definition at line 132 of file G4ComponentGGHadronNucleusXsc.hh.

132{ return fProductionXsc; };

References fProductionXsc.

Referenced by G4ComponentGGNuclNuclXsc::ComputeCrossSections().

◆ GetProductionIsotopeCrossSection()

G4double G4ComponentGGHadronNucleusXsc::GetProductionIsotopeCrossSection ( const G4ParticleDefinition aParticle,
G4double  kinEnergy,
G4int  Z,
G4int  A 
)

Definition at line 163 of file G4ComponentGGHadronNucleusXsc.cc.

166{
167 ComputeCrossSections(aParticle, kinEnergy, Z, A);
168 return fProductionXsc;
169}

References A, ComputeCrossSections(), fProductionXsc, and Z.

◆ GetRatioQE()

G4double G4ComponentGGHadronNucleusXsc::GetRatioQE ( const G4DynamicParticle aParticle,
G4int  At,
G4int  Zt 
)

◆ GetRatioSD()

G4double G4ComponentGGHadronNucleusXsc::GetRatioSD ( const G4DynamicParticle aParticle,
G4int  At,
G4int  Zt 
)

◆ GetTotalElementCrossSection() [1/2]

G4double G4VComponentCrossSection::GetTotalElementCrossSection ( const G4ParticleDefinition p,
G4double  kinEnergy,
const G4Element elm 
)
inlineinherited

Definition at line 149 of file G4VComponentCrossSection.hh.

153{
154 return GetTotalElementCrossSection(p,kinEnergy,
155 elm->GetZasInt(),elm->GetN());
156}
G4double GetTotalElementCrossSection(const G4ParticleDefinition *, G4double kinEnergy, const G4Element *)

References G4Element::GetN(), G4VComponentCrossSection::GetTotalElementCrossSection(), and G4Element::GetZasInt().

Referenced by G4VComponentCrossSection::GetTotalElementCrossSection().

◆ GetTotalElementCrossSection() [2/2]

G4double G4ComponentGGHadronNucleusXsc::GetTotalElementCrossSection ( const G4ParticleDefinition aParticle,
G4double  kinEnergy,
G4int  Z,
G4double  A 
)
finalvirtual

Implements G4VComponentCrossSection.

Definition at line 80 of file G4ComponentGGHadronNucleusXsc.cc.

83{
84 ComputeCrossSections(aParticle, kinEnergy, Z, G4lrint(A));
85 return fTotalXsc;
86}

References A, ComputeCrossSections(), fTotalXsc, G4lrint(), and Z.

◆ GetTotalGlauberGribovXsc()

G4double G4ComponentGGHadronNucleusXsc::GetTotalGlauberGribovXsc ( ) const
inline

Definition at line 129 of file G4ComponentGGHadronNucleusXsc.hh.

129{ return fTotalXsc; };

References fTotalXsc.

Referenced by G4ComponentGGNuclNuclXsc::ComputeCrossSections().

◆ GetTotalIsotopeCrossSection()

G4double G4ComponentGGHadronNucleusXsc::GetTotalIsotopeCrossSection ( const G4ParticleDefinition aParticle,
G4double  kinEnergy,
G4int  Z,
G4int  A 
)
finalvirtual

Implements G4VComponentCrossSection.

Definition at line 90 of file G4ComponentGGHadronNucleusXsc.cc.

93{
94 ComputeCrossSections(aParticle, kinEnergy, Z, A);
95 return fTotalXsc;
96}

References A, ComputeCrossSections(), fTotalXsc, and Z.

◆ GetVerboseLevel()

G4int G4VComponentCrossSection::GetVerboseLevel ( ) const
inlineinherited

◆ SetMaxKinEnergy()

void G4VComponentCrossSection::SetMaxKinEnergy ( G4double  value)
inlineinherited

Definition at line 198 of file G4VComponentCrossSection.hh.

199{
200 maxKinEnergy = value;
201}

References G4VComponentCrossSection::maxKinEnergy.

◆ SetMinKinEnergy()

void G4VComponentCrossSection::SetMinKinEnergy ( G4double  value)
inlineinherited

Definition at line 188 of file G4VComponentCrossSection.hh.

189{
190 minKinEnergy = value;
191}

References G4VComponentCrossSection::minKinEnergy.

◆ SetVerboseLevel()

void G4VComponentCrossSection::SetVerboseLevel ( G4int  value)
inlineinherited

Definition at line 178 of file G4VComponentCrossSection.hh.

179{
180 verboseLevel = value;
181}

References G4VComponentCrossSection::verboseLevel.

Field Documentation

◆ fA

G4int G4ComponentGGHadronNucleusXsc::fA
private

Definition at line 172 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by ComputeCrossSections().

◆ fAxsc2piR2

G4double G4ComponentGGHadronNucleusXsc::fAxsc2piR2
private

Definition at line 153 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by ComputeCrossSections(), and GetAxsc2piR2().

◆ fDiffractionXsc

G4double G4ComponentGGHadronNucleusXsc::fDiffractionXsc
private

◆ fElasticXsc

G4double G4ComponentGGHadronNucleusXsc::fElasticXsc
private

◆ fEnergy

G4double G4ComponentGGHadronNucleusXsc::fEnergy
private

Definition at line 154 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by ComputeCrossSections().

◆ fInelasticXsc

G4double G4ComponentGGHadronNucleusXsc::fInelasticXsc
private

◆ fModelInLog

G4double G4ComponentGGHadronNucleusXsc::fModelInLog
private

Definition at line 153 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by ComputeCrossSections(), and GetModelInLog().

◆ fNeutronBarCorrectionIn

const G4double G4ComponentGGHadronNucleusXsc::fNeutronBarCorrectionIn
staticprivate
Initial value:
= {
1.0, 1.0, 1.167421e+00, 1.156250e+00, 1.205364e+00, 1.154225e+00, 1.120391e+00,
1.124632e+00, 1.129460e+00, 1.107863e+00, 1.102152e+00, 1.104593e+00, 1.100285e+00,
1.098450e+00, 1.092677e+00, 1.101124e+00, 1.106461e+00, 1.115049e+00, 1.123903e+00,
1.126661e+00, 1.131259e+00, 1.133949e+00, 1.134185e+00, 1.133767e+00, 1.132813e+00,
1.131515e+00, 1.144338e+00,
1.134171e+00, 1.139206e+00, 1.148474e+00,
1.142189e+00,
1.140725e+00, 1.140100e+00, 1.139848e+00, 1.137674e+00, 1.138645e+00, 1.136339e+00,
1.136439e+00, 1.135946e+00, 1.136431e+00, 1.135702e+00, 1.135703e+00, 1.134113e+00,
1.131935e+00, 1.128381e+00, 1.126373e+00, 1.122453e+00, 1.120908e+00, 1.115953e+00,
1.115947e+00, 1.114426e+00, 1.111749e+00, 1.106207e+00, 1.107494e+00, 1.103622e+00,
1.102576e+00, 1.098816e+00, 1.097889e+00, 1.097306e+00, 1.097130e+00, 1.094578e+00,
1.094552e+00, 1.090222e+00, 1.089358e+00, 1.085409e+00, 1.084560e+00, 1.082182e+00,
1.080773e+00, 1.079464e+00, 1.078724e+00, 1.076121e+00, 1.075235e+00, 1.073159e+00,
1.071920e+00, 1.070395e+00, 1.069503e+00, 1.067525e+00, 1.066919e+00, 1.065779e+00,
1.065319e+00, 1.063730e+00, 1.062092e+00, 1.061085e+00, 1.059908e+00, 1.059815e+00,
1.059109e+00, 1.051920e+00, 1.051258e+00, 1.049473e+00, 1.048823e+00, 1.045984e+00,
1.046435e+00, 1.042614e+00
}

Definition at line 141 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by GetParticleBarCorIn().

◆ fNeutronBarCorrectionTot

const G4double G4ComponentGGHadronNucleusXsc::fNeutronBarCorrectionTot
staticprivate
Initial value:
= {
1.0, 1.0, 1.42517e+00,
1.082002e+00, 1.116171e+00, 1.078747e+00, 1.061315e+00,
1.058205e+00, 1.082663e+00, 1.068500e+00, 1.076912e+00, 1.083475e+00, 1.079117e+00,
1.071856e+00, 1.071990e+00, 1.073774e+00, 1.079356e+00, 1.081314e+00, 1.082056e+00,
1.090772e+00, 1.096776e+00, 1.095828e+00, 1.097678e+00, 1.099157e+00, 1.103677e+00,
1.105132e+00, 1.109806e+00, 1.110816e+00, 1.117378e+00, 1.115165e+00, 1.115710e+00,
1.111855e+00, 1.110482e+00, 1.110112e+00, 1.106676e+00, 1.108706e+00, 1.105549e+00,
1.106318e+00, 1.106242e+00, 1.107672e+00, 1.107342e+00, 1.108119e+00, 1.106655e+00,
1.102588e+00, 1.096657e+00, 1.092920e+00, 1.086629e+00, 1.083592e+00, 1.076030e+00,
1.083777e+00, 1.089460e+00, 1.086545e+00, 1.079924e+00, 1.082218e+00, 1.077798e+00,
1.077062e+00, 1.072825e+00, 1.072241e+00, 1.072104e+00, 1.072490e+00, 1.069829e+00,
1.070398e+00, 1.065458e+00, 1.064968e+00, 1.060524e+00, 1.060048e+00, 1.057620e+00,
1.056428e+00, 1.055366e+00, 1.055017e+00, 1.052304e+00, 1.051767e+00, 1.049728e+00,
1.048745e+00, 1.047399e+00, 1.045876e+00, 1.042972e+00, 1.041824e+00, 1.039993e+00,
1.039021e+00, 1.036627e+00, 1.034176e+00, 1.032526e+00, 1.033633e+00, 1.036107e+00,
1.037803e+00, 1.031266e+00, 1.032991e+00, 1.033284e+00, 1.035015e+00, 1.033945e+00,
1.037075e+00, 1.034721e+00
}

Definition at line 140 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by GetParticleBarCorTot().

◆ fParticle

const G4ParticleDefinition* G4ComponentGGHadronNucleusXsc::fParticle
private

Definition at line 171 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by ComputeCrossSections().

◆ fPionMinusBarCorrectionIn

const G4double G4ComponentGGHadronNucleusXsc::fPionMinusBarCorrectionIn
staticprivate
Initial value:
= {
1.0, 1.0,
1.463e+00, 1.100898e+00, 1.106773e+00, 1.070289e+00, 1.040514e+00, 1.062628e+00,
1.047992e+00, 1.038041e+00, 1.035862e+00, 1.043679e+00, 1.052466e+00, 1.065780e+00,
1.070551e+00, 1.078869e+00, 1.081541e+00, 1.090455e+00, 1.100847e+00, 1.098511e+00,
1.102226e+00, 1.118865e+00, 1.123143e+00, 1.126904e+00, 1.127785e+00, 1.130444e+00,
1.148502e+00, 1.127678e+00, 1.127244e+00, 1.123634e+00, 1.118347e+00, 1.118988e+00,
1.118957e+00, 1.118696e+00, 1.118074e+00, 1.117722e+00, 1.116717e+00, 1.116111e+00,
1.115311e+00, 1.114745e+00, 1.113814e+00, 1.113069e+00, 1.113141e+00, 1.113660e+00,
1.112249e+00, 1.111343e+00, 1.109718e+00, 1.108942e+00, 1.108310e+00, 1.109549e+00,
1.110227e+00, 1.108846e+00, 1.106183e+00, 1.106354e+00, 1.104388e+00, 1.103583e+00,
1.101632e+00, 1.100896e+00, 1.100296e+00, 1.099873e+00, 1.098420e+00, 1.098082e+00,
1.095892e+00, 1.095162e+00, 1.093144e+00, 1.092438e+00, 1.091083e+00, 1.090142e+00,
1.089236e+00, 1.088604e+00, 1.087159e+00, 1.086465e+00, 1.085239e+00, 1.084388e+00,
1.083473e+00, 1.078373e+00, 1.077136e+00, 1.076450e+00, 1.075561e+00, 1.074973e+00,
1.073898e+00, 1.072806e+00, 1.067706e+00, 1.068684e+00, 1.068618e+00, 1.068294e+00,
1.065241e+00, 1.064939e+00, 1.064166e+00, 1.063872e+00, 1.062659e+00, 1.062828e+00,
1.062699e+00
}

Definition at line 150 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by GetParticleBarCorIn().

◆ fPionMinusBarCorrectionTot

const G4double G4ComponentGGHadronNucleusXsc::fPionMinusBarCorrectionTot
staticprivate
Initial value:
= {
1.0, 1.0,
1.3956e+00, 1.077959e+00, 1.129145e+00, 1.102088e+00, 1.089765e+00, 1.083542e+00,
1.089995e+00, 1.104895e+00, 1.097154e+00, 1.127663e+00, 1.133063e+00, 1.137425e+00,
1.136724e+00, 1.133859e+00, 1.132498e+00, 1.130276e+00, 1.127896e+00, 1.127656e+00,
1.127905e+00, 1.164210e+00, 1.162259e+00, 1.160075e+00, 1.158978e+00, 1.156649e+00,
1.194157e+00, 1.199177e+00, 1.198983e+00, 1.202325e+00, 1.221967e+00, 1.217548e+00,
1.214389e+00, 1.211760e+00, 1.207335e+00, 1.206081e+00, 1.201766e+00, 1.199779e+00,
1.197283e+00, 1.195706e+00, 1.193071e+00, 1.191115e+00, 1.208838e+00, 1.212681e+00,
1.209235e+00, 1.207163e+00, 1.203451e+00, 1.201807e+00, 1.203283e+00, 1.203388e+00,
1.202244e+00, 1.216509e+00, 1.211066e+00, 1.211504e+00, 1.207539e+00, 1.205991e+00,
1.202143e+00, 1.200724e+00, 1.199595e+00, 1.198815e+00, 1.196025e+00, 1.195390e+00,
1.191137e+00, 1.189791e+00, 1.185888e+00, 1.184575e+00, 1.181996e+00, 1.180229e+00,
1.178545e+00, 1.177355e+00, 1.174616e+00, 1.173312e+00, 1.171016e+00, 1.169424e+00,
1.184120e+00, 1.181478e+00, 1.179085e+00, 1.177817e+00, 1.176124e+00, 1.175003e+00,
1.172947e+00, 1.170858e+00, 1.168170e+00, 1.169397e+00, 1.169304e+00, 1.168706e+00,
1.162774e+00, 1.162217e+00, 1.160740e+00, 1.160196e+00, 1.157857e+00, 1.158220e+00,
1.157267e+00
}

Definition at line 149 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by GetParticleBarCorTot().

◆ fPionPlusBarCorrectionIn

const G4double G4ComponentGGHadronNucleusXsc::fPionPlusBarCorrectionIn
staticprivate
Initial value:
= {
1.0, 1.0,
1.140246e+00, 1.097872e+00, 1.104301e+00, 1.068722e+00, 1.056495e+00, 1.062622e+00,
1.047987e+00, 1.037032e+00, 1.035686e+00, 1.042870e+00, 1.052222e+00, 1.075100e+00,
1.084480e+00, 1.078286e+00, 1.081488e+00, 1.089713e+00, 1.099105e+00, 1.098003e+00,
1.102175e+00, 1.117707e+00, 1.121734e+00, 1.125229e+00, 1.126457e+00, 1.128905e+00,
1.163312e+00, 1.126263e+00, 1.126459e+00, 1.135191e+00, 1.116986e+00, 1.117184e+00,
1.117037e+00, 1.116777e+00, 1.115858e+00, 1.115745e+00, 1.114489e+00, 1.113993e+00,
1.113226e+00, 1.112818e+00, 1.111890e+00, 1.111238e+00, 1.111209e+00, 1.111775e+00,
1.110256e+00, 1.109414e+00, 1.107647e+00, 1.106980e+00, 1.106096e+00, 1.107331e+00,
1.107849e+00, 1.106407e+00, 1.103426e+00, 1.103896e+00, 1.101756e+00, 1.101031e+00,
1.098915e+00, 1.098260e+00, 1.097768e+00, 1.097487e+00, 1.095964e+00, 1.095773e+00,
1.093348e+00, 1.092687e+00, 1.090465e+00, 1.089821e+00, 1.088394e+00, 1.087462e+00,
1.086571e+00, 1.085997e+00, 1.084451e+00, 1.083798e+00, 1.082513e+00, 1.081670e+00,
1.080735e+00, 1.075659e+00, 1.074341e+00, 1.073689e+00, 1.072787e+00, 1.072237e+00,
1.071107e+00, 1.069955e+00, 1.074856e+00, 1.065873e+00, 1.065938e+00, 1.065694e+00,
1.062192e+00, 1.061967e+00, 1.061180e+00, 1.060960e+00, 1.059646e+00, 1.059975e+00,
1.059658e+00
}

Definition at line 147 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by GetParticleBarCorIn().

◆ fPionPlusBarCorrectionTot

const G4double G4ComponentGGHadronNucleusXsc::fPionPlusBarCorrectionTot
staticprivate
Initial value:
= {
1.0, 1.0,
1.075927e+00, 1.074407e+00, 1.126098e+00, 1.100127e+00, 1.089742e+00, 1.083536e+00,
1.089988e+00, 1.103566e+00, 1.096922e+00, 1.126573e+00, 1.132734e+00, 1.136512e+00,
1.136629e+00, 1.133086e+00, 1.132428e+00, 1.129299e+00, 1.125622e+00, 1.126992e+00,
1.127840e+00, 1.162670e+00, 1.160392e+00, 1.157864e+00, 1.157227e+00, 1.154627e+00,
1.192555e+00, 1.197243e+00, 1.197911e+00, 1.200326e+00, 1.220053e+00, 1.215019e+00,
1.211703e+00, 1.209080e+00, 1.204248e+00, 1.203328e+00, 1.198671e+00, 1.196840e+00,
1.194392e+00, 1.193037e+00, 1.190408e+00, 1.188583e+00, 1.206127e+00, 1.210028e+00,
1.206434e+00, 1.204456e+00, 1.200547e+00, 1.199058e+00, 1.200174e+00, 1.200276e+00,
1.198912e+00, 1.213048e+00, 1.207160e+00, 1.208020e+00, 1.203814e+00, 1.202380e+00,
1.198306e+00, 1.197002e+00, 1.196027e+00, 1.195449e+00, 1.192563e+00, 1.192135e+00,
1.187556e+00, 1.186308e+00, 1.182124e+00, 1.180900e+00, 1.178224e+00, 1.176471e+00,
1.174811e+00, 1.173702e+00, 1.170827e+00, 1.169581e+00, 1.167205e+00, 1.165626e+00,
1.180244e+00, 1.177626e+00, 1.175121e+00, 1.173903e+00, 1.172192e+00, 1.171128e+00,
1.168997e+00, 1.166826e+00, 1.164130e+00, 1.165412e+00, 1.165504e+00, 1.165020e+00,
1.158462e+00, 1.158014e+00, 1.156519e+00, 1.156081e+00, 1.153602e+00, 1.154190e+00,
1.152974e+00
}

Definition at line 146 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by GetParticleBarCorTot().

◆ fProductionXsc

G4double G4ComponentGGHadronNucleusXsc::fProductionXsc
private

◆ fProtonBarCorrectionIn

const G4double G4ComponentGGHadronNucleusXsc::fProtonBarCorrectionIn
staticprivate
Initial value:
= {
1.0, 1.0,
1.147419e+00,
1.156248e+00, 1.205362e+00, 1.154224e+00, 1.120390e+00, 1.124630e+00,
1.129459e+00, 1.107861e+00, 1.102151e+00, 1.104591e+00, 1.100284e+00, 1.098449e+00,
1.092675e+00, 1.101122e+00, 1.106460e+00, 1.115048e+00, 1.123902e+00, 1.126659e+00,
1.131258e+00, 1.133948e+00, 1.134183e+00, 1.133766e+00, 1.132812e+00, 1.131514e+00,
1.140337e+00,
1.134170e+00, 1.139205e+00, 1.151472e+00,
1.142188e+00, 1.140724e+00,
1.140099e+00, 1.139847e+00, 1.137672e+00, 1.138644e+00, 1.136338e+00, 1.136438e+00,
1.135945e+00, 1.136429e+00, 1.135701e+00, 1.135702e+00, 1.134112e+00, 1.131934e+00,
1.128380e+00, 1.126371e+00, 1.122452e+00, 1.120907e+00, 1.115952e+00, 1.115946e+00,
1.114425e+00, 1.111748e+00, 1.106205e+00, 1.107493e+00, 1.103621e+00, 1.102575e+00,
1.098815e+00, 1.097888e+00, 1.097305e+00, 1.097129e+00, 1.094577e+00, 1.094551e+00,
1.090221e+00, 1.089357e+00, 1.085408e+00, 1.084559e+00, 1.082181e+00, 1.080772e+00,
1.079463e+00, 1.078723e+00, 1.076120e+00, 1.075234e+00, 1.073158e+00, 1.071919e+00,
1.070394e+00, 1.069502e+00, 1.067524e+00, 1.066918e+00, 1.065778e+00, 1.065318e+00,
1.063729e+00, 1.062091e+00, 1.061084e+00, 1.059907e+00, 1.059814e+00, 1.059108e+00,
1.051919e+00, 1.051257e+00, 1.049472e+00, 1.048822e+00, 1.045983e+00, 1.046434e+00,
1.042613e+00
}

Definition at line 144 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by GetParticleBarCorIn().

◆ fProtonBarCorrectionTot

const G4double G4ComponentGGHadronNucleusXsc::fProtonBarCorrectionTot
staticprivate
Initial value:
= {
1.0, 1.0,
1.118515e+00, 1.082000e+00, 1.116169e+00, 1.078745e+00, 1.061313e+00, 1.058203e+00,
1.082661e+00, 1.068498e+00, 1.076910e+00, 1.083474e+00, 1.079115e+00, 1.071854e+00,
1.071988e+00, 1.073772e+00, 1.079355e+00, 1.081312e+00, 1.082054e+00, 1.090770e+00,
1.096774e+00, 1.095827e+00, 1.097677e+00, 1.099156e+00, 1.103676e+00, 1.105130e+00,
1.109805e+00, 1.110814e+00, 1.117377e+00, 1.115163e+00, 1.115708e+00, 1.111853e+00,
1.110480e+00, 1.110111e+00, 1.106674e+00, 1.108705e+00, 1.105548e+00, 1.106317e+00,
1.106241e+00, 1.107671e+00, 1.107341e+00, 1.108118e+00, 1.106654e+00, 1.102586e+00,
1.096655e+00, 1.092918e+00, 1.086628e+00, 1.083590e+00, 1.076028e+00, 1.083776e+00,
1.089458e+00, 1.086543e+00, 1.079923e+00, 1.082216e+00, 1.077797e+00, 1.077061e+00,
1.072824e+00, 1.072239e+00, 1.072103e+00, 1.072488e+00, 1.069828e+00, 1.070396e+00,
1.065456e+00, 1.064966e+00, 1.060523e+00, 1.060047e+00, 1.057618e+00, 1.056427e+00,
1.055365e+00, 1.055016e+00, 1.052303e+00, 1.051766e+00, 1.049727e+00, 1.048743e+00,
1.047397e+00, 1.045875e+00, 1.042971e+00, 1.041823e+00, 1.039992e+00, 1.039019e+00,
1.036626e+00, 1.034175e+00, 1.032525e+00, 1.033632e+00, 1.036106e+00, 1.037802e+00,
1.031265e+00, 1.032990e+00, 1.033283e+00, 1.035014e+00, 1.033944e+00, 1.037074e+00,
1.034720e+00
}

Definition at line 143 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by GetParticleBarCorTot().

◆ fTotalXsc

G4double G4ComponentGGHadronNucleusXsc::fTotalXsc
private

◆ fZ

G4int G4ComponentGGHadronNucleusXsc::fZ
private

Definition at line 172 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by ComputeCrossSections().

◆ hnXsc

G4HadronNucleonXsc* G4ComponentGGHadronNucleusXsc::hnXsc
private

◆ maxKinEnergy

G4double G4VComponentCrossSection::maxKinEnergy
privateinherited

◆ minKinEnergy

G4double G4VComponentCrossSection::minKinEnergy
privateinherited

◆ name

const G4String G4VComponentCrossSection::name
privateinherited

◆ registry

G4CrossSectionDataSetRegistry* G4VComponentCrossSection::registry
privateinherited

◆ theANeutron

const G4ParticleDefinition* G4ComponentGGHadronNucleusXsc::theANeutron
private

Definition at line 160 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by G4ComponentGGHadronNucleusXsc().

◆ theAProton

const G4ParticleDefinition* G4ComponentGGHadronNucleusXsc::theAProton
private

Definition at line 159 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by G4ComponentGGHadronNucleusXsc().

◆ theGamma

const G4ParticleDefinition* G4ComponentGGHadronNucleusXsc::theGamma
private

Definition at line 156 of file G4ComponentGGHadronNucleusXsc.hh.

Referenced by G4ComponentGGHadronNucleusXsc().

◆ theK0L

const G4ParticleDefinition* G4ComponentGGHadronNucleusXsc::theK0L
private

◆ theK0S

const G4ParticleDefinition* G4ComponentGGHadronNucleusXsc::theK0S
private

◆ theKMinus

const G4ParticleDefinition* G4ComponentGGHadronNucleusXsc::theKMinus
private

◆ theKPlus

const G4ParticleDefinition* G4ComponentGGHadronNucleusXsc::theKPlus
private

◆ theNeutron

const G4ParticleDefinition* G4ComponentGGHadronNucleusXsc::theNeutron
private

◆ thePiMinus

const G4ParticleDefinition* G4ComponentGGHadronNucleusXsc::thePiMinus
private

◆ thePiPlus

const G4ParticleDefinition* G4ComponentGGHadronNucleusXsc::thePiPlus
private

◆ theProton

const G4ParticleDefinition* G4ComponentGGHadronNucleusXsc::theProton
private

◆ verboseLevel

G4int G4VComponentCrossSection::verboseLevel
privateinherited

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