Empirical computations
JenaAtomicCalculator.Empirical.AbstractEmpiricalApproximation
— Typeabstract type Empirical.AbstractEmpiricalApproximation
... defines an abstract and a number of singleton types to deal with different line profiles, for instance, in a plasma.
+ GaussianProfile ... assumes a Gaussian line profile L^Gaussian (omega)
+ LorentzianProfile ... assumes a Lorentzian line profile L^Lorentzian (omega)
JenaAtomicCalculator.Empirical.Computation
— Typestruct Empirical.Computation
... defines a type for an empirical computation of various ionization and charge exchange processes.
+ name ::String ... A name associated to the computation.
+ nuclearModel ::Nuclear.Model ... Model, charge and parameters of the nucleus.
+ grid ::Radial.Grid ... The radial grid to be used for the computation.
+ configs ::Array{Configuration,1} ... A list of non-relativistic configurations.
+ settings ::Basics.AbstractEmpiricalSettings ... Provides the settings for the selected computations.
JenaAtomicCalculator.Empirical.Computation
— MethodEmpirical.Computation(comp::Empirical.Computation;
name=.., nuclearModel=.., grid=.., configs=.., settings=..,
printout::Bool=false)
... constructor for modifying the given Empirical.Computation by 'overwriting' the previously selected parameters.
JenaAtomicCalculator.Empirical.Computation
— MethodEmpirical.Computation()
... constructor for an 'empty' instance::Empirical.Computation.
JenaAtomicCalculator.Basics.perform
— MethodBasics.perform(computation::Empirical.Computation)
... to set-up and perform an empirical computation that starts from a given nuclear model and set of configurations, and which is mainly controlled by its settings. The results are printed to screen but nothing is returned otherwise.
Basics.perform(computation::Empirical.Computation; output=true)
... to perform the same but to return the complete output in a dictionary; the particular output depends on the kind and specifications of the empirical computation but can easily accessed by the keys of this dictionary.
JenaAtomicCalculator.Empirical.autoionizationPlasmaRate
— MethodEmpirical.autoionizationPlasmaRate(iConf::Configuration, fConf::Configuration; flux::Distribution.AbstractPlasmaDistribution=SpectralFluxPlanck(), approx::Empirical.AbstractEmpiricalApproximation=Kramers1923(), printout::Bool=false)
... to estimate the autoionization plasma rate for a transition from iConf -> fConf by applying a given photon-flux distribution. A rate::Float64 is returned.
JenaAtomicCalculator.Empirical.bindingEnergy
— MethodEmpirical.bindingEnergy(Z::Int64, sh::Shell; data::PeriodicTable.AbstractEnergyData=Williams2000() )
... to estimate the binding) energy of the given shell for a neutral atom; these binding energies are taken from semi-empirical tabulations due to data by different data sets. An energy::Float64 > 0. is returned. ...... Perhaps, introduce an optional argument scaleLast::Bool to scale values, if no explicit binding energies are available.
JenaAtomicCalculator.Empirical.bindingEnergy
— MethodEmpirical.bindingEnergy(Z::Int64, sh::Shell, conf::Configuration; data::PeriodicTable.AbstractEnergyData=Williams2000())
... to evaluate the binding) energy of a shell electron if part of the given configuration. This procedure assumes that each missing electron (compared with the neutral system) adds 0.3 / n Hartree to the binding energy, where n is the principal quantum number of the shell. It also requires that shell is occupied in the given configuration. An energy::Float64 is returned.
JenaAtomicCalculator.Empirical.bindingEnergy
— MethodEmpirical.bindingEnergy(Z::Int64, subsh::Subshell; data::PeriodicTable.AbstractEnergyData=Williams2000() )
... to estimate the binding) energy of the given subshell for a neutral atom; these binding energies are taken from semi-empirical tabulations due to data by different data sets. An energy::Float64 > 0. is returned.
JenaAtomicCalculator.Empirical.eieCollisionStrength
— MethodEmpirical.eieCollisionStrength(energy::Float64, iConf::Configuration, fConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=Regemorter1962(), printout::Bool=false)
... to estimate the EIE collision strength for a transition from iConf -> fConf by applying a given approximation. A cs::Float64 is returned.
JenaAtomicCalculator.Empirical.eieCrossSection
— MethodEmpirical.eieCrossSection(energy::Float64, iConf::Configuration, fConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=Regemorter1962(), printout::Bool=false)
... to estimate the EIE cross section for a transition from iConf -> fConf by applying a given approximation. A cs::Float64 is returned.
JenaAtomicCalculator.Empirical.eiePlasmaRateAlpha
— MethodEmpirical.eiePlasmaRateAlpha(temp::Float64, iConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=Axelrod1980(), printout::Bool=false)
... to estimate the EIE plasma rate coefficient alpha for an ion in the initial level iConf by applying a given approximation. An alpha::Float64 is returned.
JenaAtomicCalculator.Empirical.eiiCollisionStrength
— MethodEmpirical.eiiCollisionStrength(energy::Float64, iConf::Configuration, fConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=Regemorter1962(), printout::Bool=false)
... to estimate the EII collision strength for a transition from iConf -> fConf by applying a given approximation. A cs::Float64 is returned.
JenaAtomicCalculator.Empirical.ionizationPotential
— MethodEmpirical.ionizationPotential(Z::Int64, conf::Configuration)
... to evaluate the ionization potential I_p that is needed to ionize a valence electron from the given configuration. An energy::Float64 is returned.
JenaAtomicCalculator.Empirical.meanCharge
— MethodEmpirical.meanCharge(Z::Int64, subshell::Subshell, conf::Configuration)
... to estimate the mean charge Z as seen by an electron in subshell for an ion with the given configuation. An charge::Float64 is returned.
JenaAtomicCalculator.Empirical.photoemissionSpontaneousRate
— MethodEmpirical.photoemissionSpontaneousRate(iConf::Configuration, fConf::Configuration; printout::Bool=false)
... to estimate the photoemission rate for a transition from iConf -> fConf. A rate::Float64 is returned.
JenaAtomicCalculator.Empirical.photoexcitationCrossSection
— MethodEmpirical.photoexcitationCrossSection(iConf::Configuration, fConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=Kramers1923(), printout::Bool=false)
... to estimate the photoexcitation cross section for a transition from iConf -> fConf by means of Kramer (1923) approximation. A cs::Float64 is returned.
JenaAtomicCalculator.Empirical.photoexcitationCrossSection
— MethodEmpirical.photoionizationCrossSection(omega::Float64, iConf::Configuration, fConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=Kramers1923(), printout::Bool=false)
... to estimate the photoionization cross section for a transition from iConf –> fConf by means of Kramer (1923) approximation. A cs::Float64 is returned.
JenaAtomicCalculator.Empirical.photoexcitationPlasmaRate
— MethodEmpirical.photoexcitationPlasmaRate(iConf::Configuration, fConf::Configuration; flux::Distribution.AbstractPlasmaDistribution=SpectralFluxPlanck(), profile::Distribution.AbstractLineProfile=GaussianProfile(), printout::Bool=false)
... to estimate the photoexcitation plasma for a transition from iConf -> fConf by applying a given photon-flux distribution and line profile. A rate::Float64 is returned.
JenaAtomicCalculator.Empirical.photoionizationPlasmaRate
— MethodEmpirical.photoionizationPlasmaRate(iConf::Configuration, fConf::Configuration; flux::Distribution.AbstractPlasmaDistribution=SpectralFluxPlanck(), approx::Empirical.AbstractEmpiricalApproximation=Kramers1923(), printout::Bool=false)
... to estimate the photoexcitation plasma for a transition from iConf -> fConf by applying a given photon-flux distribution and line profile. A rate::Float64 is returned.
JenaAtomicCalculator.Empirical.photorecombinationPlasmaRateAlpha
— MethodEmpirical.photorecombinationPlasmaRateAlpha(temp::Float64, iConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=Axelrod1980(), printout::Bool=false)
... to estimate the photorecombination plasma rate coefficient alpha for an ion in the initial level iConf by applying a given approximation. An alpha::Float64 is returned.
JenaAtomicCalculator.Empirical.stoppingPowerElectronBethe1931
— MethodEmpirical.stoppingPowerElectronBethe1931(energy::Float64, nRatio::Float64, omegaPlasma::Float64; printout::Bool=false)
... to evaluate the stopping power - d E / dx of an electron with kinetic energy in a plasma with nRatio = nelectrons / nions and for the plasma frequency omegaPlasma. A sPower::Float64 is returned. If printout = true, the value is printed in user-defined values along with short other explanations.
JenaAtomicCalculator.Empirical.stoppingPowerElectronBohr1913
— MethodEmpirical.stoppingPowerElectronBohr1913(energy::Float64, nRatio::Float64, omegaPlasma::Float64; printout::Bool=false)
... to evaluate the stopping power - d E / dx of an electron with kinetic energy in a plasma with nRatio = nelectrons / nions and for the plasma frequency omegaPlasma. A sPower::Float64 is returned. If printout = true, the value is printed in user-defined values along with short other explanations.
JenaAtomicCalculator.Empirical.threeBRCrossSection
— MethodEmpirical.threeBRCrossSection(iConf::Configuration, fConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=Kramers1923(), printout::Bool=false)
... to estimate the TBR cross section for a transition from iConf –> fConf by means of Kramer (1923) approximation. A cs::Float64 is returned.
JenaAtomicCalculator.Empirical.threeBRPlasmaRateAlpha
— MethodEmpirical.threeBRPlasmaRateAlpha(temp::Float64, iConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=Axelrod1980(), printout::Bool=false)
... to estimate the 3BR plasma rate coefficient alpha for an ion in the initial level iConf by applying a given approximation. An alpha::Float64 is returned.
JenaAtomicCalculator.Empirical.totalEnergy
— MethodEmpirical.totalEnergy(Z::Int64, conf::Configuration; data::PeriodicTable.AbstractEnergyData=Nist2025() )
... to estimate the total energy of the given configuration for an atom or ions with nuclear charge Z; this total energy is determined either from the (negative) sum of all binding energies or the (negative) sum of ionization potentials that are needed to remove the remaining electrons from the configuration. A warning is issued if electrons occur in excited shells with regard to the ground configuration of the neutral atom. An energy::Float64 is returned.
Note: This is an estimate of the total energy which need not to be so accurate.
Semi-empirical estimates
JenaAtomicCalculator.Semiempirical.AtomicCrossSection
— Type@enum AtomicCrossSection
... defines a enumeration for (supported) cross section estimation.
JenaAtomicCalculator.Semiempirical.AtomicCrossSection
— MethodSemiempirical.AtomicCrossSection(sa::String)
... constructor for a given String.
JenaAtomicCalculator.Semiempirical.estimate
— MethodSemiempirical.estimate("binding energy: ...", Z::Float64, conf::Configuration)
... to provide an approximate binding energy of a given electron configuration. This estimate adds the binding energies of all subshell, taken frogm a semi-empirical tabulations by Williams et al., https://userweb.jlab.org/~gwyn/ebindene.html. If no binding energy is provided by this table, it simply scales the binding energies (e/ 12.) from the next lower shell of the same symmetry No relaxation effects are included if several hole states occur with regard to the neutral atom. An energy::Float64 in Hartree is returned.
JenaAtomicCalculator.Semiempirical.estimate
— MethodSemiempirical.estimate("binding energy", Z::Int64, sh::Subshell; useLarkins::Bool=false)
... to provide the binding energy of a subshell electron, taken from a semi-empirical tabulations by Williams et al. (2000), https://userweb.jlab.org/~gwyn/ebindene.html or Larkins (1977). A energy::Float64 in Hartree is returned.
JenaAtomicCalculator.Semiempirical.estimate
— MethodSemiempirical.estimate("ionization potential: inner-shell", shell::Shell, Z::Int64)
... to estimate the ionization potential = mean binding energy of an electron in the given shell; an energy value::Float64 is returned. These ionization potentials are taken from the tabulation ....
JenaAtomicCalculator.Semiempirical.estimateBindingEnergies
— MethodSemiempirical.estimateBindingEnergies(Z::Float64, coreConf::Configuration, nRange::UnitRange{Int64}, l::Int64)
... to estimate the binding energies of the high-n shells with n = nRange and orbital angular momentum l for a (multiply-charged) ion with nuclear charge Z and core configuration coreConfiguration. A list of energies::Array{Float64} [in Hartree] is returned.
JenaAtomicCalculator.Semiempirical.estimateBindingEnergies
— MethodSemiempirical.estimateBindingEnergies(Z::Float64, coreConf::Configuration, nRange::UnitRange{Int64})
... to estimate the binding energies of the high-n shells with n = nRange for a (multiply-charged) ion with nuclear charge Z and core configuration coreConfiguration. A list of energies::Array{Float64} [in Hartree] is returned.
JenaAtomicCalculator.Semiempirical.estimateRadialExpectation
— MethodSemiempirical.estimateRadialExpectation(Z::Float64, coreConf::Configuration, nRange::UnitRange{Int64}, l::Int64)
... to estimate the radial extent (r-expectation value) of the high-n shells with n = nRange and orbital angular momentum l for a (multiply-charged) ion with nuclear charge Z and core configuration coreConfiguration. A list of radii::Array{Float64} [in a_o] is returned.