Geant4
10.01.p02
|
#include <G4WentzelOKandVIxSection.hh>
Public Member Functions | |
G4WentzelOKandVIxSection (G4bool combined=true) | |
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 | ComputeSecondTransportMoment (G4double CosThetaMax) |
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 | ( | G4bool | combined = true | ) |
Definition at line 66 of file G4WentzelOKandVIxSection.cc.
References a0, alpha2, charge3, chargeSquare, coeff, cosTetMaxElec, cosTetMaxNuc, currentMaterial, DBL_MAX, ecut, G4Electron::Electron(), 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, p0, 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 244 of file G4WentzelOKandVIxSection.hh.
References cosTetMaxElec, kinFactor, G4INCL::Math::max(), and screenZ.
Referenced by G4eCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4WentzelVIModel::ComputeTransportXSectionPerVolume(), and G4eCoulombScatteringModel::SampleSecondaries().
|
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 230 of file G4WentzelOKandVIxSection.hh.
References kinFactor, screenZ, and targetZ.
Referenced by G4eCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4WentzelVIModel::ComputeTransportXSectionPerVolume(), and G4eCoulombScatteringModel::SampleSecondaries().
Definition at line 381 of file G4WentzelOKandVIxSection.cc.
Referenced by G4WentzelVIModel::ComputeSecondMoment().
Definition at line 206 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::ComputeTransportXSectionPerVolume().
|
inline |
Definition at line 222 of file G4WentzelOKandVIxSection.hh.
References cosTetMaxElec.
|
inline |
Definition at line 215 of file G4WentzelOKandVIxSection.hh.
References cosTetMaxNuc.
|
inline |
Definition at line 208 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, G4EmParameters::FactorForAngleLimit(), fermi, G4EmParameters::Instance(), isCombined, 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 305 of file G4WentzelOKandVIxSection.cc.
References cosTetMaxElec, factB, factB1, factD, formfactA, G4INCL::Math::max(), screenZ, targetZ, and temp.
Referenced by G4WentzelVIModel::SampleScattering(), and G4eCoulombScatteringModel::SampleSecondaries().
|
inline |
Definition at line 200 of file G4WentzelOKandVIxSection.hh.
References factD, mom2, and targetMass.
Referenced by G4eCoulombScatteringModel::SampleSecondaries(), and SetupTarget().
|
inline |
Definition at line 181 of file G4WentzelOKandVIxSection.hh.
References cosTetMaxNuc, cosThetaMax, currentMaterial, factB, factorA2, G4IonisParamMat::GetInvA23(), G4Material::GetIonisation(), invbeta2, isCombined, mass, G4INCL::Math::max(), mom2, spin, and tkin.
Referenced by G4WentzelVIModel::ComputeCrossSectionPerAtom(), G4eCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4WentzelVIModel::ComputeGeomPathLength(), G4WentzelVIModel::ComputeSecondMoment(), G4LowEWentzelVIModel::ComputeTruePathLengthLimit(), G4WentzelVIModel::ComputeTruePathLengthLimit(), G4WentzelVIModel::ComputeTrueStepLength(), and G4eCoulombScatteringModel::SampleSecondaries().
void G4WentzelOKandVIxSection::SetupParticle | ( | const G4ParticleDefinition * | p | ) |
Definition at line 149 of file G4WentzelOKandVIxSection.cc.
References charge3, chargeSquare, currentMaterial, eplus, G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGMass(), G4ParticleDefinition::GetPDGSpin(), mass, particle, spin, targetZ, and tkin.
Referenced by Initialise(), G4eCoulombScatteringModel::SetupParticle(), and G4WentzelVIModel::SetupParticle().
Definition at line 166 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::ComputeSecondMoment(), G4WentzelVIModel::ComputeTransportXSectionPerVolume(), G4WentzelVIModel::SampleScattering(), and G4eCoulombScatteringModel::SampleSecondaries().
|
private |
Definition at line 143 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 149 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupParticle().
|
private |
Definition at line 148 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), SetupParticle(), and SetupTarget().
|
private |
Definition at line 139 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 140 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeElectronCrossSection(), ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), GetCosThetaElec(), SampleSingleScattering(), and SetupTarget().
|
private |
Definition at line 141 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), GetCosThetaNuc(), SetupKinematic(), and SetupTarget().
|
private |
Definition at line 142 of file G4WentzelOKandVIxSection.hh.
Referenced by Initialise(), and SetupKinematic().
|
private |
Definition at line 123 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), Initialise(), SetupKinematic(), and SetupParticle().
|
private |
Definition at line 158 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and Initialise().
|
private |
Definition at line 157 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), Initialise(), and SetupTarget().
|
private |
Definition at line 167 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), SampleSingleScattering(), and SetupKinematic().
|
private |
Definition at line 168 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SampleSingleScattering().
|
private |
Definition at line 169 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), SampleSingleScattering(), and SetTargetMass().
|
private |
Definition at line 166 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), Initialise(), and SetupKinematic().
|
private |
Definition at line 126 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 125 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 165 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), SampleSingleScattering(), and SetupTarget().
|
staticprivate |
Definition at line 175 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 170 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection().
|
private |
Definition at line 155 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), SetupKinematic(), and SetupTarget().
|
private |
Definition at line 136 of file G4WentzelOKandVIxSection.hh.
Referenced by Initialise(), and SetupKinematic().
|
private |
Definition at line 156 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeElectronCrossSection(), ComputeNuclearCrossSection(), ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 159 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection().
|
private |
Definition at line 151 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeMaxElectronScattering(), G4WentzelOKandVIxSection(), SetupKinematic(), SetupParticle(), and SetupTarget().
|
private |
Definition at line 153 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), GetMomentumSquare(), Initialise(), SetTargetMass(), SetupKinematic(), and SetupTarget().
|
private |
Definition at line 154 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and Initialise().
|
private |
Definition at line 130 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom().
|
private |
Definition at line 133 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom().
|
private |
Definition at line 134 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom().
|
private |
Definition at line 146 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), SetupParticle(), and SetupTarget().
|
private |
Definition at line 171 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection().
|
staticprivate |
Definition at line 174 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
staticprivate |
Definition at line 173 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 164 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeElectronCrossSection(), ComputeNuclearCrossSection(), ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), SampleSingleScattering(), and SetupTarget().
|
private |
Definition at line 150 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), SetupKinematic(), and SetupParticle().
|
private |
Definition at line 163 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetTargetMass().
|
private |
Definition at line 162 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeNuclearCrossSection(), ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), Initialise(), SampleSingleScattering(), SetupParticle(), and SetupTarget().
|
private |
Definition at line 128 of file G4WentzelOKandVIxSection.hh.
Referenced by SampleSingleScattering().
|
private |
Definition at line 121 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeMaxElectronScattering(), and G4WentzelOKandVIxSection().
|
private |
Definition at line 122 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection().
|
private |
Definition at line 120 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
private |
Definition at line 152 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), G4WentzelOKandVIxSection(), Initialise(), SetupKinematic(), SetupParticle(), and SetupTarget().