Geant4-11
|
#include <G4WentzelOKandVIxSection.hh>
Protected Member Functions | |
void | ComputeMaxElectronScattering (G4double cut) |
G4double | FlatFormfactor (G4double x) |
void | InitialiseA () |
Static Protected Attributes | |
static G4double | FormFactor [100] = {0.0} |
static G4double | ScreenRSquare [100] = {0.0} |
static G4double | ScreenRSquareElec [100] = {0.0} |
Definition at line 73 of file G4WentzelOKandVIxSection.hh.
|
explicit |
Definition at line 75 of file G4WentzelOKandVIxSection.cc.
References CLHEP::classic_electr_radius, coeff, G4Electron::Electron(), CLHEP::electron_mass_c2, fG4pow, fNistManager, G4Pow::GetInstance(), G4NistManager::Instance(), G4Positron::Positron(), G4Proton::Proton(), CLHEP::proton_mass_c2, targetMass, theElectron, thePositron, theProton, and CLHEP::twopi.
|
virtual |
Definition at line 93 of file G4WentzelOKandVIxSection.cc.
References fMottXSection.
|
delete |
|
inline |
Definition at line 228 of file G4WentzelOKandVIxSection.hh.
References cosTetMaxElec, fMottFactor, kinFactor, G4INCL::Math::max(), and screenZ.
Referenced by G4eCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4hCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4WentzelVIModel::ComputeTransportXSectionPerVolume(), G4eCoulombScatteringModel::SampleSecondaries(), and G4hCoulombScatteringModel::SampleSecondaries().
|
protected |
Definition at line 400 of file G4WentzelOKandVIxSection.cc.
References cosTetMaxElec, source.hepunit::electron_mass_c2, mass, MeV, G4INCL::Math::min(), mom2, particle, theElectron, and tkin.
Referenced by SetupTarget().
|
inline |
Definition at line 218 of file G4WentzelOKandVIxSection.hh.
References fMottFactor, kinFactor, screenZ, and targetZ.
Referenced by G4eCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4hCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4WentzelVIModel::ComputeTransportXSectionPerVolume(), G4eCoulombScatteringModel::SampleSecondaries(), and G4hCoulombScatteringModel::SampleSecondaries().
Definition at line 430 of file G4WentzelOKandVIxSection.cc.
Referenced by G4WentzelVIModel::ComputeSecondMoment().
Definition at line 248 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(), G4WentzelVIRelModel::ComputeCrossSectionPerAtom(), and G4WentzelVIModel::ComputeTransportXSectionPerVolume().
Definition at line 237 of file G4WentzelOKandVIxSection.hh.
Referenced by SampleSingleScattering().
|
inline |
Definition at line 210 of file G4WentzelOKandVIxSection.hh.
References cosTetMaxElec.
|
inline |
Definition at line 203 of file G4WentzelOKandVIxSection.hh.
References cosTetMaxNuc.
|
inline |
Definition at line 196 of file G4WentzelOKandVIxSection.hh.
References mom2.
Referenced by G4eCoulombScatteringModel::SampleSecondaries().
void G4WentzelOKandVIxSection::Initialise | ( | const G4ParticleDefinition * | p, |
G4double | CosThetaLim | ||
) |
Definition at line 100 of file G4WentzelOKandVIxSection.cc.
References cosThetaMax, currentMaterial, DBL_MAX, ecut, etag, factorA2, G4EmParameters::FactorForAngleLimit(), CLHEP::fermi, fMottXSection, fNucFormfactor, CLHEP::hbarc, G4ScreeningMottCrossSection::Initialise(), InitialiseA(), G4EmParameters::Instance(), isCombined, mom2, momCM2, G4EmParameters::NuclearFormfactorType(), ScreenRSquare, SetupParticle(), targetZ, theElectron, thePositron, and tkin.
Referenced by G4eCoulombScatteringModel::Initialise(), G4hCoulombScatteringModel::Initialise(), and G4WentzelVIModel::Initialise().
|
protected |
Definition at line 132 of file G4WentzelOKandVIxSection.cc.
References a0, alpha2, CLHEP::electron_mass_c2, fG4pow, fNistManager, FormFactor, G4Exp(), G4MUTEXLOCK, G4MUTEXUNLOCK, G4NistManager::GetA27(), G4EmParameters::Instance(), CLHEP::MeV, G4EmParameters::ScreeningFactor(), ScreenRSquare, ScreenRSquareElec, and G4Pow::Z13().
Referenced by Initialise().
|
delete |
G4ThreeVector & G4WentzelOKandVIxSection::SampleSingleScattering | ( | G4double | CosThetaMin, |
G4double | CosThetaMax, | ||
G4double | elecRatio | ||
) |
Definition at line 337 of file G4WentzelOKandVIxSection.cc.
References G4Pow::A13(), cosTetMaxElec, factB, factB1, factD, fExponentialNF, fFlatNF, fG4pow, fGaussianNF, CLHEP::HepRandomEngine::flat(), FlatFormfactor(), fMottFactor, fMottXSection, fNistManager, fNucFormfactor, formfactA, G4Exp(), G4NistManager::GetAtomicMassAmu(), G4INCL::Math::max(), MeV, mom2, G4ScreeningMottCrossSection::RatioMottRutherfordCosT(), screenZ, CLHEP::Hep3Vector::set(), G4ScreeningMottCrossSection::SetupKinematic(), targetZ, temp, tkin, and twopi.
Referenced by G4WentzelVIModel::SampleScattering(), G4eCoulombScatteringModel::SampleSecondaries(), and G4hCoulombScatteringModel::SampleSecondaries().
|
inline |
Definition at line 188 of file G4WentzelOKandVIxSection.hh.
References factD, mom2, and targetMass.
Referenced by G4hCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4WentzelVIRelModel::ComputeCrossSectionPerAtom(), G4WentzelVIRelModel::DefineMaterial(), G4eCoulombScatteringModel::SampleSecondaries(), G4hCoulombScatteringModel::SampleSecondaries(), and SetupTarget().
|
virtual |
Reimplemented in G4WentzelVIRelXSection.
Definition at line 188 of file G4WentzelOKandVIxSection.cc.
References cosTetMaxNuc, cosThetaMax, currentMaterial, factB, factorA2, G4IonisParamMat::GetInvA23(), G4Material::GetIonisation(), invbeta2, isCombined, mass, G4INCL::Math::max(), mom2, spin, and tkin.
Referenced by G4eCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4WentzelVIModel::ComputeCrossSectionPerAtom(), G4WentzelVIRelModel::ComputeCrossSectionPerAtom(), G4WentzelVIModel::ComputeGeomPathLength(), G4WentzelVIModel::ComputeSecondMoment(), G4LowEWentzelVIModel::ComputeTruePathLengthLimit(), G4WentzelVIModel::ComputeTruePathLengthLimit(), G4WentzelVIModel::ComputeTrueStepLength(), and G4eCoulombScatteringModel::SampleSecondaries().
void G4WentzelOKandVIxSection::SetupParticle | ( | const G4ParticleDefinition * | p | ) |
Definition at line 171 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(), G4hCoulombScatteringModel::SetupParticle(), and G4WentzelVIModel::SetupParticle().
Definition at line 206 of file G4WentzelOKandVIxSection.cc.
References alpha2, CLHEP::amu_c2, chargeSquare, coeff, ComputeMaxElectronScattering(), cosTetMaxElec, cosTetMaxNuc, etag, fG4pow, fMottFactor, fMottXSection, fNistManager, formfactA, FormFactor, G4NistManager::GetAtomicMassAmu(), invbeta2, kinFactor, mass, MeV, G4INCL::Math::min(), mom2, particle, CLHEP::proton_mass_c2, ScreenRSquare, ScreenRSquareElec, screenZ, SetTargetMass(), targetZ, theElectron, theProton, tkin, Z, and G4Pow::Z23().
Referenced by G4eCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4hCoulombScatteringModel::ComputeCrossSectionPerAtom(), G4WentzelVIModel::ComputeCrossSectionPerAtom(), G4WentzelVIRelModel::ComputeCrossSectionPerAtom(), G4WentzelVIModel::ComputeSecondMoment(), G4WentzelVIModel::ComputeTransportXSectionPerVolume(), G4WentzelVIModel::SampleScattering(), G4eCoulombScatteringModel::SampleSecondaries(), and G4hCoulombScatteringModel::SampleSecondaries().
|
protected |
Definition at line 146 of file G4WentzelOKandVIxSection.hh.
Referenced by SetupParticle().
|
protected |
Definition at line 145 of file G4WentzelOKandVIxSection.hh.
Referenced by SetupParticle(), and SetupTarget().
|
protected |
Definition at line 140 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
protected |
Definition at line 141 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeElectronCrossSection(), ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), GetCosThetaElec(), SampleSingleScattering(), and SetupTarget().
|
protected |
Definition at line 142 of file G4WentzelOKandVIxSection.hh.
Referenced by GetCosThetaNuc(), SetupKinematic(), G4WentzelVIRelXSection::SetupKinematic(), and SetupTarget().
|
protected |
Definition at line 143 of file G4WentzelOKandVIxSection.hh.
Referenced by Initialise(), SetupKinematic(), and G4WentzelVIRelXSection::SetupKinematic().
|
protected |
Definition at line 130 of file G4WentzelOKandVIxSection.hh.
Referenced by Initialise(), SetupKinematic(), G4WentzelVIRelXSection::SetupKinematic(), and SetupParticle().
Definition at line 155 of file G4WentzelOKandVIxSection.hh.
Referenced by Initialise().
Definition at line 154 of file G4WentzelOKandVIxSection.hh.
Referenced by Initialise(), and SetupTarget().
|
protected |
Definition at line 162 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom(), SampleSingleScattering(), SetupKinematic(), and G4WentzelVIRelXSection::SetupKinematic().
|
protected |
Definition at line 163 of file G4WentzelOKandVIxSection.hh.
Referenced by SampleSingleScattering(), SetTargetMass(), and G4WentzelVIRelXSection::SetupKinematic().
|
protected |
Definition at line 161 of file G4WentzelOKandVIxSection.hh.
Referenced by Initialise(), SetupKinematic(), and G4WentzelVIRelXSection::SetupKinematic().
|
protected |
Definition at line 133 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), InitialiseA(), SampleSingleScattering(), and SetupTarget().
|
protected |
Definition at line 164 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeElectronCrossSection(), ComputeNuclearCrossSection(), SampleSingleScattering(), and SetupTarget().
|
protected |
Definition at line 135 of file G4WentzelOKandVIxSection.hh.
Referenced by Initialise(), SampleSingleScattering(), SetupTarget(), and ~G4WentzelOKandVIxSection().
|
protected |
Definition at line 132 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), InitialiseA(), SampleSingleScattering(), and SetupTarget().
|
protected |
Definition at line 172 of file G4WentzelOKandVIxSection.hh.
Referenced by Initialise(), and SampleSingleScattering().
|
protected |
Definition at line 160 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom(), SampleSingleScattering(), and SetupTarget().
|
staticprotected |
Definition at line 178 of file G4WentzelOKandVIxSection.hh.
Referenced by InitialiseA(), and SetupTarget().
|
protected |
Definition at line 165 of file G4WentzelOKandVIxSection.hh.
|
protected |
Definition at line 152 of file G4WentzelOKandVIxSection.hh.
Referenced by SetupKinematic(), G4WentzelVIRelXSection::SetupKinematic(), and SetupTarget().
|
protected |
Definition at line 174 of file G4WentzelOKandVIxSection.hh.
Referenced by Initialise(), SetupKinematic(), and G4WentzelVIRelXSection::SetupKinematic().
|
protected |
Definition at line 153 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeElectronCrossSection(), ComputeNuclearCrossSection(), ComputeTransportCrossSectionPerAtom(), and SetupTarget().
|
protected |
Definition at line 148 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeMaxElectronScattering(), SetupKinematic(), G4WentzelVIRelXSection::SetupKinematic(), SetupParticle(), and SetupTarget().
|
protected |
Definition at line 150 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), GetMomentumSquare(), Initialise(), SampleSingleScattering(), SetTargetMass(), SetupKinematic(), G4WentzelVIRelXSection::SetupKinematic(), and SetupTarget().
|
protected |
Definition at line 151 of file G4WentzelOKandVIxSection.hh.
Referenced by Initialise().
|
protected |
Definition at line 170 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeTransportCrossSectionPerAtom().
|
protected |
Definition at line 129 of file G4WentzelOKandVIxSection.hh.
Referenced by emcalc_gui.MainWindow::cb_select_particle(), emcalc_gui.MainWindow::cb_show_plot(), ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), SetupParticle(), and SetupTarget().
|
protected |
Definition at line 166 of file G4WentzelOKandVIxSection.hh.
|
staticprotected |
Definition at line 177 of file G4WentzelOKandVIxSection.hh.
Referenced by Initialise(), InitialiseA(), and SetupTarget().
|
staticprotected |
Definition at line 176 of file G4WentzelOKandVIxSection.hh.
Referenced by InitialiseA(), and SetupTarget().
|
protected |
Definition at line 159 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeElectronCrossSection(), ComputeNuclearCrossSection(), ComputeTransportCrossSectionPerAtom(), SampleSingleScattering(), and SetupTarget().
|
protected |
Definition at line 147 of file G4WentzelOKandVIxSection.hh.
Referenced by SetupKinematic(), G4WentzelVIRelXSection::SetupKinematic(), and SetupParticle().
|
protected |
Definition at line 158 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), SetTargetMass(), and G4WentzelVIRelXSection::SetupKinematic().
|
protected |
Definition at line 169 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeNuclearCrossSection(), ComputeTransportCrossSectionPerAtom(), Initialise(), SampleSingleScattering(), SetupParticle(), and SetupTarget().
|
protected |
Definition at line 137 of file G4WentzelOKandVIxSection.hh.
Referenced by SampleSingleScattering().
|
protected |
Definition at line 127 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeMaxElectronScattering(), G4WentzelOKandVIxSection(), Initialise(), and SetupTarget().
|
protected |
Definition at line 128 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and Initialise().
|
protected |
Definition at line 126 of file G4WentzelOKandVIxSection.hh.
Referenced by G4WentzelOKandVIxSection(), and SetupTarget().
|
protected |
Definition at line 149 of file G4WentzelOKandVIxSection.hh.
Referenced by ComputeMaxElectronScattering(), ComputeTransportCrossSectionPerAtom(), Initialise(), SampleSingleScattering(), SetupKinematic(), G4WentzelVIRelXSection::SetupKinematic(), SetupParticle(), and SetupTarget().