Empirical computations
JenaAtomicCalculator.Empirical.AbstractEmpiricalApproximation — Type
abstract 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 — Type
struct 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 — Method
Empirical.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 — Method
Empirical.Computation() ... constructor for an 'empty' instance::Empirical.Computation.
JenaAtomicCalculator.Empirical.GivenEinsteinA — Type
struct GivenEinsteinA <: Empirical.AbstractEmpiricalApproximation ... to communicate an externally given Einstein-A value, together with the multipole and energy of the transition i –> f.
+ multipole ::EmMultipole ... Multipole of the transition.
+ energy ::Float64 ... Energy of transition.
+ rate ::Float64 ... Einstein-A value.JenaAtomicCalculator.Basics.perform — Method
Basics.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.bindingEnergy — Method
Empirical.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 — Method
Empirical.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 — Method
Empirical.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.ionizationPotential — Method
Empirical.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 — Method
Empirical.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.photodeexcitationPlasmaRatePerIon — Method
Empirical.photodeexcitationPlasmaRatePerIon(dist::Distribution.AbstractPhotonDistribution, iConf::Configuration, fConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=UsingJAC(), printout::Bool=false)
... to estimate the total photodeexcitation plasma rate R^(PD: total, per ion) (T; i -> f) for a transition from
iConf -> fConf by applying a given photon distribution dist. A rate::Float64 is returned.JenaAtomicCalculator.Empirical.photoemissionEinsteinA — Method
Empirical.photoemissionEinsteinA(iConf::Configuration, fConf::Configuration, approx::Empirical.ScaledHydrogenic; printout::Bool=false) ... to estimate empirically the Einstein-A value for a transition from iConf -> fConf by using a simple hydrogenic scaling with an effective nuclear charge. A named triple (multipole::EmMultipole=, energy::Float64=, rate::Float64=) is returned.
JenaAtomicCalculator.Empirical.photoemissionEinsteinA — Method
Empirical.photoemissionEinsteinA(iConf::Configuration, fConf::Configuration, approx::Empirical.UsingJAC; printout::Bool=false) ... to estimate empirically the Einstein-A value for a transition from iConf -> fConf by using simple JAC computations of transition and Einstein rates. A named triple (multipole::EmMultipole=, energy::Float64=, rate::Float64=) is returned.
JenaAtomicCalculator.Empirical.photoemissionEinsteinA — Method
Empirical.photoemissionEinsteinA(approx::Empirical.GivenEinsteinA; printout::Bool=false) ... to simply return the Einstein-A value for the given transition. A named (multipole::EmMultipole=, energy::Float64=, rate::Float64=) is returned.
JenaAtomicCalculator.Empirical.photoexcitationPlasmaRatePerIon — Method
Empirical.photoexcitationPlasmaRatePerIon(dist::Distribution.AbstractPhotonDistribution, iConf::Configuration, fConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=UsingJAC(), printout::Bool=false)
... to estimate the photoexcitation plasma rate per ion R^(PX: per ion) (T; i -> f) for a transition from
iConf -> fConf by applying a given photon distribution dist. A rate::Float64 is returned.JenaAtomicCalculator.Empirical.photoionizationCrossSection — Method
Empirical.photoionizationCrossSection(omega::Float64, iConf::Configuration, fConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=ScaledHydrogenic(), printout::Bool=false)
... to estimate empirically the PI cross section for a transition from iConf -> fConf by applying some simple approximation
as determined by approx. For printout=true, basic information are printed about the input parameters, approximation
as well as the results in user-defined units. A cs::Float64 [in a.u.] is returned.JenaAtomicCalculator.Empirical.photoionizationCrossSection — Method
Empirical.photoionizationCrossSection(omegas::Array{Float64,1}, iConf::Configuration, fConf::Configuration, approx::Empirical.ScaledHydrogenic; printout::Bool=false) ... to estimate empirically the photoionization cross sections for a transition from iConf -> fConf by using the binding energy (ionization potential) of the ionized shell from JAC and Kramer's (1923) empirical formula. A css::Array{Float64,1} [a.u.] is returned.
JenaAtomicCalculator.Empirical.photoionizationCrossSection — Method
Empirical.photoionizationCrossSection(omegas::Array{Float64,1}, iConf::Configuration, fConf::Configuration, approx::Empirical.UsingJAC; printout::Bool=false) ... to estimate empirically the photoionization cross section for a transition from iConf -> fConf by using the binding energy (ionization potential) of the ionized shell from JAC and Kramer's (1923) empirical formula. A cs::Float64 is returned.
JenaAtomicCalculator.Empirical.photoionizationPlasmaAlpha — Method
Empirical.photoionizationPlasmaAlpha(dist::Distribution.AbstractPhotonDistribution, iConf::Configuration, fConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=ScaledHydrogenic(), printout::Bool=false)
... to estimate empirically the PI plasma rate coefficient alpha^(PI) for a transition from iConf -> fConf by applying some simple
approximation as determined by approx. For printout=true, basic information are printed about the approximation as well
as the results. An alpha::Float64 is returned.JenaAtomicCalculator.Empirical.photorecombinationCrossSection — Method
Empirical.photorecombinationCrossSection(energy::Float64, iConf::Configuration, fConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=ScaledHydrogenic(), printout::Bool=false)
... to estimate empirically the PR cross section for a transition from iConf -> fConf by applying some simple approximation
as determined by approx. For printout=true, basic information are printed about the input parameters, approximation
as well as the results in user-defined units. A cs::Float64 [in a.u.] is returned.JenaAtomicCalculator.Empirical.photorecombinationCrossSection — Method
Empirical.photorecombinationCrossSection(energies::Array{Float64,1}, iConf::Configuration, fConf::Configuration, approx::Empirical.ScaledHydrogenic; printout::Bool=false) ... to estimate empirically the (spontaneous) photorecombination cross section for a transition from iConf -> fConf by using the Einstein-Milne relation and the binding energy (ionization potential) of the ionized shell from JAC and Kramer's (1923) empirical formula.A css::Array{Float64,1} [a.u.] is returned.
JenaAtomicCalculator.Empirical.photorecombinationCrossSection — Method
Empirical.photorecombinationCrossSection(energies::Array{Float64,1}, iConf::Configuration, fConf::Configuration, approx::Empirical.UsingJAC; printout::Bool=false) ... to estimate empirically the (spontaneous) photorecombination cross section for a transition from iConf -> fConf by using the Einstein-Milne relation and the binding energy (ionization potential) of the ionized shell from JAC and Kramer's (1923) empirical formula.A css::Array{Float64,1} [a.u.] is returned.
JenaAtomicCalculator.Empirical.photorecombinationPlasmaAlpha — Method
Empirical.photorecombinationPlasmaAlpha(dist::Distribution.AbstractElectronDistribution, iConf::Configuration, fConf::Configuration; approx::Empirical.AbstractEmpiricalApproximation=ScaledHydrogenic(), printout::Bool=false) ... to estimate empirically the spontaneous PR plasma rate coefficient alpha^(PR: spontaneous) for a transition from iConf -> fConf by applying some simple approximation as determined by approx. For printout=true, basic information are printed about the approximation as well as the results. An alpha::Float64 is returned.
JenaAtomicCalculator.Empirical.stoppingPowerElectronBethe1931 — Method
Empirical.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 — Method
Empirical.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.totalEnergy — Method
Empirical.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 — Method
Semiempirical.AtomicCrossSection(sa::String) ... constructor for a given String.
JenaAtomicCalculator.Semiempirical.estimate — Method
Semiempirical.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 — Method
Semiempirical.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 — Method
Semiempirical.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 — Method
Semiempirical.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 — Method
Semiempirical.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 — Method
Semiempirical.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.