Geant4
10.03
|
#include <G4DiffuseElastic.hh>
Additional Inherited Members | |
Protected Member Functions inherited from G4HadronicInteraction | |
void | SetModelName (const G4String &nam) |
G4bool | IsBlocked () const |
void | Block () |
Protected Attributes inherited from G4HadronicInteraction | |
G4HadFinalState | theParticleChange |
G4int | verboseLevel |
G4double | theMinEnergy |
G4double | theMaxEnergy |
G4bool | isBlocked |
Definition at line 59 of file G4DiffuseElastic.hh.
G4DiffuseElastic::G4DiffuseElastic | ( | ) |
Definition at line 74 of file G4DiffuseElastic.cc.
References G4Alpha::Alpha(), G4Deuteron::Deuteron(), fAddCoulomb, fAm, fAngleBin, fAngleTable, fAtomicNumber, fAtomicWeight, fBeta, fEnergyBin, fEnergyVector, fNuclearRadius, fParticle, fWaveVector, fZommerfeld, GeV, keV, lowEnergyLimitHE, lowEnergyLimitQ, lowEnergyRecoilLimit, lowestEnergyLimit, MeV, G4Neutron::Neutron(), G4PionMinus::PionMinus(), G4PionPlus::PionPlus(), plabLowLimit, G4Proton::Proton(), G4HadronicInteraction::SetMaxEnergy(), G4HadronicInteraction::SetMinEnergy(), TeV, theAlpha, theDeuteron, G4HadronicInteraction::theMaxEnergy, G4HadronicInteraction::theMinEnergy, theNeutron, thePionMinus, thePionPlus, theProton, and G4HadronicInteraction::verboseLevel.
|
virtual |
Definition at line 116 of file G4DiffuseElastic.cc.
References fAngleBank, fAngleTable, and fEnergyVector.
Definition at line 330 of file G4DiffuseElastic.hh.
Referenced by BesselOneByArg(), GetDiffElasticProb(), GetDiffElasticSumProb(), and GetDiffElasticSumProbA().
Definition at line 278 of file G4DiffuseElastic.hh.
Referenced by GetDiffElasticProb(), GetDiffElasticSumProb(), and GetDiffElasticSumProbA().
Definition at line 405 of file G4DiffuseElastic.hh.
References BesselJone().
Referenced by GetDiffElasticProb(), GetDiffElasticSumProb(), and GetDiffElasticSumProbA().
void G4DiffuseElastic::BuildAngleTable | ( | ) |
Definition at line 999 of file G4DiffuseElastic.cc.
References a, CalculateAm(), CalculateZommerfeld(), fAddCoulomb, fAm, fAngleBin, fAngleTable, fAtomicNumber, fBeta, fEnergyBin, fEnergyVector, fNuclearRadius, fParticle, fWaveVector, fZommerfeld, GetIntegrandFunction(), G4PhysicsVector::GetLowEdgeEnergy(), G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), G4PhysicsTable::insertAt(), G4Integrator< T, F >::Legendre10(), pi, and G4PhysicsFreeVector::PutValue().
Referenced by Initialise(), and InitialiseOnFly().
Definition at line 451 of file G4DiffuseElastic.hh.
References G4Pow::A13(), fAm, G4Pow::GetInstance(), and n.
Referenced by BuildAngleTable(), GetCoulombElasticXsc(), GetCoulombIntegralXsc(), GetCoulombTotalXsc(), GetDiffuseElasticSumXsc(), and TestAngleTable().
Definition at line 466 of file G4DiffuseElastic.hh.
References G4Pow::A13(), G4Pow::A23(), fermi, fNuclearRadius, G4Pow::GetInstance(), and G4Pow::powA().
Referenced by GetDiffuseElasticSumXsc(), GetDiffuseElasticXsc(), Initialise(), InitialiseOnFly(), IntegralElasticProb(), SampleThetaCMS(), and TestAngleTable().
|
inline |
Definition at line 426 of file G4DiffuseElastic.hh.
References a, fBeta, and G4ParticleDefinition::GetPDGMass().
Referenced by GetCoulombElasticXsc(), GetCoulombIntegralXsc(), GetCoulombTotalXsc(), and GetDiffuseElasticSumXsc().
Definition at line 440 of file G4DiffuseElastic.hh.
References fZommerfeld.
Referenced by BuildAngleTable(), GetCoulombElasticXsc(), GetCoulombIntegralXsc(), GetCoulombTotalXsc(), GetDiffuseElasticSumXsc(), and TestAngleTable().
Definition at line 382 of file G4DiffuseElastic.hh.
Referenced by GetDiffElasticProb(), GetDiffElasticSumProb(), and GetDiffElasticSumProbA().
|
inline |
Definition at line 530 of file G4DiffuseElastic.hh.
References CalculateAm(), CalculateParticleBeta(), CalculateZommerfeld(), G4ParticleDefinition::GetPDGCharge(), and n.
Referenced by GetInvCoulombElasticXsc().
|
inline |
Definition at line 579 of file G4DiffuseElastic.hh.
References c2, CalculateAm(), CalculateParticleBeta(), CalculateZommerfeld(), G4cout, G4endl, G4ParticleDefinition::GetPDGCharge(), n, and twopi.
|
inline |
Definition at line 554 of file G4DiffuseElastic.hh.
References CalculateAm(), CalculateParticleBeta(), CalculateZommerfeld(), fermi, G4cout, G4endl, G4ParticleDefinition::GetPDGCharge(), n, and pi.
Definition at line 379 of file G4DiffuseElastic.cc.
References BesselJone(), BesselJzero(), BesselOneByArg(), DampFactor(), fermi, fNuclearRadius, fParticle, fWaveVector, G4Exp(), GeV, G4InuclParticleNames::k0, G4InuclParticleNames::lambda, pi, theNeutron, and theProton.
Referenced by GetDiffuseElasticXsc().
Definition at line 467 of file G4DiffuseElastic.cc.
References BesselJone(), BesselJzero(), BesselOneByArg(), DampFactor(), fAddCoulomb, fAm, fermi, fNuclearRadius, fParticle, fWaveVector, fZommerfeld, G4Exp(), GeV, G4InuclParticleNames::k0, G4InuclParticleNames::lambda, pi, theNeutron, and theProton.
Referenced by GetDiffuseElasticSumXsc().
Definition at line 573 of file G4DiffuseElastic.cc.
References BesselJone(), BesselJzero(), BesselOneByArg(), DampFactor(), fAddCoulomb, fAm, fermi, fNuclearRadius, fParticle, fWaveVector, fZommerfeld, G4Exp(), G4InuclParticleNames::lambda, pi, theNeutron, and theProton.
Referenced by GetIntegrandFunction().
G4double G4DiffuseElastic::GetDiffuseElasticSumXsc | ( | const G4ParticleDefinition * | particle, |
G4double | theta, | ||
G4double | momentum, | ||
G4double | A, | ||
G4double | Z | ||
) |
Definition at line 243 of file G4DiffuseElastic.cc.
References A(), CalculateAm(), CalculateNuclearRad(), CalculateParticleBeta(), CalculateZommerfeld(), fAddCoulomb, fAm, fAtomicNumber, fAtomicWeight, fBeta, fNuclearRadius, fParticle, fWaveVector, fZommerfeld, GetDiffElasticSumProb(), and G4ParticleDefinition::GetPDGCharge().
Referenced by GetInvElasticSumXsc().
G4double G4DiffuseElastic::GetDiffuseElasticXsc | ( | const G4ParticleDefinition * | particle, |
G4double | theta, | ||
G4double | momentum, | ||
G4double | A | ||
) |
Definition at line 172 of file G4DiffuseElastic.cc.
References A(), CalculateNuclearRad(), fAddCoulomb, fAtomicWeight, fNuclearRadius, fParticle, fWaveVector, and GetDiffElasticProb().
Referenced by GetInvElasticXsc().
Definition at line 679 of file G4DiffuseElastic.cc.
References GetDiffElasticSumProbA().
Referenced by BuildAngleTable(), IntegralElasticProb(), SampleThetaCMS(), and TestAngleTable().
G4double G4DiffuseElastic::GetInvCoulombElasticXsc | ( | const G4ParticleDefinition * | particle, |
G4double | tMand, | ||
G4double | momentum, | ||
G4double | A, | ||
G4double | Z | ||
) |
Definition at line 330 of file G4DiffuseElastic.cc.
References GetCoulombElasticXsc(), G4IonTable::GetIon(), G4ParticleTable::GetIonTable(), G4ParticleTable::GetParticleTable(), G4ParticleDefinition::GetPDGMass(), G4He3::He3(), pi, theAlpha, theDeuteron, theProton, and G4Triton::Triton().
G4double G4DiffuseElastic::GetInvElasticSumXsc | ( | const G4ParticleDefinition * | particle, |
G4double | tMand, | ||
G4double | momentum, | ||
G4double | A, | ||
G4double | Z | ||
) |
Definition at line 278 of file G4DiffuseElastic.cc.
References GetDiffuseElasticSumXsc(), G4IonTable::GetIon(), G4ParticleTable::GetIonTable(), G4ParticleTable::GetParticleTable(), G4ParticleDefinition::GetPDGMass(), G4He3::He3(), pi, theAlpha, theDeuteron, theProton, and G4Triton::Triton().
G4double G4DiffuseElastic::GetInvElasticXsc | ( | const G4ParticleDefinition * | particle, |
G4double | theta, | ||
G4double | momentum, | ||
G4double | A, | ||
G4double | Z | ||
) |
Definition at line 193 of file G4DiffuseElastic.cc.
References GetDiffuseElasticXsc(), G4IonTable::GetIon(), G4ParticleTable::GetIonTable(), G4ParticleTable::GetParticleTable(), G4ParticleDefinition::GetPDGMass(), G4He3::He3(), pi, theAlpha, theDeuteron, theProton, and G4Triton::Triton().
|
inline |
Definition at line 192 of file G4DiffuseElastic.hh.
Definition at line 1092 of file G4DiffuseElastic.cc.
References fAngleTable, and G4UniformRand.
Referenced by SampleTableThetaCMS().
void G4DiffuseElastic::Initialise | ( | ) |
Definition at line 138 of file G4DiffuseElastic.cc.
References BuildAngleTable(), CalculateNuclearRad(), fAngleBank, fAngleTable, fAtomicNumber, fAtomicWeight, fElementNameVector, fElementNumberVector, fNuclearRadius, G4cout, G4endl, G4NistManager::GetAtomicMassAmu(), G4Element::GetElementTable(), G4Element::GetNumberOfElements(), G4NistManager::Instance(), and G4HadronicInteraction::verboseLevel.
Definition at line 973 of file G4DiffuseElastic.cc.
References BuildAngleTable(), CalculateNuclearRad(), fAngleBank, fAngleTable, fAtomicNumber, fAtomicWeight, fElementNumberVector, fNuclearRadius, G4cout, G4endl, G4NistManager::GetAtomicMassAmu(), G4NistManager::Instance(), and G4HadronicInteraction::verboseLevel.
Referenced by SampleTableThetaCMS().
G4double G4DiffuseElastic::IntegralElasticProb | ( | const G4ParticleDefinition * | particle, |
G4double | theta, | ||
G4double | momentum, | ||
G4double | A | ||
) |
Definition at line 695 of file G4DiffuseElastic.cc.
References A(), CalculateNuclearRad(), fAtomicWeight, fNuclearRadius, fParticle, fWaveVector, GetIntegrandFunction(), and G4Integrator< T, F >::Legendre96().
|
inlinevirtual |
Reimplemented from G4HadronicInteraction.
Definition at line 233 of file G4DiffuseElastic.hh.
References G4HadProjectile::GetDefinition(), G4Nucleus::GetZ_asInt(), G4KaonMinus::KaonMinus(), G4KaonPlus::KaonPlus(), G4Neutron::Neutron(), G4PionMinus::PionMinus(), G4PionPlus::PionPlus(), and G4Proton::Proton().
Definition at line 824 of file G4DiffuseElastic.cc.
References G4Exp().
Referenced by SampleInvariantT().
|
virtual |
Reimplemented from G4HadronElastic.
Definition at line 786 of file G4DiffuseElastic.cc.
References fParticle, G4UniformRand, G4NucleiProperties::GetNuclearMass(), G4ParticleDefinition::GetPDGMass(), NeutronTuniform(), SampleTableT(), and theNeutron.
G4double G4DiffuseElastic::SampleT | ( | const G4ParticleDefinition * | aParticle, |
G4double | p, | ||
G4double | A | ||
) |
Definition at line 720 of file G4DiffuseElastic.cc.
References SampleThetaCMS().
Referenced by SampleThetaLab().
G4double G4DiffuseElastic::SampleTableT | ( | const G4ParticleDefinition * | aParticle, |
G4double | p, | ||
G4double | Z, | ||
G4double | A | ||
) |
Definition at line 838 of file G4DiffuseElastic.cc.
References alpha, and SampleTableThetaCMS().
Referenced by SampleInvariantT().
G4double G4DiffuseElastic::SampleTableThetaCMS | ( | const G4ParticleDefinition * | aParticle, |
G4double | p, | ||
G4double | Z, | ||
G4double | A | ||
) |
Definition at line 853 of file G4DiffuseElastic.cc.
References fAngleBank, fAngleBin, fAngleTable, fElementNumberVector, fEnergyBin, fEnergyVector, G4UniformRand, G4PhysicsVector::GetLowEdgeEnergy(), G4ParticleDefinition::GetPDGMass(), GetScatteringAngle(), InitialiseOnFly(), and position.
Referenced by SampleTableT().
G4double G4DiffuseElastic::SampleThetaCMS | ( | const G4ParticleDefinition * | aParticle, |
G4double | p, | ||
G4double | A | ||
) |
Definition at line 733 of file G4DiffuseElastic.cc.
References A(), CalculateNuclearRad(), fAtomicWeight, fNuclearRadius, fParticle, fWaveVector, G4UniformRand, GetIntegrandFunction(), G4Integrator< T, F >::Legendre10(), G4Integrator< T, F >::Legendre96(), pi, and G4INCL::DeJongSpin::shoot().
Referenced by SampleT().
G4double G4DiffuseElastic::SampleThetaLab | ( | const G4HadProjectile * | aParticle, |
G4double | tmass, | ||
G4double | A | ||
) |
Definition at line 1135 of file G4DiffuseElastic.cc.
References G4cout, G4endl, G4UniformRand, G4HadProjectile::Get4Momentum(), G4HadProjectile::GetDefinition(), G4ParticleDefinition::GetPDGMass(), G4HadProjectile::GetTotalMomentum(), GeV, SampleT(), twopi, and G4HadronicInteraction::verboseLevel.
|
inline |
Definition at line 257 of file G4DiffuseElastic.hh.
References lowEnergyLimitHE.
|
inline |
Definition at line 267 of file G4DiffuseElastic.hh.
References lowestEnergyLimit.
|
inline |
Definition at line 252 of file G4DiffuseElastic.hh.
References plabLowLimit.
|
inline |
Definition at line 262 of file G4DiffuseElastic.hh.
References lowEnergyLimitQ.
|
inline |
Definition at line 247 of file G4DiffuseElastic.hh.
References lowEnergyRecoilLimit.
void G4DiffuseElastic::TestAngleTable | ( | const G4ParticleDefinition * | theParticle, |
G4double | partMom, | ||
G4double | Z, | ||
G4double | A | ||
) |
Definition at line 1342 of file G4DiffuseElastic.cc.
References a, A(), G4Integrator< T, F >::AdaptiveGauss(), CalculateAm(), CalculateNuclearRad(), CalculateZommerfeld(), degree, epsilon(), fAddCoulomb, fAm, fAngleBank, fAngleBin, fAngleTable, fAtomicNumber, fAtomicWeight, fBeta, fElementNumberVector, fEnergyBin, fNuclearRadius, fParticle, fWaveVector, fZommerfeld, G4cout, G4endl, GetIntegrandFunction(), G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), G4PhysicsTable::insertAt(), G4Integrator< T, F >::Legendre10(), G4Integrator< T, F >::Legendre96(), and G4PhysicsFreeVector::PutValue().
G4double G4DiffuseElastic::ThetaCMStoThetaLab | ( | const G4DynamicParticle * | aParticle, |
G4double | tmass, | ||
G4double | thetaCMS | ||
) |
Definition at line 1223 of file G4DiffuseElastic.cc.
References G4cout, G4endl, G4UniformRand, G4DynamicParticle::Get4Momentum(), G4DynamicParticle::GetDefinition(), G4ParticleDefinition::GetPDGMass(), twopi, and G4HadronicInteraction::verboseLevel.
G4double G4DiffuseElastic::ThetaLabToThetaCMS | ( | const G4DynamicParticle * | aParticle, |
G4double | tmass, | ||
G4double | thetaLab | ||
) |
Definition at line 1283 of file G4DiffuseElastic.cc.
References G4cout, G4endl, G4UniformRand, G4DynamicParticle::Get4Momentum(), G4DynamicParticle::GetDefinition(), G4ParticleDefinition::GetPDGMass(), G4DynamicParticle::GetTotalMomentum(), twopi, and G4HadronicInteraction::verboseLevel.
|
private |
Definition at line 229 of file G4DiffuseElastic.hh.
Referenced by BuildAngleTable(), G4DiffuseElastic(), GetDiffElasticSumProb(), GetDiffElasticSumProbA(), GetDiffuseElasticSumXsc(), GetDiffuseElasticXsc(), and TestAngleTable().
|
private |
Definition at line 228 of file G4DiffuseElastic.hh.
Referenced by BuildAngleTable(), CalculateAm(), G4DiffuseElastic(), GetDiffElasticSumProb(), GetDiffElasticSumProbA(), GetDiffuseElasticSumXsc(), and TestAngleTable().
|
private |
Definition at line 216 of file G4DiffuseElastic.hh.
Referenced by Initialise(), InitialiseOnFly(), SampleTableThetaCMS(), TestAngleTable(), and ~G4DiffuseElastic().
|
private |
Definition at line 212 of file G4DiffuseElastic.hh.
Referenced by BuildAngleTable(), G4DiffuseElastic(), SampleTableThetaCMS(), and TestAngleTable().
|
private |
Definition at line 215 of file G4DiffuseElastic.hh.
Referenced by BuildAngleTable(), G4DiffuseElastic(), GetScatteringAngle(), Initialise(), InitialiseOnFly(), SampleTableThetaCMS(), TestAngleTable(), and ~G4DiffuseElastic().
|
private |
Definition at line 224 of file G4DiffuseElastic.hh.
Referenced by BuildAngleTable(), G4DiffuseElastic(), GetDiffuseElasticSumXsc(), Initialise(), InitialiseOnFly(), and TestAngleTable().
|
private |
Definition at line 223 of file G4DiffuseElastic.hh.
Referenced by G4DiffuseElastic(), GetDiffuseElasticSumXsc(), GetDiffuseElasticXsc(), Initialise(), InitialiseOnFly(), IntegralElasticProb(), SampleThetaCMS(), and TestAngleTable().
|
private |
Definition at line 226 of file G4DiffuseElastic.hh.
Referenced by BuildAngleTable(), CalculateParticleBeta(), G4DiffuseElastic(), GetDiffuseElasticSumXsc(), and TestAngleTable().
|
private |
Definition at line 219 of file G4DiffuseElastic.hh.
Referenced by Initialise().
|
private |
Definition at line 218 of file G4DiffuseElastic.hh.
Referenced by Initialise(), InitialiseOnFly(), SampleTableThetaCMS(), and TestAngleTable().
|
private |
Definition at line 211 of file G4DiffuseElastic.hh.
Referenced by BuildAngleTable(), G4DiffuseElastic(), SampleTableThetaCMS(), and TestAngleTable().
|
private |
Definition at line 214 of file G4DiffuseElastic.hh.
Referenced by BuildAngleTable(), G4DiffuseElastic(), SampleTableThetaCMS(), and ~G4DiffuseElastic().
|
private |
Definition at line 225 of file G4DiffuseElastic.hh.
Referenced by BuildAngleTable(), CalculateNuclearRad(), G4DiffuseElastic(), GetDiffElasticProb(), GetDiffElasticSumProb(), GetDiffElasticSumProbA(), GetDiffuseElasticSumXsc(), GetDiffuseElasticXsc(), Initialise(), InitialiseOnFly(), IntegralElasticProb(), SampleThetaCMS(), and TestAngleTable().
|
private |
Definition at line 221 of file G4DiffuseElastic.hh.
Referenced by BuildAngleTable(), G4DiffuseElastic(), GetDiffElasticProb(), GetDiffElasticSumProb(), GetDiffElasticSumProbA(), GetDiffuseElasticSumXsc(), GetDiffuseElasticXsc(), IntegralElasticProb(), SampleInvariantT(), SampleThetaCMS(), and TestAngleTable().
|
private |
Definition at line 222 of file G4DiffuseElastic.hh.
Referenced by BuildAngleTable(), G4DiffuseElastic(), GetDiffElasticProb(), GetDiffElasticSumProb(), GetDiffElasticSumProbA(), GetDiffuseElasticSumXsc(), GetDiffuseElasticXsc(), IntegralElasticProb(), SampleThetaCMS(), and TestAngleTable().
|
private |
Definition at line 227 of file G4DiffuseElastic.hh.
Referenced by BuildAngleTable(), CalculateZommerfeld(), G4DiffuseElastic(), GetDiffElasticSumProb(), GetDiffElasticSumProbA(), GetDiffuseElasticSumXsc(), and TestAngleTable().
|
private |
Definition at line 206 of file G4DiffuseElastic.hh.
Referenced by G4DiffuseElastic(), and SetHEModelLowLimit().
|
private |
Definition at line 207 of file G4DiffuseElastic.hh.
Referenced by G4DiffuseElastic(), and SetQModelLowLimit().
|
private |
Definition at line 205 of file G4DiffuseElastic.hh.
Referenced by G4DiffuseElastic(), and SetRecoilKinEnergyLimit().
|
private |
Definition at line 208 of file G4DiffuseElastic.hh.
Referenced by G4DiffuseElastic(), and SetLowestEnergyLimit().
|
private |
Definition at line 209 of file G4DiffuseElastic.hh.
Referenced by G4DiffuseElastic(), and SetPlabLowLimit().
|
private |
Definition at line 200 of file G4DiffuseElastic.hh.
Referenced by G4DiffuseElastic(), GetInvCoulombElasticXsc(), GetInvElasticSumXsc(), and GetInvElasticXsc().
|
private |
Definition at line 199 of file G4DiffuseElastic.hh.
Referenced by G4DiffuseElastic(), GetInvCoulombElasticXsc(), GetInvElasticSumXsc(), and GetInvElasticXsc().
|
private |
Definition at line 198 of file G4DiffuseElastic.hh.
Referenced by G4DiffuseElastic(), GetDiffElasticProb(), GetDiffElasticSumProb(), GetDiffElasticSumProbA(), and SampleInvariantT().
|
private |
Definition at line 203 of file G4DiffuseElastic.hh.
Referenced by G4DiffuseElastic().
|
private |
Definition at line 202 of file G4DiffuseElastic.hh.
Referenced by G4DiffuseElastic().
|
private |
Definition at line 192 of file G4DiffuseElastic.hh.
Referenced by G4DiffuseElastic(), GetDiffElasticProb(), GetDiffElasticSumProb(), GetDiffElasticSumProbA(), GetInvCoulombElasticXsc(), GetInvElasticSumXsc(), and GetInvElasticXsc().