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 G4String & GetName () 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 G4Isotope * SelectIsotope (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 &)
 
G4BGGPionInelasticXS & operator= (const G4BGGPionInelasticXS &right)
 

Private Attributes

G4Pow * fG4pow
 
G4ComponentGGHadronNucleusXsc * fGlauber
 
G4double fGlauberEnergy
 
G4HadronNucleonXsc * fHadron
 
G4double fLowEnergy
 
G4double fLowestEnergy
 
G4UPiNuclearCrossSection * fPion
 
G4bool isForAllAtomsAndEnergies
 
G4bool isMaster
 
G4bool isPiplus
 
G4double maxKinEnergy
 
G4double minKinEnergy
 
G4CrossSectionDataSetRegistry * registry
 
const G4ParticleDefinition * thePiPlus
 
const G4ParticleDefinition * theProton
 

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: