Geant4
10.00.p01
|
#include <G4WentzelOKandVIxSection.hh>
Public Member Functions | |
G4WentzelOKandVIxSection () | |
virtual | ~G4WentzelOKandVIxSection () |
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) |
G4WentzelOKandVIxSection & | operator= (const G4WentzelOKandVIxSection &right) |
G4WentzelOKandVIxSection (const G4WentzelOKandVIxSection &) | |
Static Private Attributes | |
static G4double | ScreenRSquareElec [100] = {0.0} |
static G4double | ScreenRSquare [100] = {0.0} |
static G4double | FormFactor [100] = {0.0} |
Definition at line 71 of file G4WentzelOKandVIxSection.hh.
G4WentzelOKandVIxSection::G4WentzelOKandVIxSection | ( | ) |
Definition at line 68 of file G4WentzelOKandVIxSection.cc.
References a0, alpha2, charge3, chargeSquare, coeff, cosTetMaxElec, cosTetMaxNuc, cosThetaMax, currentMaterial, DBL_MAX, ecut, G4Electron::Electron(), elecXSRatio, etag, eV, factB, factB1, factD, factorA2, fG4pow, fNistManager, formfactA, FormFactor, G4Exp(), gam0pcmp, G4NistManager::GetA27(), G4Pow::GetInstance(), G4NistManager::Instance(), invbeta2, kinFactor, lowEnergyLimit, mass, MeV, mom2, momCM2, particle, pcmp2, G4INCL::Math::pi, G4Positron::Positron(), G4Proton::Proton(), ScreenRSquare, ScreenRSquareElec, screenZ, spin, targetMass, targetZ, theElectron, thePositron, theProton, tkin, and G4Pow::Z13().
|
virtual |
Definition at line 120 of file G4WentzelOKandVIxSection.cc.
|
private |
|
inline |
Definition at line 237 of file G4WentzelOKandVIxSection.hh.
References cosTetMaxElec, kinFactor, G4INCL::Math::max(), and screenZ.
Referenced by G4eCoulombScatteringModel::ComputeCrossSectionPerAtom(), and G4WentzelVIModel::ComputeXSectionPerVolume().
|
private |
Definition at line 348 of file G4WentzelOKandVIxSection.cc.
References cosTetMaxElec, mass, MeV, G4INCL::Math::min(), mom2, particle, theElectron, and tkin.
Referenced by SetupTarget().
|
inline |
Definition at line 223 of file G4WentzelOKandVIxSection.hh.
References kinFactor, screenZ, and targetZ.
Referenced by G4eCoulombScatteringModel::ComputeCrossSectionPerAtom(), and G4WentzelVIModel::ComputeXSectionPerVolume().
Definition at line 204 of file G4WentzelOKandVIxSection.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 G4WentzelVIModel::ComputeCrossSectionPerAtom(), and G4WentzelVIModel::ComputeXSectionPerVolume().
|
inline |
Definition at line 215 of file G4WentzelOKandVIxSection.hh.
References cosTetMaxElec.
|
inline |
Definition at line 208 of file G4WentzelOKandVIxSection.hh.
References cosTetMaxNuc.
|
inline |
Definition at line 201 of file G4WentzelOKandVIxSection.hh.
References mom2.
Referenced by G4eCoulombScatteringModel::SampleSecondaries().
void G4WentzelOKandVIxSection::Initialise | ( | const G4ParticleDefinition * | p, |
G4double | CosThetaLim | ||
) |
Definition at line 125 of file G4WentzelOKandVIxSection.cc.
References a, cosThetaMax, currentMaterial, DBL_MAX, ecut, etag, factorA2, G4LossTableManager::FactorForAngleLimit(), fermi, G4LossTableManager::Instance(), mom2, momCM2, SetupParticle(), targetZ, and tkin.
Referenced by G4WentzelVIModel::Initialise(), and G4eCoulombScatteringModel::Initialise().
|
private |
G4ThreeVector G4WentzelOKandVIxSection::SampleSingleScattering | ( | G4double | CosThetaMin, |
G4double | CosThetaMax, | ||
G4double | elecRatio = 0.0 |
||
) |
Definition at line 301 of file G4WentzelOKandVIxSection.cc.
References cosTetMaxElec, factB, factB1, factD, fm, formfactA, G4UniformRand, G4INCL::Math::max(), screenZ, and targetZ.
Referenced by G4WentzelVIModel::SampleScattering(), and G4eCoulombScatteringModel::SampleSecondaries().
|
inline |
Definition at line 193 of file G4WentzelOKandVIxSection.hh.
References factD, mom2, and targetMass.
Referenced by G4eCoulombScatteringModel::SampleSecondaries(), and SetupTarget().
|
inline |
Definition at line 177 of file G4WentzelOKandVIxSection.hh.
References cosTetMaxNuc, cosThetaMax, currentMaterial, factB, factorA2, G4IonisParamMat::GetInvA23(), G4Material::GetIonisation(), invbeta2, mass, G4INCL::Math::max(), mom2, spin, and tkin.
Referenced by G4WentzelVIModel::ComputeCrossSectionPerAtom(), G4eCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4WentzelVIModel::ComputeGeomPathLength(), G4WentzelVIModel::ComputeTruePathLengthLimit(), and G4WentzelVIModel::ComputeTrueStepLength().
void G4WentzelOKandVIxSection::SetupParticle | ( | const G4ParticleDefinition * | p | ) |
Definition at line 145 of file G4WentzelOKandVIxSection.cc.
References charge3, chargeSquare, currentMaterial, eplus, G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), G4ParticleDefinition::GetPDGSpin(), mass, particle, spin, targetZ, and tkin.
Referenced by Initialise(), G4WentzelVIModel::SetupParticle(), and G4eCoulombScatteringModel::SetupParticle().
Definition at line 162 of file G4WentzelOKandVIxSection.cc.
References alpha2, chargeSquare, coeff, ComputeMaxElectronScattering(), cosTetMaxElec, cosTetMaxNuc, etag, fG4pow, fNistManager, formfactA, FormFactor, G4NistManager::GetAtomicMassAmu(), invbeta2, kinFactor, mass, MeV, G4INCL::Math::min(), mom2, particle, ScreenRSquare, ScreenRSquareElec, screenZ, SetTargetMass(), targetZ, theProton, tkin, and G4Pow::Z23().
Referenced by G4WentzelVIModel::ComputeCrossSectionPerAtom(), G4eCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4WentzelVIModel::ComputeXSectionPerVolume(), and G4WentzelVIModel::SampleScattering().
|
private |
Definition at line 139 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 145 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupParticle().
|
private |
Definition at line 144 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), SetupParticle(), and SetupTarget().
|
private |
Definition at line 135 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 136 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeElectronCrossSection(), ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), GetCosThetaElec(), SampleSingleScattering(), and SetupTarget().
|
private |
Definition at line 137 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), GetCosThetaNuc(), SetupKinematic(), and SetupTarget().
|
private |
Definition at line 138 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), Initialise(), and SetupKinematic().
|
private |
Definition at line 121 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), Initialise(), SetupKinematic(), and SetupParticle().
|
private |
Definition at line 154 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and Initialise().
|
private |
Definition at line 128 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection().
|
private |
Definition at line 153 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), Initialise(), and SetupTarget().
|
private |
Definition at line 163 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), SampleSingleScattering(), and SetupKinematic().
|
private |
Definition at line 164 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SampleSingleScattering().
|
private |
Definition at line 165 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), SampleSingleScattering(), and SetTargetMass().
|
private |
Definition at line 162 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), Initialise(), and SetupKinematic().
|
private |
Definition at line 124 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 123 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 161 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), SampleSingleScattering(), and SetupTarget().
|
staticprivate |
Definition at line 171 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 166 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection().
|
private |
Definition at line 151 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), SetupKinematic(), and SetupTarget().
|
private |
Definition at line 152 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeElectronCrossSection(), ComputeNuclearCrossSection(), ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 155 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection().
|
private |
Definition at line 147 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeMaxElectronScattering(), G4WentzelOKandVIxSection(), SetupKinematic(), SetupParticle(), and SetupTarget().
|
private |
Definition at line 149 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), GetMomentumSquare(), Initialise(), SetTargetMass(), SetupKinematic(), and SetupTarget().
|
private |
Definition at line 150 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and Initialise().
|
private |
Definition at line 126 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom().
|
private |
Definition at line 131 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom().
|
private |
Definition at line 132 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom().
|
private |
Definition at line 142 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), SetupParticle(), and SetupTarget().
|
private |
Definition at line 167 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection().
|
staticprivate |
Definition at line 170 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
staticprivate |
Definition at line 169 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 160 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeElectronCrossSection(), ComputeNuclearCrossSection(), ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), SampleSingleScattering(), and SetupTarget().
|
private |
Definition at line 146 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), SetupKinematic(), and SetupParticle().
|
private |
Definition at line 159 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetTargetMass().
|
private |
Definition at line 158 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeNuclearCrossSection(), ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), Initialise(), SampleSingleScattering(), SetupParticle(), and SetupTarget().
|
private |
Definition at line 119 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeMaxElectronScattering(), and G4WentzelOKandVIxSection().
|
private |
Definition at line 120 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection().
|
private |
Definition at line 118 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 148 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), Initialise(), SetupKinematic(), SetupParticle(), and SetupTarget().