Ionisation.jl

Luna.Ionisation.IonRateADKType
IonRateADK(ionpot::Float64, threshold=true)
IonRateADK(material::Symbol)

Ionisation rate based on the ADK formula. If threshold is true, use ADK_threshold to avoid calculation below floating-point precision. If cycle_average is true, calculate the cycle-averaged ADK ionisation rate instead.

source
Luna.Ionisation.IonRatePPTType
IonRatePPT(ionpot::Float64, λ0, Z, l; kwargs...)

PPT ionisation rate for a state with ionisation potential ionpot, when driven at wavelength λ0, also given charge state Z and angular momentum l

Keyword arguments

  • sum_tol::Number: Relative tolerance used to truncate the infinite sum. Defaults to 1e-6.
  • cycle_average::Bool: If true, calculate the cycle-averaged rate. Defaults to false.
  • sum_integral::Bool: whether to approximate the infinite sum in the PPT rate equation with an integral (this neglects the multiphoton thresholds).
  • Δα::Number: polarisability difference between the ground state and the cation (in SI units) to calculate the Stark shift of the ground-state energy levels. Defaults to 0.
  • α_ion::Number: polarisability of the cation (in SI units) to calculate the dipole correction to the rate. Defaults to 0.
  • msum::Bool: for l ≠ 0, whether or not to sum over different m states. Defaults to true.
  • Cnl::Real : Pre-calculated Cₙₗ constant. If not given, defaults to the approximate expression from the PPT papers.
  • occupancy: Occupancy of the state(s) from which ionisation is considered. Defaults to 2 for a state with two electrons (spin up/down).

References

[1] Ilkov, F. A., Decker, J. E. & Chin, S. L. Ionization of atoms in the tunnelling regime with experimental evidence using Hg atoms. Journal of Physics B: Atomic, Molecular and Optical Physics 25, 4005–4020 (1992)

[2] Bergé, L., Skupin, S., Nuter, R., Kasparian, J. & Wolf, J.-P. Ultrashort filaments of light in weakly ionized, optically transparent media. Rep. Prog. Phys. 70, 1633–1713 (2007) (Appendix A)

[3] A. Couairon and A. Mysyrowicz, "Femtosecond filamentation in transparent media," Physics Reports 441(2–4), 47–189 (2007).

source
Luna.Ionisation.IonRatePPTMethod
IonRatePPT(material::Symbol, λ0; kwargs...)

PPT ionisation rate for the given material when driven at wavelength λ0.

Keyword arguments

  • stark_shift::Bool: whether to include the Stark shift
  • dipole_corr::Bool: whether to include the dipole correction factor

Other keyword arguments are identical to IonRatePPT(ionpot::Float64, λ0, Z, l; kwargs...)

source
Luna.Ionisation.IonRatePPTAccelMethod
IonRatePPTAccel(material::Symbol, λ0; kwargs...)
IonRatePPTAccel(ionpot::Float64, λ0, Z, l; kwargs...)
IonRatePPTAccel(E, rate)

Create a cached (saved) interpolated PPT ionisation rate function. If a saved lookup table exists, load this rather than recalculate.

Keyword arguments

  • N::Int: Number of samples with which to create the CSpline interpolant.
  • Emax::Number: Maximum field strength to include in the interpolant.
  • cache::Bool: Whether to save the pre-calculated rate to a file
  • cachedir::String: Path to the directory where the cache should be stored and loaded from. Defaults to HOME/.luna/pptcache

Other keyword arguments are passed on to IonRatePPT

source
Luna.Ionisation.ADK_thresholdMethod
ADK_threshold(ionpot)

Determine the lowest electric field strength at which the ADK ionisation rate for the ionisation potential ionpot is non-zero to within 64-bit floating-point precision.

source
Luna.Ionisation.ionfracMethod
ionfrac(rate, E, δt)

Given an ionisation rate function rate and an electric field array E sampled with time spacing δt, calculate the ionisation fraction as a function of time on the same time axis.

The function rate should have the signature rate!(out, E) and place its results into out, like the functions returned by e.g. IonRateADK or IonRatePPTCached.

source
Luna.Ionisation.ionrate_ADKMethod
ionrate_ADK(IP_or_material, E::Number; kwargs...) -> Float64

Calculate the ionisation rate based on the ADK model.

Arguments

  • IP_or_material: Ionisation potential (Float64) or gas species (Symbol)
  • E::Number: Electric field in SI units (V/M)

Keywords

  • kwargs...: See IonRateADK
source
Luna.Ionisation.keldyshMethod
keldysh(material, λ, E)

Calculate the Keldysh parameter for the given material at wavelength λ and electric field strength E.

source
Luna.Ionisation.φMethod
φ(m, x)

Calculate the φ function for the PPT ionisation rate.

Note that wm(x) in [1] and φm(x) in [2] look slightly different but are in fact identical.

source