A small library of routines for calculating interesting quantities useful in Atomic Physics and Ultrafast Optics.
The HP42s raw
files are generated by typing
rake
in a command line near you. Requires Ruby and Perl to work. The
raw
files are created in the subfolder build/raw/
. For
convenience, they are all concatenated together into a bundled raw
file called build/42s-atomic.raw
, which, when loaded, imports all
the routines in one fell swoop.
To translate from text format to raw
files, the txt2raw.pl by
Vini Matangrano is used.
LELEV
- Load first ionization energies (in eV) into a matrix
named
ELEV
. (Data source: NIST) LCONST
- Load constants useful for atomic units, etc. See constants.yaml for which constants are defined.
OMEGAU
- Given a wavelength λ in SI units, calculate the
angular frequency ω = 2πc₀/λ, storing the result in
atomic units in the variable
OMEGAU
and in electronvolts inOMEGAEV
. ATOMIP
- Given an atomic number Z, store the ionization
potential Iₚ (in atomic units) in the variable
ATOMIP
. UP
- Calculate the ponderomotive potential Uₚ = I/4ω² from the
field intensity I and the angular frequency ω (all in
atomic units; uses the subroutine
OMEGAU
). HHGCUT
- Calculate the classical cut-off in HHG, Wₖ₋ₘₐₓ =
3.17Uₚ + Iₚ given an intensity, a wavelength and an
atomic number, and store the result as
CUTOFF
- atomic units,
CUTOEV
- electronvolts,
CUTOFQ
- harmonic orders (i.e. Wₖ₋ₘₐₓ/ω).
(uses the subroutines
ATOMIP
andUP
). HHGEXC
- Calculate the typical excursion of an electron in HHG,
given by <x> = E/ω², where the electric field
amplitude E = √I. The result is stored in the
variables
EXCAU
andEXCSI
in Bohr radii and metres, respectively (uses the subroutineUP
). KELDYSH
- Calculate the Keldysh parameter γ = √(Iₚ/2Uₚ) and
stores the result in the variable
GAMMA
(uses the subroutinesATOMIP
andUP
).
These routines are only tested using Free42, as I don’t own a real HP42s device.