Geant4  10.02.p01
G4Exp.hh File Reference
#include <limits>
#include <stdint.h>
#include "G4Types.hh"
+ Include dependency graph for G4Exp.hh:

Go to the source code of this file.

Classes

union  G4ExpConsts::ieee754
 

Namespaces

 G4ExpConsts
 

Functions

G4double G4ExpConsts::uint642dp (uint64_t ll)
 
G4float G4ExpConsts::uint322sp (G4int x)
 
uint32_t G4ExpConsts::sp2uint32 (G4float x)
 
G4double G4ExpConsts::fpfloor (const G4double x)
 A vectorisable floor implementation, not only triggered by fast-math. More...
 
G4float G4ExpConsts::fpfloor (const G4float x)
 A vectorisable floor implementation, not only triggered by fast-math. More...
 
G4double G4Exp (G4double initial_x)
 Exponential Function double precision. More...
 
G4float G4Expf (G4float initial_x)
 Exponential Function single precision. More...
 
void expv (const uint32_t size, G4double const *__restrict__ iarray, G4double *__restrict__ oarray)
 
void G4Expv (const uint32_t size, G4double const *__restrict__ iarray, G4double *__restrict__ oarray)
 
void expfv (const uint32_t size, G4float const *__restrict__ iarray, G4float *__restrict__ oarray)
 
void G4Expfv (const uint32_t size, G4float const *__restrict__ iarray, G4float *__restrict__ oarray)
 

Variables

const G4double G4ExpConsts::EXP_LIMIT = 708
 
const G4double G4ExpConsts::PX1exp = 1.26177193074810590878E-4
 
const G4double G4ExpConsts::PX2exp = 3.02994407707441961300E-2
 
const G4double G4ExpConsts::PX3exp = 9.99999999999999999910E-1
 
const G4double G4ExpConsts::QX1exp = 3.00198505138664455042E-6
 
const G4double G4ExpConsts::QX2exp = 2.52448340349684104192E-3
 
const G4double G4ExpConsts::QX3exp = 2.27265548208155028766E-1
 
const G4double G4ExpConsts::QX4exp = 2.00000000000000000009E0
 
const G4double G4ExpConsts::LOG2E = 1.4426950408889634073599
 
const G4float G4ExpConsts::MAXLOGF = 88.72283905206835f
 
const G4float G4ExpConsts::MINLOGF = -88.f
 
const G4float G4ExpConsts::C1F = 0.693359375f
 
const G4float G4ExpConsts::C2F = -2.12194440e-4f
 
const G4float G4ExpConsts::PX1expf = 1.9875691500E-4f
 
const G4float G4ExpConsts::PX2expf =1.3981999507E-3f
 
const G4float G4ExpConsts::PX3expf =8.3334519073E-3f
 
const G4float G4ExpConsts::PX4expf =4.1665795894E-2f
 
const G4float G4ExpConsts::PX5expf =1.6666665459E-1f
 
const G4float G4ExpConsts::PX6expf =5.0000001201E-1f
 
const G4float G4ExpConsts::LOG2EF = 1.44269504088896341f
 

Function Documentation

void expfv ( const uint32_t  size,
G4float const *__restrict__  iarray,
G4float *__restrict__  oarray 
)
void expv ( const uint32_t  size,
G4double const *__restrict__  iarray,
G4double *__restrict__  oarray 
)
G4double G4Exp ( G4double  initial_x)
inline

Exponential Function double precision.

Definition at line 183 of file G4Exp.hh.

References G4ExpConsts::EXP_LIMIT, G4ExpConsts::fpfloor(), G4ExpConsts::LOG2E, n, G4ExpConsts::PX1exp, G4ExpConsts::PX2exp, G4ExpConsts::PX3exp, G4ExpConsts::QX1exp, G4ExpConsts::QX2exp, G4ExpConsts::QX3exp, G4ExpConsts::QX4exp, G4ExpConsts::uint642dp(), and x.

Referenced by G4RPGReaction::AddBlackTrackParticles(), G4NuclNuclDiffuseElastic::AmplitudeGG(), G4NuclNuclDiffuseElastic::AmplitudeGla(), G4PreCompoundEmission::AngularDistribution(), G4Nucleus::AnnihilationEvaporationEffects(), G4AntiNeutronAnnihilationAtRest::AntiNeutronAnnihilation(), G4WilsonAbrasionModel::ApplyYourself(), G4EmCorrections::BarkasCorrection(), G4WilsonAblationModel::BreakItUp(), G4QMDMeanField::Cal2BodyQuantities(), G4PairProductionRelModel::CalcLPMFunctions(), G4eBremsstrahlungRelModel::CalcLPMFunctions(), G4StatMFMacroNucleon::CalcMeanMultiplicity(), G4StatMFMacroTetraNucleon::CalcMeanMultiplicity(), G4StatMFMacroTriNucleon::CalcMeanMultiplicity(), G4StatMFMacroBiNucleon::CalcMeanMultiplicity(), G4StatMFMacroMultiNucleon::CalcMeanMultiplicity(), G4StatMFMicroPartition::CalcPartitionProbability(), G4GEMProbability::CalcProbability(), G4QuasiElRatios::CalcQF2IN_Ratio(), G4HadronCrossSections::CalcScatteringCrossSections(), G4MuonVDNuclearModel::CalculateEMVertex(), G4PreCompoundTransitions::CalculateProbability(), G4RKFieldIntegrator::CalculateTotalEnergy(), G4QMDCollision::CalFinalStateOfTheBinaryCollisionJQMD(), G4QMDMeanField::calPauliBlockingFactor(), G4RPGKMinusInelastic::Cascade(), G4RPGAntiLambdaInelastic::Cascade(), G4RPGAntiProtonInelastic::Cascade(), G4RPGAntiSigmaPlusInelastic::Cascade(), G4RPGSigmaPlusInelastic::Cascade(), G4RPGXiMinusInelastic::Cascade(), G4RPGAntiNeutronInelastic::Cascade(), G4RPGAntiOmegaMinusInelastic::Cascade(), G4RPGAntiSigmaMinusInelastic::Cascade(), G4RPGAntiXiMinusInelastic::Cascade(), G4RPGOmegaMinusInelastic::Cascade(), G4RPGAntiXiZeroInelastic::Cascade(), G4RPGKZeroInelastic::Cascade(), G4RPGLambdaInelastic::Cascade(), G4RPGKPlusInelastic::Cascade(), G4RPGSigmaMinusInelastic::Cascade(), G4RPGXiZeroInelastic::Cascade(), G4RPGAntiKZeroInelastic::Cascade(), cg1(), cg2(), cg3(), G4BraggModel::ChemicalFactor(), G4NucleiModel::choosePointAlongTraj(), G4Nucleus::Cinema(), G4Clebsch::ClebschGordanCoeff(), G4eeToHadronsModel::ComputeCMCrossSectionPerElectron(), G4KalbachCrossSection::ComputeCrossSection(), G4DiscreteScatteringModel::ComputeCrossSectionPerAtom(), G4KleinNishinaModel::ComputeCrossSectionPerAtom(), G4KleinNishinaCompton::ComputeCrossSectionPerAtom(), G4GammaConversionToMuons::ComputeCrossSectionPerAtom(), G4MuBetheBlochModel::ComputeCrossSectionPerElectron(), G4KokoulinMuonNuclearXS::ComputeDDMicroscopicCrossSection(), G4MuBetheBlochModel::ComputeDEDXPerVolume(), G4hPairProductionModel::ComputeDMicroscopicCrossSection(), G4MuPairProductionModel::ComputeDMicroscopicCrossSection(), G4LivermoreBremsstrahlungModel::ComputeDXSectionPerAtom(), G4SeltzerBergerModel::ComputeDXSectionPerAtom(), G4IonisParamMat::ComputeFluctModel(), G4WentzelVIRelModel::ComputeGeomPathLength(), G4WentzelVIModel::ComputeGeomPathLength(), G4UrbanMscModel::ComputeGeomPathLength(), G4GoudsmitSaundersonMscModel::ComputeGeomPathLength(), G4IonisParamMat::ComputeMeanParameters(), G4KokoulinMuonNuclearXS::ComputeMicroscopicCrossSection(), G4MuBremsstrahlungModel::ComputeMicroscopicCrossSection(), G4MuPairProductionModel::ComputeMicroscopicCrossSection(), G4Material::ComputeNuclearInterLength(), G4LivermoreComptonModel::ComputeScatteringFunction(), G4LowEPComptonModel::ComputeScatteringFunction(), G4LowEPPolarizedComptonModel::ComputeScatteringFunction(), G4UrbanMscModel::ComputeTheta0(), G4UrbanMscModel::ComputeTrueStepLength(), G4eBremParametrizedModel::ComputeXSectionPerAtom(), G4eBremsstrahlungRelModel::ComputeXSectionPerAtom(), G4MuPairProductionModel::ComputMuPairLoss(), G4BGGNucleonInelasticXS::CoulombFactor(), G4BGGNucleonElasticXS::CoulombFactor(), G4DiffractiveExcitation::CreateStrings(), G4LowEXsection::CrossSection(), G4XpimNTotal::CrossSection(), G4XpipNTotal::CrossSection(), G4ChipsAntiBaryonInelasticXS::CrossSectionFormula(), G4ChipsProtonInelasticXS::CrossSectionFormula(), G4ChipsHyperonInelasticXS::CrossSectionFormula(), G4ChipsPionMinusInelasticXS::CrossSectionFormula(), G4ChipsNeutronInelasticXS::CrossSectionFormula(), G4ChipsPionPlusInelasticXS::CrossSectionFormula(), G4ChipsProtonInelasticXS::CrossSectionLin(), G4ChipsNeutronInelasticXS::CrossSectionLin(), G4ChipsAntiBaryonInelasticXS::CrossSectionLog(), G4ChipsProtonInelasticXS::CrossSectionLog(), G4ChipsHyperonInelasticXS::CrossSectionLog(), G4ChipsPionMinusInelasticXS::CrossSectionLog(), G4ChipsNeutronInelasticXS::CrossSectionLog(), G4ChipsPionPlusInelasticXS::CrossSectionLog(), G4MuPairProductionModel::DataCorrupted(), G4EquilibriumEvaporator::deExcite(), G4PreCompoundModel::DeExcite(), G4ElasticHadrNucleusHE::DefineHadronValues(), G4ElasticData::DefineNucleusParameters(), G4FissionParameters::DefineParameters(), G4IonisParamMat::DensityCorrection(), G4EmCorrections::DensityCorrection(), G4ElectroNuclearCrossSection::DFun(), G4ProjectileFragmentCrossSection::doit(), G4ContinuumGammaTransition::E1Pdf(), G4ionEffectiveCharge::EffectiveCharge(), G4PomeronCrossSection::Eikonal(), G4BraggModel::ElectronicStoppingPower(), G4BraggIonModel::ElectronicStoppingPower(), G4FissionProbability::EmissionProbability(), G4E1Probability::EmissionProbDensity(), G4RKFieldIntegrator::Erf(), G4LegendrePolynomial::EvalAssocLegendrePoly(), G4ParticleHPSimpleEvapSpectrum::Evapo(), G4Nucleus::EvaporationEffects(), G4AntiNeutronAnnihilationAtRest::ExNu(), G4Pow::expA(), G4QuasiElRatios::FetchElTot(), G4NucleiModel::fillZoneRadii(), G4JTPolynomialSolver::FindRoots(), G4CompetitiveFission::FissionKineticEnergy(), G4ScreeningMottCrossSection::FormFactor2ExpHof(), G4StatMFChannel::FragmentsMomenta(), G4ElectroNuclearCrossSection::Fun(), G4InuclSpecialFunctions::G4cbrt(), G4ElasticHadrNucleusHE::G4ElasticHadrNucleusHE(), G4FTFParameters::G4FTFParameters(), G4ParticleHPFissionSpectrum::G4ParticleHPFissionSpectrum(), G4ParticleHPMadlandNixSpectrum::G4ParticleHPMadlandNixSpectrum(), G4ParticleHPSimpleEvapSpectrum::G4ParticleHPSimpleEvapSpectrum(), G4ParticleHPWattSpectrum::G4ParticleHPWattSpectrum(), G4PhysicsLnVector::G4PhysicsLnVector(), G4PhysicsLogVector::G4PhysicsLogVector(), G4Poisson(), G4Pow::G4Pow(), G4QMDGroundStateNucleus::G4QMDGroundStateNucleus(), G4fissionEvent::G4SmpNuDistDataU233_235(), G4fissionEvent::G4SmpNugDist(), G4fissionEvent::G4SmpTerrell(), G4WentzelOKandVIxSection::G4WentzelOKandVIxSection(), G4XNNElasticLowE::G4XNNElasticLowE(), G4XnpElasticLowE::G4XnpElasticLowE(), G4XnpTotalLowE::G4XnpTotalLowE(), G4ParticleHPMadlandNixSpectrum::Gamma05(), G4ParticleHPMadlandNixSpectrum::Gamma15(), G4ParticleHPMadlandNixSpectrum::Gamma25(), G4FTFParameters::GammaElastic(), G4ElasticHNScattering::GaussianPt(), G4FTFAnnihilation::GaussianPt(), G4DiffractiveExcitation::GaussianPt(), G4QGSDiffractiveExcitation::GaussianPt(), G4FTFModel::GaussianPt(), G4IntraNucleiCascader::generateCascade(), G4eeToHadronsModel::GenerateCMPhoton(), G4FissionStore::generateConfiguration(), G4CascadeFinalStateAlgorithm::GenerateCosTheta(), G4NucleiModel::generateInteractionLength(), G4RPGReaction::GenerateNBodyEvent(), G4RPGReaction::GenerateNBodyEventT(), G4WilsonAbrasionModel::GetAbradedNucleons(), G4ParticleHPInterpolator::GetBinIntegral(), G4NeutronInelasticCrossSection::GetCrossSection(), G4PomeronCrossSection::GetCutPomeronProbability(), G4NuclearFermiDensity::GetDeriv(), G4NuclNuclDiffuseElastic::GetDiffElasticProb(), G4DiffuseElastic::GetDiffElasticProb(), G4NuclNuclDiffuseElastic::GetDiffElasticSumProb(), G4DiffuseElastic::GetDiffElasticSumProb(), G4NuclNuclDiffuseElastic::GetDiffElasticSumProbA(), G4DiffuseElastic::GetDiffElasticSumProbA(), G4TripathiCrossSection::GetElementCrossSection(), G4PhotoNuclearCrossSection::GetElementCrossSection(), G4TripathiLightCrossSection::GetElementCrossSection(), G4PhotonEvaporation::GetEmissionProbability(), G4ElectroNuclearCrossSection::GetEquivalentPhotonEnergy(), G4ElectroNuclearCrossSection::GetEquivalentPhotonQ2(), G4NuclNuclDiffuseElastic::GetErfComp(), G4ChipsHyperonElasticXS::GetExchangeT(), G4ChipsPionPlusElasticXS::GetExchangeT(), G4ChipsAntiBaryonElasticXS::GetExchangeT(), G4ChipsPionMinusElasticXS::GetExchangeT(), G4NuclNuclDiffuseElastic::GetExpCos(), G4hhElastic::GetExpRatioF123(), G4NuclNuclDiffuseElastic::GetExpSin(), G4ElasticHadrNucleusHE::GetFt(), G4HadronNucleonXsc::GetHadronNucleonXscNS(), G4ComponentGGHadronNucleusXsc::GetHadronNucleonXscNS(), G4PWATotalXsecZ::GetInterpXsec(), G4LundStringFragmentation::GetLightConeZ(), G4ElasticHadrNucleusHE::GetLightFq2(), G4PomeronCrossSection::GetNondiffractiveProbability(), G4RPGInelastic::GetNormalizationConstant(), G4ComponentGGHadronNucleusXsc::GetNucleusRadius(), G4ComponentGGNuclNuclXsc::GetNucleusRadius(), G4ComponentGGNuclNuclXsc::GetNucleusRadiusGG(), G4ICRU73QOModel::GetOscillatorEnergy(), G4FTFParameters::GetProcProb(), G4ProtonInelasticCrossSection::GetProtonCrossSection(), G4ChipsHyperonElasticXS::GetPTables(), G4ChipsPionPlusElasticXS::GetPTables(), G4ChipsPionMinusElasticXS::GetPTables(), G4ChipsAntiBaryonElasticXS::GetPTables(), G4QuasiElRatios::GetQF2IN_Ratio(), G4NuclearFermiDensity::GetRadius(), G4NuclearShellModelDensity::GetRelativeDensity(), G4NuclearFermiDensity::GetRelativeDensity(), G4GoudsmitSaundersonTable::GetScreeningParam(), G4ChipsHyperonElasticXS::GetTabValues(), G4ChipsPionPlusElasticXS::GetTabValues(), G4ChipsAntiBaryonElasticXS::GetTabValues(), G4ChipsPionMinusElasticXS::GetTabValues(), G4PomeronCrossSection::GetTotalProbability(), G4ElectroNuclearCrossSection::GetVirtualFactor(), G4ParticleHPInterpolator::GetWeightedBinIntegral(), G4EMDissociationCrossSection::GetWilsonProbabilityForProtonDissociation(), G4ParticleHPMadlandNixSpectrum::GIntegral(), G4ElasticHadrNucleusHE::HadrNucDifferCrSec(), G4PomeronCrossSection::HardEikonal(), G4BraggIonModel::HeEffChargeSquare(), G4ElectroNuclearCrossSection::HighEnergyJ1(), G4ElectroNuclearCrossSection::HighEnergyJ2(), G4ElectroNuclearCrossSection::HighEnergyJ3(), G4Bessel::I0(), G4GEMProbability::I0(), G4Bessel::I1(), G4GEMProbability::I1(), G4GEMProbability::I2(), G4GEMProbability::I3(), G4LFission::init(), G4EmCorrections::Initialise(), G4NucleiModel::initializeCascad(), G4GoudsmitSaundersonTable::InitMoliereMSCParams(), G4ParticleHPVector::Integrate(), G4Bessel::K0(), G4Bessel::K1(), G4ParticleHPKallbachMannSyst::Kallbach(), G4PWATotalXsecZ::LoadPWATotalXsecZ(), G4ParticleHPInterpolator::LogarithmicLinear(), G4ParticleHPInterpolator::LogarithmicLogarithmic(), G4MuonVDNuclearModel::MakeSamplingTable(), G4MuPairProductionModel::MakeSamplingTables(), G4CompetitiveFission::MassDistribution(), G4ParticleHPFissionSpectrum::Maxwell(), MCGIDI_energy_sampleEvaporation(), MCGIDI_energy_sampleSimpleMaxwellianFission(), MCGIDI_KalbachMann_sampleEp(), G4DiffuseElastic::NeutronTuniform(), nf_amc_factorial(), nf_exponentialIntegral(), nf_incompleteGammaFunction(), nf_incompleteGammaFunctionComplementary(), G4eBremsstrahlungRelModel::Phi1(), G4Bessel::pI0(), G4Bessel::pI1(), G4RPGInelastic::Pmltpc(), G4AntiNeutronAnnihilationAtRest::Poisso(), G4DipBustGenerator::PolarAngle(), G4GammaConversionToMuons::PostStepDoIt(), G4Fissioner::potentialMinimization(), G4EvaporationProbability::ProbabilityDistributionFunction(), G4NuclNuclDiffuseElastic::ProfileFar(), G4NuclNuclDiffuseElastic::ProfileNear(), G4eBremsstrahlungRelModel::Psi1(), ptwXY_createGaussianCenteredSigma1(), ptwXY_createGaussianCenteredSigma1_2(), ptwXY_exp(), ptwXY_exp_s(), ptwXY_interpolatePoint(), ptwXY_LinLogToLinLin(), ptwXY_thicken(), G4RPGStrangeProduction::ReactionStage(), G4RPGTwoCluster::ReactionStage(), G4RPGTwoBody::ReactionStage(), G4RPGFragmentation::ReactionStage(), G4FTFModel::ReggeonCascade(), G4PreCompoundEmission::rho(), G4RPGReaction::Rotate(), G4UrbanMscModel::SampleCosineTheta(), G4DipBustGenerator::SampleDirection(), G4RayleighAngularGenerator::SampleDirection(), G4UrbanMscModel::SampleDisplacement(), G4UrbanMscModel::SampleDisplacementNew(), G4UniversalFluctuation::SampleFluctuations(), G4AntiNuclElastic::SampleInvariantT(), G4HadronElastic::SampleInvariantT(), G4EvaporationProbability::SampleKineticEnergy(), G4GEMChannel::SampleKineticEnergy(), G4GoudsmitSaundersonMscModel::SampleMSC(), G4VLongitudinalStringDecay::SampleQuarkPt(), G4WentzelVIModel::SampleScattering(), G4WentzelVIRelModel::SampleScattering(), G4LivermoreGammaConversionModelRC::SampleSecondaries(), G4LivermoreNuclearGammaConversionModel::SampleSecondaries(), G4HeatedKleinNishinaCompton::SampleSecondaries(), G4LivermoreGammaConversionModel::SampleSecondaries(), G4LivermoreComptonModel::SampleSecondaries(), G4LivermoreBremsstrahlungModel::SampleSecondaries(), G4SeltzerBergerModel::SampleSecondaries(), G4PolarizedComptonModel::SampleSecondaries(), G4KleinNishinaModel::SampleSecondaries(), G4KleinNishinaCompton::SampleSecondaries(), G4PairProductionRelModel::SampleSecondaries(), G4eBremsstrahlungRelModel::SampleSecondaries(), G4eBremParametrizedModel::SampleSecondaries(), G4eeToTwoGammaModel::SampleSecondaries(), G4MuPairProductionModel::SampleSecondaries(), G4MuBremsstrahlungModel::SampleSecondaries(), G4LowEPComptonModel::SampleSecondaries(), G4LowEPPolarizedComptonModel::SampleSecondaries(), G4ChargeExchange::SampleT(), G4GoudsmitSaundersonTable::Sampling(), G4QMDGroundStateNucleus::samplingMomentum(), G4QMDGroundStateNucleus::samplingPosition(), G4IonCoulombCrossSection::SetupTarget(), G4UrbanMscModel::SimpleScattering(), G4PomeronCrossSection::SoftEikonal(), G4ElectroNuclearCrossSection::SolveTheEquation(), stirf(), G4LundStringFragmentation::StopFragmenting(), G4BraggModel::StoppingPower(), G4BraggIonModel::StoppingPower(), G4EvaporationProbability::TotalProbability(), G4Clebsch::TriangleCoeff(), G4UrbanMscModel::UpdateCache(), G4PolarizationTransition::UpdatePolarizationToFinalState(), w6j1(), G4ParticleHPWattSpectrum::Watt(), G4Clebsch::Wigner6J(), G4Clebsch::WignerLittleD(), G4NucleiModel::zoneIntegralGaussian(), and G4NucleiModel::zoneIntegralWoodsSaxon().

+ Here is the call graph for this function:

G4float G4Expf ( G4float  initial_x)
inline

Exponential Function single precision.

Definition at line 230 of file G4Exp.hh.

References G4ExpConsts::C1F, G4ExpConsts::C2F, G4ExpConsts::fpfloor(), G4ExpConsts::LOG2EF, G4ExpConsts::MAXLOGF, G4ExpConsts::MINLOGF, n, G4ExpConsts::PX1expf, G4ExpConsts::PX2expf, G4ExpConsts::PX3expf, G4ExpConsts::PX4expf, G4ExpConsts::PX5expf, G4ExpConsts::PX6expf, G4ExpConsts::uint322sp(), x, and z.

+ Here is the call graph for this function:

void G4Expfv ( const uint32_t  size,
G4float const *__restrict__  iarray,
G4float *__restrict__  oarray 
)
void G4Expv ( const uint32_t  size,
G4double const *__restrict__  iarray,
G4double *__restrict__  oarray 
)