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

#include <G4BGGPionInelasticXS.hh>

Inheritance diagram for G4BGGPionInelasticXS:
G4VCrossSectionDataSet

Public Member Functions

void BuildPhysicsTable (const G4ParticleDefinition &) final
 
G4double ComputeCrossSection (const G4DynamicParticle *, const G4Element *, const G4Material *mat=nullptr)
 
void CrossSectionDescription (std::ostream &) const final
 
virtual void DumpPhysicsTable (const G4ParticleDefinition &)
 
bool ForAllAtomsAndEnergies () const
 
 G4BGGPionInelasticXS (const G4ParticleDefinition *)
 
G4double GetCrossSection (const G4DynamicParticle *, const G4Element *, const G4Material *mat=nullptr)
 
G4double GetElementCrossSection (const G4DynamicParticle *, G4int Z, const G4Material *mat) final
 
G4double GetIsoCrossSection (const G4DynamicParticle *, G4int Z, G4int A, const G4Isotope *iso=nullptr, const G4Element *elm=nullptr, const G4Material *mat=nullptr) final
 
G4double GetMaxKinEnergy () const
 
G4double GetMinKinEnergy () const
 
const G4StringGetName () const
 
virtual G4int GetVerboseLevel () const
 
G4bool IsElementApplicable (const G4DynamicParticle *, G4int Z, const G4Material *mat) final
 
G4bool IsIsoApplicable (const G4DynamicParticle *, G4int Z, G4int A, const G4Element *elm, const G4Material *mat) final
 
virtual const G4IsotopeSelectIsotope (const G4Element *, G4double kinEnergy, G4double logE)
 
void SetForAllAtomsAndEnergies (G4bool val)
 
void SetMaxKinEnergy (G4double value)
 
void SetMinKinEnergy (G4double value)
 
void SetName (const G4String &nam)
 
virtual void SetVerboseLevel (G4int value)
 
 ~G4BGGPionInelasticXS () final
 

Protected Attributes

G4String name
 
G4int verboseLevel
 

Private Member Functions

G4double CoulombFactorPiPlus (G4double kinEnergy, G4int Z)
 
G4double FactorPiMinus (G4double kinEnergy)
 
 G4BGGPionInelasticXS (const G4BGGPionInelasticXS &)
 
G4BGGPionInelasticXSoperator= (const G4BGGPionInelasticXS &right)
 

Private Attributes

G4PowfG4pow
 
G4ComponentGGHadronNucleusXscfGlauber
 
G4double fGlauberEnergy
 
G4HadronNucleonXscfHadron
 
G4double fLowEnergy
 
G4double fLowestEnergy
 
G4UPiNuclearCrossSectionfPion
 
G4bool isForAllAtomsAndEnergies
 
G4bool isMaster
 
G4bool isPiplus
 
G4double maxKinEnergy
 
G4double minKinEnergy
 
G4CrossSectionDataSetRegistryregistry
 
const G4ParticleDefinitionthePiPlus
 
const G4ParticleDefinitiontheProton
 

Static Private Attributes

static G4int theA [93] = {0}
 
static G4double theGlauberFacPiMinus [93] = {0.0}
 
static G4double theGlauberFacPiPlus [93] = {0.0}
 
static G4double theLowEPiMinus [93] = {0.0}
 
static G4double theLowEPiPlus [93] = {0.0}
 

Detailed Description

Definition at line 65 of file G4BGGPionInelasticXS.hh.

Constructor & Destructor Documentation

◆ G4BGGPionInelasticXS() [1/2]

G4BGGPionInelasticXS::G4BGGPionInelasticXS ( const G4ParticleDefinition p)
explicit

Definition at line 66 of file G4BGGPionInelasticXS.cc.

67 : G4VCrossSectionDataSet("BarashenkovGlauberGribov")
68{
69 verboseLevel = 0;
73 SetMinKinEnergy(0.0);
75
76 fPion = nullptr;
77 fGlauber = nullptr;
78 fHadron = nullptr;
79
81
84 isPiplus = (p == thePiPlus);
85 isMaster = false;
87}
const G4ParticleDefinition * thePiPlus
const G4ParticleDefinition * theProton
G4UPiNuclearCrossSection * fPion
G4ComponentGGHadronNucleusXsc * fGlauber
G4HadronNucleonXsc * fHadron
static G4HadronicParameters * Instance()
static G4PionPlus * PionPlus()
Definition: G4PionPlus.cc:97
static G4Pow * GetInstance()
Definition: G4Pow.cc:41
static G4Proton * Proton()
Definition: G4Proton.cc:92
G4VCrossSectionDataSet(const G4String &nam="")
void SetMaxKinEnergy(G4double value)
void SetMinKinEnergy(G4double value)
void SetForAllAtomsAndEnergies(G4bool val)
static constexpr double GeV
static constexpr double MeV

References fG4pow, fGlauber, fGlauberEnergy, fHadron, fLowEnergy, fLowestEnergy, fPion, G4Pow::GetInstance(), CLHEP::GeV, G4HadronicParameters::Instance(), isMaster, isPiplus, CLHEP::MeV, G4PionPlus::PionPlus(), G4Proton::Proton(), G4VCrossSectionDataSet::SetForAllAtomsAndEnergies(), G4VCrossSectionDataSet::SetMaxKinEnergy(), G4VCrossSectionDataSet::SetMinKinEnergy(), thePiPlus, theProton, and G4VCrossSectionDataSet::verboseLevel.

◆ ~G4BGGPionInelasticXS()

G4BGGPionInelasticXS::~G4BGGPionInelasticXS ( )
final

Definition at line 91 of file G4BGGPionInelasticXS.cc.

92{
93 delete fHadron;
94}

References fHadron.

◆ G4BGGPionInelasticXS() [2/2]

G4BGGPionInelasticXS::G4BGGPionInelasticXS ( const G4BGGPionInelasticXS )
private

Member Function Documentation

◆ BuildPhysicsTable()

void G4BGGPionInelasticXS::BuildPhysicsTable ( const G4ParticleDefinition p)
finalvirtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 176 of file G4BGGPionInelasticXS.cc.

177{
178 if(fPion) { return; }
179 if(verboseLevel > 1) {
180 G4cout << "G4BGGPionInelasticXS::BuildPhysicsTable for "
181 << p.GetParticleName() << G4endl;
182 }
183 if(&p == G4PionPlus::PionPlus() || &p == G4PionMinus::PionMinus()) {
184 isPiplus = (&p == G4PionPlus::PionPlus());
185 } else {
187 ed << "This BGG cross section is applicable only to pions and not to "
188 << p.GetParticleName() << G4endl;
189 G4Exception("G4BGGPionInelasticXS::BuildPhysicsTable", "had001",
190 FatalException, ed);
191 return;
192 }
193
197
199
200 if(0 == theA[0]) {
201#ifdef G4MULTITHREADED
202 G4MUTEXLOCK(&pionInelasticXSMutex);
203 if(0 == theA[0]) {
204#endif
205 isMaster = true;
206#ifdef G4MULTITHREADED
207 }
208 G4MUTEXUNLOCK(&pionInelasticXSMutex);
209#endif
210 } else {
211 return;
212 }
213
214 if(isMaster && 0 == theA[0]) {
215
216 theA[0] = theA[1] = 1;
217 G4ThreeVector mom(0.0,0.0,1.0);
219
221 G4double csup, csdn;
222
223 if(verboseLevel > 0) {
224 G4cout << "### G4BGGPionInelasticXS::Initialise for "
225 << p.GetParticleName()
226 << " isPiplus: " << isPiplus
227 << G4endl;
228 }
229 for(G4int iz=2; iz<93; ++iz) {
230 G4int A = G4lrint(nist->GetAtomicMassAmu(iz));
231 theA[iz] = A;
232
233 csup = fGlauber->GetInelasticGlauberGribov(&dp, iz, A);
234 csdn = fPion->GetInelasticCrossSection(&dp, iz, A);
235 theGlauberFacPiPlus[iz] = csdn/csup;
236 }
237
238 dp.SetDefinition(G4PionMinus::PionMinus());
239 for(G4int iz=2; iz<93; ++iz) {
240 csup = fGlauber->GetInelasticGlauberGribov(&dp, iz, theA[iz]);
241 csdn = fPion->GetInelasticCrossSection(&dp, iz, theA[iz]);
242 theGlauberFacPiMinus[iz] = csdn/csup;
243
244 if(verboseLevel > 0) {
245 G4cout << "Z= " << iz << " A= " << theA[iz]
246 << " factorPiPlus= " << theGlauberFacPiPlus[iz]
247 << " factorPiMinus= " << theGlauberFacPiMinus[iz]
248 << G4endl;
249 }
250 }
251
252 theLowEPiPlus[1] = theLowEPiMinus[1]= 1.0;
253 dp.SetDefinition(thePiPlus);
254 dp.SetKineticEnergy(fLowEnergy);
255 for(G4int iz=2; iz<93; ++iz) {
258 }
259
260 dp.SetDefinition(G4PionMinus::PionMinus());
261 for(G4int iz=2; iz<93; ++iz) {
264
265 if(verboseLevel > 0) {
266 G4cout << "Z= " << iz << " A= " << theA[iz]
267 << " LowEtorPiPlus= " << theLowEPiPlus[iz]
268 << " LowEtorPiMinus= " << theLowEPiMinus[iz]
269 << G4endl;
270 }
271 }
272 }
273}
@ FatalException
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
Definition: G4Exception.cc:35
std::ostringstream G4ExceptionDescription
Definition: G4Exception.hh:40
#define G4MUTEXLOCK(mutex)
Definition: G4Threading.hh:251
#define G4MUTEXUNLOCK(mutex)
Definition: G4Threading.hh:254
double G4double
Definition: G4Types.hh:83
int G4int
Definition: G4Types.hh:85
const G4double A[17]
#define G4endl
Definition: G4ios.hh:57
G4GLOB_DLL std::ostream G4cout
G4double CoulombFactorPiPlus(G4double kinEnergy, G4int Z)
static G4double theGlauberFacPiMinus[93]
static G4double theLowEPiMinus[93]
G4double FactorPiMinus(G4double kinEnergy)
static G4double theGlauberFacPiPlus[93]
static G4double theLowEPiPlus[93]
G4double GetInelasticGlauberGribov(const G4DynamicParticle *, G4int Z, G4int A)
static G4NistManager * Instance()
G4double GetAtomicMassAmu(const G4String &symb) const
const G4String & GetParticleName() const
static G4PionMinus * PionMinus()
Definition: G4PionMinus.cc:97
void BuildPhysicsTable(const G4ParticleDefinition &) final
G4double GetInelasticCrossSection(const G4DynamicParticle *aParticle, G4int Z, G4int A) const
int G4lrint(double ad)
Definition: templates.hh:134

References A, G4UPiNuclearCrossSection::BuildPhysicsTable(), CoulombFactorPiPlus(), FactorPiMinus(), FatalException, fGlauber, fGlauberEnergy, fHadron, fLowEnergy, fPion, G4cout, G4endl, G4Exception(), G4lrint(), G4MUTEXLOCK, G4MUTEXUNLOCK, G4NistManager::GetAtomicMassAmu(), G4UPiNuclearCrossSection::GetInelasticCrossSection(), G4ComponentGGHadronNucleusXsc::GetInelasticGlauberGribov(), G4ParticleDefinition::GetParticleName(), G4NistManager::Instance(), isMaster, isPiplus, G4PionMinus::PionMinus(), G4PionPlus::PionPlus(), G4DynamicParticle::SetDefinition(), G4DynamicParticle::SetKineticEnergy(), theA, theGlauberFacPiMinus, theGlauberFacPiPlus, theLowEPiMinus, theLowEPiPlus, thePiPlus, and G4VCrossSectionDataSet::verboseLevel.

Referenced by G4QMDReaction::G4QMDReaction().

◆ ComputeCrossSection()

G4double G4VCrossSectionDataSet::ComputeCrossSection ( const G4DynamicParticle part,
const G4Element elm,
const G4Material mat = nullptr 
)
inherited

Definition at line 81 of file G4VCrossSectionDataSet.cc.

84{
85 G4int Z = elm->GetZasInt();
86
87 if (IsElementApplicable(part, Z, mat)) {
88 return GetElementCrossSection(part, Z, mat);
89 }
90
91 // isotope-wise cross section making sum over available
92 // isotope cross sections, which may be incomplete, so
93 // the result is corrected
94 size_t nIso = elm->GetNumberOfIsotopes();
95 G4double fact = 0.0;
96 G4double xsec = 0.0;
97
98 // user-defined isotope abundances
99 const G4IsotopeVector* isoVector = elm->GetIsotopeVector();
100 const G4double* abundVector = elm->GetRelativeAbundanceVector();
101
102 for (size_t j=0; j<nIso; ++j) {
103 const G4Isotope* iso = (*isoVector)[j];
104 G4int A = iso->GetN();
105 if(abundVector[j] > 0.0 && IsIsoApplicable(part, Z, A, elm, mat)) {
106 fact += abundVector[j];
107 xsec += abundVector[j]*GetIsoCrossSection(part, Z, A, iso, elm, mat);
108 }
109 }
110 return (fact > 0.0) ? xsec/fact : 0.0;
111}
std::vector< G4Isotope * > G4IsotopeVector
const G4int Z[17]
G4double * GetRelativeAbundanceVector() const
Definition: G4Element.hh:167
size_t GetNumberOfIsotopes() const
Definition: G4Element.hh:159
G4int GetZasInt() const
Definition: G4Element.hh:132
G4IsotopeVector * GetIsotopeVector() const
Definition: G4Element.hh:163
G4int GetN() const
Definition: G4Isotope.hh:93
virtual G4double GetElementCrossSection(const G4DynamicParticle *, G4int Z, const G4Material *mat=nullptr)
virtual G4double GetIsoCrossSection(const G4DynamicParticle *, G4int Z, G4int A, const G4Isotope *iso=nullptr, const G4Element *elm=nullptr, const G4Material *mat=nullptr)
virtual G4bool IsIsoApplicable(const G4DynamicParticle *, G4int Z, G4int A, const G4Element *elm=nullptr, const G4Material *mat=nullptr)
virtual G4bool IsElementApplicable(const G4DynamicParticle *, G4int Z, const G4Material *mat=nullptr)

References A, G4VCrossSectionDataSet::GetElementCrossSection(), G4VCrossSectionDataSet::GetIsoCrossSection(), G4Element::GetIsotopeVector(), G4Isotope::GetN(), G4Element::GetNumberOfIsotopes(), G4Element::GetRelativeAbundanceVector(), G4Element::GetZasInt(), G4VCrossSectionDataSet::IsElementApplicable(), G4VCrossSectionDataSet::IsIsoApplicable(), and Z.

Referenced by G4VCrossSectionDataSet::GetCrossSection().

◆ CoulombFactorPiPlus()

G4double G4BGGPionInelasticXS::CoulombFactorPiPlus ( G4double  kinEnergy,
G4int  Z 
)
private

Definition at line 277 of file G4BGGPionInelasticXS.cc.

278{
279 return (kinEnergy > 0.0) ?
280 G4NuclearRadii::CoulombFactor(Z, theA[Z], thePiPlus, kinEnergy) : 0.0;
281}
static G4double CoulombFactor(const G4ParticleDefinition *theParticle, const G4ParticleDefinition *nucleon, G4double ekin)

References G4NuclearRadii::CoulombFactor(), theA, thePiPlus, and Z.

Referenced by BuildPhysicsTable(), and GetElementCrossSection().

◆ CrossSectionDescription()

void G4BGGPionInelasticXS::CrossSectionDescription ( std::ostream &  outFile) const
finalvirtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 293 of file G4BGGPionInelasticXS.cc.

294{
295 outFile << "The Barashenkov-Glauber-Gribov cross section handles inelastic\n"
296 << "pion scattering from nuclei at all energies. The Barashenkov\n"
297 << "parameterization is used below 91 GeV and the Glauber-Gribov\n"
298 << "parameterization is used above 91 GeV.\n";
299}

◆ DumpPhysicsTable()

void G4VCrossSectionDataSet::DumpPhysicsTable ( const G4ParticleDefinition )
virtualinherited

◆ FactorPiMinus()

G4double G4BGGPionInelasticXS::FactorPiMinus ( G4double  kinEnergy)
private

Definition at line 285 of file G4BGGPionInelasticXS.cc.

286{
287 return 1.0/std::sqrt(kinEnergy);
288}

Referenced by BuildPhysicsTable(), and GetElementCrossSection().

◆ ForAllAtomsAndEnergies()

bool G4VCrossSectionDataSet::ForAllAtomsAndEnergies ( ) const
inlineinherited

◆ GetCrossSection()

G4double G4VCrossSectionDataSet::GetCrossSection ( const G4DynamicParticle dp,
const G4Element elm,
const G4Material mat = nullptr 
)
inlineinherited

Definition at line 187 of file G4VCrossSectionDataSet.hh.

190{
191 return ComputeCrossSection(dp, elm, mat);
192}
G4double ComputeCrossSection(const G4DynamicParticle *, const G4Element *, const G4Material *mat=nullptr)

References G4VCrossSectionDataSet::ComputeCrossSection().

◆ GetElementCrossSection()

G4double G4BGGPionInelasticXS::GetElementCrossSection ( const G4DynamicParticle dp,
G4int  Z,
const G4Material mat 
)
finalvirtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 118 of file G4BGGPionInelasticXS.cc.

120{
121 // this method should be called only for Z > 1
122
123 G4double cross = 0.0;
125 G4int Z = std::min(ZZ, 92);
126
127 if(1 == Z) {
128 cross = 1.0115*GetIsoCrossSection(dp,1,1);
129 } else if(ekin < fLowEnergy) {
130 cross = (isPiplus) ? theLowEPiPlus[Z]*CoulombFactorPiPlus(ekin, Z)
132 } else if(ekin > fGlauberEnergy) {
134 cross *= fGlauber->GetInelasticGlauberGribov(dp, Z, theA[Z]);
135 } else {
136 cross = fPion->GetInelasticCrossSection(dp, Z, theA[Z]);
137 }
138 if(verboseLevel > 1) {
139 G4cout << "G4BGGPionInelasticXS::GetCrossSection for "
141 << " Ekin(GeV)= " << dp->GetKineticEnergy()
142 << " in nucleus Z= " << Z << " A= " << theA[Z]
143 << " XS(b)= " << cross/barn
144 << G4endl;
145 }
146 return cross;
147}
static constexpr double barn
Definition: G4SIunits.hh:85
G4double GetIsoCrossSection(const G4DynamicParticle *, G4int Z, G4int A, const G4Isotope *iso=nullptr, const G4Element *elm=nullptr, const G4Material *mat=nullptr) final
G4ParticleDefinition * GetDefinition() const
G4double GetKineticEnergy() const
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 barn, CoulombFactorPiPlus(), FactorPiMinus(), fGlauber, fGlauberEnergy, fLowEnergy, fLowestEnergy, fPion, G4cout, G4endl, G4DynamicParticle::GetDefinition(), G4UPiNuclearCrossSection::GetInelasticCrossSection(), G4ComponentGGHadronNucleusXsc::GetInelasticGlauberGribov(), GetIsoCrossSection(), G4DynamicParticle::GetKineticEnergy(), G4ParticleDefinition::GetParticleName(), isPiplus, G4INCL::Math::max(), G4INCL::Math::min(), theA, theGlauberFacPiMinus, theGlauberFacPiPlus, theLowEPiMinus, theLowEPiPlus, G4VCrossSectionDataSet::verboseLevel, and Z.

Referenced by G4QMDReaction::ApplyYourself().

◆ GetIsoCrossSection()

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

Reimplemented from G4VCrossSectionDataSet.

Definition at line 152 of file G4BGGPionInelasticXS.cc.

157{
158 // this method should be called only for Z = 1
160 dp->GetKineticEnergy());
162
163 if(verboseLevel > 1) {
164 G4cout << "G4BGGPionInelasticXS::GetCrossSection for "
166 << " Ekin(GeV)= " << dp->GetKineticEnergy()
167 << " in nucleus Z= " << Z << " A= " << A
168 << " XS(b)= " << cross/barn
169 << G4endl;
170 }
171 return cross;
172}
G4double GetInelasticHadronNucleonXsc() const
G4double HadronNucleonXscNS(const G4ParticleDefinition *theParticle, const G4ParticleDefinition *nucleon, G4double ekin)

References A, barn, fHadron, G4cout, G4endl, G4DynamicParticle::GetDefinition(), G4HadronNucleonXsc::GetInelasticHadronNucleonXsc(), G4DynamicParticle::GetKineticEnergy(), G4ParticleDefinition::GetParticleName(), G4HadronNucleonXsc::HadronNucleonXscNS(), theProton, G4VCrossSectionDataSet::verboseLevel, and Z.

Referenced by GetElementCrossSection().

◆ GetMaxKinEnergy()

G4double G4VCrossSectionDataSet::GetMaxKinEnergy ( ) const
inlineinherited

◆ GetMinKinEnergy()

G4double G4VCrossSectionDataSet::GetMinKinEnergy ( ) const
inlineinherited

◆ GetName()

const G4String & G4VCrossSectionDataSet::GetName ( ) const
inlineinherited

◆ GetVerboseLevel()

G4int G4VCrossSectionDataSet::GetVerboseLevel ( ) const
inlinevirtualinherited

◆ IsElementApplicable()

G4bool G4BGGPionInelasticXS::IsElementApplicable ( const G4DynamicParticle ,
G4int  Z,
const G4Material mat 
)
finalvirtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 99 of file G4BGGPionInelasticXS.cc.

101{
102 return true;
103}

◆ IsIsoApplicable()

G4bool G4BGGPionInelasticXS::IsIsoApplicable ( const G4DynamicParticle ,
G4int  Z,
G4int  A,
const G4Element elm,
const G4Material mat 
)
finalvirtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 107 of file G4BGGPionInelasticXS.cc.

111{
112 return (1 == Z);
113}

References Z.

◆ operator=()

G4BGGPionInelasticXS & G4BGGPionInelasticXS::operator= ( const G4BGGPionInelasticXS right)
private

◆ SelectIsotope()

const G4Isotope * G4VCrossSectionDataSet::SelectIsotope ( const G4Element anElement,
G4double  kinEnergy,
G4double  logE 
)
virtualinherited

Reimplemented in G4GammaNuclearXS, G4NeutronCaptureXS, G4NeutronElasticXS, G4NeutronInelasticXS, and G4ParticleInelasticXS.

Definition at line 149 of file G4VCrossSectionDataSet.cc.

151{
152 size_t nIso = anElement->GetNumberOfIsotopes();
153 const G4Isotope* iso = anElement->GetIsotope(0);
154
155 // more than 1 isotope
156 if(1 < nIso) {
157 const G4double* abundVector = anElement->GetRelativeAbundanceVector();
158 G4double sum = 0.0;
160 for (size_t j=0; j<nIso; ++j) {
161 sum += abundVector[j];
162 if(q <= sum) {
163 iso = anElement->GetIsotope(j);
164 break;
165 }
166 }
167 }
168 return iso;
169}
#define G4UniformRand()
Definition: Randomize.hh:52
const G4Isotope * GetIsotope(G4int iso) const
Definition: G4Element.hh:170

References G4UniformRand, G4Element::GetIsotope(), G4Element::GetNumberOfIsotopes(), and G4Element::GetRelativeAbundanceVector().

◆ SetForAllAtomsAndEnergies()

void G4VCrossSectionDataSet::SetForAllAtomsAndEnergies ( G4bool  val)
inlineinherited

◆ SetMaxKinEnergy()

void G4VCrossSectionDataSet::SetMaxKinEnergy ( G4double  value)
inlineinherited

◆ SetMinKinEnergy()

void G4VCrossSectionDataSet::SetMinKinEnergy ( G4double  value)
inlineinherited

◆ SetName()

void G4VCrossSectionDataSet::SetName ( const G4String nam)
inlineinherited

Definition at line 240 of file G4VCrossSectionDataSet.hh.

241{
242 name = nam;
243}

References G4VCrossSectionDataSet::name.

Referenced by G4ParticleHPInelasticData::G4ParticleHPInelasticData().

◆ SetVerboseLevel()

void G4VCrossSectionDataSet::SetVerboseLevel ( G4int  value)
inlinevirtualinherited

Field Documentation

◆ fG4pow

G4Pow* G4BGGPionInelasticXS::fG4pow
private

Definition at line 114 of file G4BGGPionInelasticXS.hh.

Referenced by G4BGGPionInelasticXS().

◆ fGlauber

G4ComponentGGHadronNucleusXsc* G4BGGPionInelasticXS::fGlauber
private

◆ fGlauberEnergy

G4double G4BGGPionInelasticXS::fGlauberEnergy
private

◆ fHadron

G4HadronNucleonXsc* G4BGGPionInelasticXS::fHadron
private

◆ fLowEnergy

G4double G4BGGPionInelasticXS::fLowEnergy
private

◆ fLowestEnergy

G4double G4BGGPionInelasticXS::fLowestEnergy
private

Definition at line 103 of file G4BGGPionInelasticXS.hh.

Referenced by G4BGGPionInelasticXS(), and GetElementCrossSection().

◆ fPion

G4UPiNuclearCrossSection* G4BGGPionInelasticXS::fPion
private

◆ isForAllAtomsAndEnergies

G4bool G4VCrossSectionDataSet::isForAllAtomsAndEnergies
privateinherited

◆ isMaster

G4bool G4BGGPionInelasticXS::isMaster
private

Definition at line 120 of file G4BGGPionInelasticXS.hh.

Referenced by BuildPhysicsTable(), and G4BGGPionInelasticXS().

◆ isPiplus

G4bool G4BGGPionInelasticXS::isPiplus
private

◆ maxKinEnergy

G4double G4VCrossSectionDataSet::maxKinEnergy
privateinherited

◆ minKinEnergy

G4double G4VCrossSectionDataSet::minKinEnergy
privateinherited

◆ name

G4String G4VCrossSectionDataSet::name
protectedinherited

◆ registry

G4CrossSectionDataSetRegistry* G4VCrossSectionDataSet::registry
privateinherited

◆ theA

G4int G4BGGPionInelasticXS::theA = {0}
staticprivate

◆ theGlauberFacPiMinus

G4double G4BGGPionInelasticXS::theGlauberFacPiMinus = {0.0}
staticprivate

Definition at line 106 of file G4BGGPionInelasticXS.hh.

Referenced by BuildPhysicsTable(), and GetElementCrossSection().

◆ theGlauberFacPiPlus

G4double G4BGGPionInelasticXS::theGlauberFacPiPlus = {0.0}
staticprivate

Definition at line 105 of file G4BGGPionInelasticXS.hh.

Referenced by BuildPhysicsTable(), and GetElementCrossSection().

◆ theLowEPiMinus

G4double G4BGGPionInelasticXS::theLowEPiMinus = {0.0}
staticprivate

Definition at line 108 of file G4BGGPionInelasticXS.hh.

Referenced by BuildPhysicsTable(), and GetElementCrossSection().

◆ theLowEPiPlus

G4double G4BGGPionInelasticXS::theLowEPiPlus = {0.0}
staticprivate

Definition at line 107 of file G4BGGPionInelasticXS.hh.

Referenced by BuildPhysicsTable(), and GetElementCrossSection().

◆ thePiPlus

const G4ParticleDefinition* G4BGGPionInelasticXS::thePiPlus
private

◆ theProton

const G4ParticleDefinition* G4BGGPionInelasticXS::theProton
private

Definition at line 111 of file G4BGGPionInelasticXS.hh.

Referenced by G4BGGPionInelasticXS(), and GetIsoCrossSection().

◆ verboseLevel

G4int G4VCrossSectionDataSet::verboseLevel
protectedinherited

Definition at line 168 of file G4VCrossSectionDataSet.hh.

Referenced by G4BGGNucleonElasticXS::BuildPhysicsTable(), G4BGGPionElasticXS::BuildPhysicsTable(), BuildPhysicsTable(), G4GammaNuclearXS::BuildPhysicsTable(), G4NeutronCaptureXS::BuildPhysicsTable(), G4NeutronElasticXS::BuildPhysicsTable(), G4NeutronInelasticXS::BuildPhysicsTable(), G4ParticleInelasticXS::BuildPhysicsTable(), G4BGGNucleonInelasticXS::BuildPhysicsTable(), G4LENDCrossSection::create_used_target_map(), G4BGGNucleonElasticXS::G4BGGNucleonElasticXS(), G4BGGNucleonInelasticXS::G4BGGNucleonInelasticXS(), G4BGGPionElasticXS::G4BGGPionElasticXS(), G4BGGPionInelasticXS(), G4GammaNuclearXS::G4GammaNuclearXS(), G4NeutronCaptureXS::G4NeutronCaptureXS(), G4NeutronElasticXS::G4NeutronElasticXS(), G4NeutronInelasticXS::G4NeutronInelasticXS(), G4ParticleInelasticXS::G4ParticleInelasticXS(), G4NeutronCaptureXS::GetElementCrossSection(), G4NeutronElasticXS::GetElementCrossSection(), G4NeutronInelasticXS::GetElementCrossSection(), G4BGGNucleonElasticXS::GetElementCrossSection(), G4BGGPionElasticXS::GetElementCrossSection(), GetElementCrossSection(), G4BGGNucleonInelasticXS::GetElementCrossSection(), G4GammaNuclearXS::GetElementCrossSection(), G4ParticleInelasticXS::GetElementCrossSection(), G4BGGNucleonElasticXS::GetIsoCrossSection(), G4BGGPionElasticXS::GetIsoCrossSection(), GetIsoCrossSection(), G4GammaNuclearXS::GetIsoCrossSection(), G4BGGNucleonInelasticXS::GetIsoCrossSection(), G4VCrossSectionDataSet::GetVerboseLevel(), G4NeutronElasticXS::Initialise(), G4ParticleInelasticXS::IsoCrossSection(), G4NeutronCaptureXS::IsoCrossSection(), G4NeutronInelasticXS::IsoCrossSection(), G4GammaNuclearXS::RetrieveVector(), G4NeutronCaptureXS::RetrieveVector(), G4NeutronInelasticXS::RetrieveVector(), G4ParticleInelasticXS::RetrieveVector(), and G4VCrossSectionDataSet::SetVerboseLevel().


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