Geant4
10.00.p03
|
#include <G4WentzelVIRelXSection.hh>
Public Member Functions | |
G4WentzelVIRelXSection () | |
virtual | ~G4WentzelVIRelXSection () |
void | Initialise (const G4ParticleDefinition *, G4double CosThetaLim) |
void | SetupParticle (const G4ParticleDefinition *) |
G4double | SetupTarget (G4int Z, G4double cut=DBL_MAX) |
G4double | ComputeTransportCrossSectionPerAtom (G4double CosThetaMax) |
G4ThreeVector | SampleSingleScattering (G4double CosThetaMin, G4double CosThetaMax, G4double elecRatio=0.0) |
G4double | ComputeNuclearCrossSection (G4double CosThetaMin, G4double CosThetaMax) |
G4double | ComputeElectronCrossSection (G4double CosThetaMin, G4double CosThetaMax) |
G4double | SetupKinematic (G4double kinEnergy, const G4Material *mat) |
void | SetTargetMass (G4double value) |
G4double | GetMomentumSquare () const |
G4double | GetCosThetaNuc () const |
G4double | GetCosThetaElec () const |
Private Member Functions | |
void | ComputeMaxElectronScattering (G4double cut) |
G4WentzelVIRelXSection & | operator= (const G4WentzelVIRelXSection &right) |
G4WentzelVIRelXSection (const G4WentzelVIRelXSection &) | |
Static Private Attributes | |
static G4double | ScreenRSquare [100] = {0.0} |
static G4double | FormFactor [100] = {0.0} |
Definition at line 71 of file G4WentzelVIRelXSection.hh.
G4WentzelVIRelXSection::G4WentzelVIRelXSection | ( | ) |
Definition at line 66 of file G4WentzelVIRelXSection.cc.
References a0, alpha2, coeff, cosTetMaxElec, cosTetMaxNuc, currentMaterial, G4Electron::Electron(), elecXSRatio, eV, factB, factB1, factD, fG4pow, fNistManager, formfactA, FormFactor, gam0pcmp, G4NistManager::GetA27(), G4Pow::GetInstance(), Initialise(), G4NistManager::Instance(), invbeta2, kinFactor, lowEnergyLimit, MeV, particle, pcmp2, G4INCL::Math::pi, G4Positron::Positron(), G4Proton::Proton(), ScreenRSquare, screenZ, targetMass, theElectron, thePositron, theProton, and G4Pow::Z13().
|
virtual |
Definition at line 110 of file G4WentzelVIRelXSection.cc.
|
private |
|
inline |
Definition at line 236 of file G4WentzelVIRelXSection.hh.
References cosTetMaxElec, kinFactor, G4INCL::Math::max(), and screenZ.
Referenced by G4hCoulombScatteringModel::ComputeCrossSectionPerAtom(), and G4WentzelVIRelModel::ComputeXSectionPerVolume().
|
private |
Definition at line 337 of file G4WentzelVIRelXSection.cc.
References cosTetMaxElec, mass, MeV, G4INCL::Math::min(), mom2, particle, theElectron, and tkin.
Referenced by SetupTarget().
|
inline |
Definition at line 222 of file G4WentzelVIRelXSection.hh.
References kinFactor, screenZ, and targetZ.
Referenced by G4hCoulombScatteringModel::ComputeCrossSectionPerAtom(), and G4WentzelVIRelModel::ComputeXSectionPerVolume().
Definition at line 193 of file G4WentzelVIRelXSection.cc.
References cosTetMaxElec, factB, formfactA, G4cout, G4endl, G4Log(), G4ParticleDefinition::GetParticleName(), kinFactor, G4INCL::Math::max(), mom2, numlimit, nwarnings, nwarnlimit, particle, screenZ, targetZ, and tkin.
Referenced by G4WentzelVIRelModel::ComputeCrossSectionPerAtom(), and G4WentzelVIRelModel::ComputeXSectionPerVolume().
|
inline |
Definition at line 214 of file G4WentzelVIRelXSection.hh.
References cosTetMaxElec.
|
inline |
Definition at line 207 of file G4WentzelVIRelXSection.hh.
References cosTetMaxNuc.
|
inline |
Definition at line 200 of file G4WentzelVIRelXSection.hh.
References mom2.
Referenced by G4hCoulombScatteringModel::SampleSecondaries().
void G4WentzelVIRelXSection::Initialise | ( | const G4ParticleDefinition * | p, |
G4double | CosThetaLim | ||
) |
Definition at line 115 of file G4WentzelVIRelXSection.cc.
References a, cosThetaMax, currentMaterial, DBL_MAX, ecut, etag, factorA2, G4LossTableManager::FactorForAngleLimit(), fermi, G4LossTableManager::Instance(), mom2, momCM2, SetupParticle(), targetZ, and tkin.
Referenced by G4WentzelVIRelXSection(), G4hCoulombScatteringModel::Initialise(), and G4WentzelVIRelModel::Initialise().
|
private |
G4ThreeVector G4WentzelVIRelXSection::SampleSingleScattering | ( | G4double | CosThetaMin, |
G4double | CosThetaMax, | ||
G4double | elecRatio = 0.0 |
||
) |
Definition at line 290 of file G4WentzelVIRelXSection.cc.
References cosTetMaxElec, factB, factB1, factD, fm, formfactA, G4UniformRand, G4INCL::Math::max(), screenZ, and targetZ.
Referenced by G4WentzelVIRelModel::SampleScattering(), and G4hCoulombScatteringModel::SampleSecondaries().
|
inline |
Definition at line 192 of file G4WentzelVIRelXSection.hh.
References factD, mom2, and targetMass.
Referenced by G4hCoulombScatteringModel::SampleSecondaries(), and SetupTarget().
|
inline |
Definition at line 176 of file G4WentzelVIRelXSection.hh.
References cosTetMaxNuc, cosThetaMax, currentMaterial, factB, factorA2, G4IonisParamMat::GetInvA23(), G4Material::GetIonisation(), invbeta2, mass, G4INCL::Math::max(), mom2, spin, and tkin.
Referenced by G4hCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4WentzelVIRelModel::ComputeCrossSectionPerAtom(), G4WentzelVIRelModel::ComputeGeomPathLength(), G4WentzelVIRelModel::ComputeTruePathLengthLimit(), and G4WentzelVIRelModel::ComputeTrueStepLength().
void G4WentzelVIRelXSection::SetupParticle | ( | const G4ParticleDefinition * | p | ) |
Definition at line 131 of file G4WentzelVIRelXSection.cc.
References charge3, chargeSquare, currentMaterial, eplus, G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), G4ParticleDefinition::GetPDGSpin(), mass, particle, spin, targetZ, and tkin.
Referenced by Initialise(), G4hCoulombScatteringModel::SetupParticle(), and G4WentzelVIRelModel::SetupParticle().
Definition at line 148 of file G4WentzelVIRelXSection.cc.
References alpha2, chargeSquare, coeff, ComputeMaxElectronScattering(), cosTetMaxElec, cosTetMaxNuc, etag, fNistManager, formfactA, FormFactor, G4NistManager::GetAtomicMassAmu(), invbeta2, kinFactor, G4INCL::Math::min(), mom2, particle, ScreenRSquare, screenZ, SetTargetMass(), targetZ, theProton, and tkin.
Referenced by G4hCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4WentzelVIRelModel::ComputeCrossSectionPerAtom(), G4WentzelVIRelModel::ComputeXSectionPerVolume(), and G4WentzelVIRelModel::SampleScattering().
|
private |
Definition at line 139 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection(), and SetupTarget().
|
private |
Definition at line 145 of file G4WentzelVIRelXSection.hh.
Referenced by SetupParticle().
|
private |
Definition at line 144 of file G4WentzelVIRelXSection.hh.
Referenced by SetupParticle(), and SetupTarget().
|
private |
Definition at line 135 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection(), and SetupTarget().
|
private |
Definition at line 136 of file G4WentzelVIRelXSection.hh.
Referenced by ComputeElectronCrossSection(), ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), G4WentzelVIRelXSection(), GetCosThetaElec(), SampleSingleScattering(), and SetupTarget().
|
private |
Definition at line 137 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection(), GetCosThetaNuc(), SetupKinematic(), and SetupTarget().
|
private |
Definition at line 138 of file G4WentzelVIRelXSection.hh.
Referenced by Initialise(), and SetupKinematic().
|
private |
Definition at line 121 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection(), Initialise(), SetupKinematic(), and SetupParticle().
|
private |
Definition at line 154 of file G4WentzelVIRelXSection.hh.
Referenced by Initialise().
|
private |
Definition at line 128 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection().
|
private |
Definition at line 153 of file G4WentzelVIRelXSection.hh.
Referenced by Initialise(), and SetupTarget().
|
private |
Definition at line 163 of file G4WentzelVIRelXSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom(), G4WentzelVIRelXSection(), SampleSingleScattering(), and SetupKinematic().
|
private |
Definition at line 164 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection(), and SampleSingleScattering().
|
private |
Definition at line 165 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection(), SampleSingleScattering(), and SetTargetMass().
|
private |
Definition at line 162 of file G4WentzelVIRelXSection.hh.
Referenced by Initialise(), and SetupKinematic().
|
private |
Definition at line 124 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection().
|
private |
Definition at line 123 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection(), and SetupTarget().
|
private |
Definition at line 161 of file G4WentzelVIRelXSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom(), G4WentzelVIRelXSection(), SampleSingleScattering(), and SetupTarget().
|
staticprivate |
Definition at line 170 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection(), and SetupTarget().
|
private |
Definition at line 166 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection().
|
private |
Definition at line 151 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection(), SetupKinematic(), and SetupTarget().
|
private |
Definition at line 152 of file G4WentzelVIRelXSection.hh.
Referenced by ComputeElectronCrossSection(), ComputeNuclearCrossSection(), ComputeTransportCrossSectionPerAtom(), G4WentzelVIRelXSection(), and SetupTarget().
|
private |
Definition at line 155 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection().
|
private |
Definition at line 147 of file G4WentzelVIRelXSection.hh.
Referenced by ComputeMaxElectronScattering(), SetupKinematic(), and SetupParticle().
|
private |
Definition at line 149 of file G4WentzelVIRelXSection.hh.
Referenced by ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), GetMomentumSquare(), Initialise(), SetTargetMass(), SetupKinematic(), and SetupTarget().
|
private |
Definition at line 150 of file G4WentzelVIRelXSection.hh.
Referenced by Initialise().
|
private |
Definition at line 126 of file G4WentzelVIRelXSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom().
|
private |
Definition at line 131 of file G4WentzelVIRelXSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom().
|
private |
Definition at line 132 of file G4WentzelVIRelXSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom().
|
private |
Definition at line 142 of file G4WentzelVIRelXSection.hh.
Referenced by ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), G4WentzelVIRelXSection(), SetupParticle(), and SetupTarget().
|
private |
Definition at line 167 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection().
|
staticprivate |
Definition at line 169 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection(), and SetupTarget().
|
private |
Definition at line 160 of file G4WentzelVIRelXSection.hh.
Referenced by ComputeElectronCrossSection(), ComputeNuclearCrossSection(), ComputeTransportCrossSectionPerAtom(), G4WentzelVIRelXSection(), SampleSingleScattering(), and SetupTarget().
|
private |
Definition at line 146 of file G4WentzelVIRelXSection.hh.
Referenced by SetupKinematic(), and SetupParticle().
|
private |
Definition at line 159 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection(), and SetTargetMass().
|
private |
Definition at line 158 of file G4WentzelVIRelXSection.hh.
Referenced by ComputeNuclearCrossSection(), ComputeTransportCrossSectionPerAtom(), Initialise(), SampleSingleScattering(), SetupParticle(), and SetupTarget().
|
private |
Definition at line 119 of file G4WentzelVIRelXSection.hh.
Referenced by ComputeMaxElectronScattering(), and G4WentzelVIRelXSection().
|
private |
Definition at line 120 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection().
|
private |
Definition at line 118 of file G4WentzelVIRelXSection.hh.
Referenced by G4WentzelVIRelXSection(), and SetupTarget().
|
private |
Definition at line 148 of file G4WentzelVIRelXSection.hh.
Referenced by ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), Initialise(), SetupKinematic(), SetupParticle(), and SetupTarget().