Alkali atom functions#
- class AlkaliAtom(preferQuantumDefects=True, cpp_numerov=True)[source]#
Implements general calculations for alkali atoms.
This abstract class implements general calculations methods.
- Parameters
preferQuantumDefects (bool) – Use quantum defects for energy level calculations. If False, uses NIST ASD values where available. If True, uses quantum defects for energy calculations for principal quantum numbers equal or above
minQuantumDefectN
which is specified for each element separately. For principal quantum numbers below this value, NIST ASD values are used, since quantum defects don’t reproduce well low-lying states. Default is True.cpp_numerov (bool) – should the wavefunction be calculated with Numerov algorithm implemented in C++; if False, it uses pure Python implementation that is much slower. Default is True.
Elementary properties#
Methods
getPressure
(temperature)Vapour pressure (in Pa) at given temperature
getNumberDensity
(temperature)Atom number density at given temperature
getAverageInteratomicSpacing
(temperature)Returns average interatomic spacing in atomic vapour
getAverageSpeed
(temperature)Average (mean) speed at a given temperature
Attributes
Nuclear spin
Atomic number
relative isotope abundance
Human-readable element name
principal quantum number for the ground state
levels that are for smaller principal quantum number (n) than ground level, but are above in energy due to angular part
atomic mass in kg
melting point of the element at standard conditions
Internal structure of atom states#
Methods
corePotential
(l, r)core potential felt by valence electron
effectiveCharge
(l, r)effective charge of the core felt by valence electron
potential
(l, s, j, r)returns total potential that electron feels
radialWavefunction
(l, s, j, stateEnergy, ...)Radial part of electron wavefunction
Attributes
Model potential parameters fitted from experimental observations for different l (electron angular momentum)
Model potential parameters fitted from experimental observations for different l (electron angular momentum)
Model potential parameters fitted from experimental observations for different l (electron angular momentum)
Model potential parameters fitted from experimental observations for different l (electron angular momentum)
Model potential parameters fitted from experimental observations for different l (electron angular momentum)
Core polarizability
swich - should the wavefunction be calculated with Numerov algorithm implemented in C++
Energies of atom states#
Methods
getEnergy
(n, l, j[, s])Energy of the level relative to the ionisation level (in eV)
getZeemanEnergyShift
(l, j, mj, magneticFieldBz)Retuns linear (paramagnetic) Zeeman shift.
getQuantumDefect
(n, l, j[, s])Quantum defect of the level.
breitRabi
(n, l, j, B)Returns exact Zeeman energies math:E_z for states \(\vert F,m_f\rangle\) in the \(\ell,j\) manifold via exact diagonalisation of the Zeeman interaction \(\mathcal{H}_z\) and the hyperfine interaction \(\mathcal{H}_\mathrm{hfs}\) given by equations
Attributes
Nuclear g-factor
Electron Orbital g-factor
file cotaining data on hyperfine structure (magnetic dipole A and magnetic quadrupole B constnats).
location of stored NIST values of measured energy levels in eV
state energies from NIST values sEnergy [n,l] = state energy for n, l, j = l-1/2 sEnergy [l,n] = state energy for j = l+1/2
Contains list of modified Rydberg-Ritz coefficients for calculating quantum defects for [[ \(S_{1/2},P_{1/2},D_{3/2},F_{5/2}\)], [ \(S_{1/2},P_{3/2},D_{5/2},F_{7/2}\)]]."""
minimal quantum number for which quantum defects can be used; uses measured energy levels otherwise
Transitions between states#
Methods
getDipoleMatrixElement
(n1, l1, j1, mj1, n2, ...)Dipole matrix element \(\langle n_1 l_1 j_1 m_{j_1} |e\mathbf{r}|\ n_2 l_2 j_2 m_{j_2}\rangle\) in units of \(a_0 e\)
getDipoleMatrixElementHFS
(n1, l1, j1, f1, ...)Dipole matrix element for hyperfine structure resolved transitions \(\langle n_1 l_1 j_1 f_1 m_{f_1} |e\mathbf{r}|\ n_2 l_2 j_2 f_2 m_{f_2}\rangle\) in units of \(a_0 e\)
getTransitionWavelength
(n1, l1, j1, n2, l2, j2)Calculated transition wavelength (in vacuum) in m.
getTransitionFrequency
(n1, l1, j1, n2, l2, j2)Calculated transition frequency in Hz
getRabiFrequency
(n1, l1, j1, mj1, n2, l2, ...)Returns a Rabi frequency for resonantly driven atom in a center of TEM00 mode of a driving field
getRabiFrequency2
(n1, l1, j1, mj1, n2, l2, ...)Returns a Rabi frequency for resonant excitation with a given electric field amplitude
getStateLifetime
(n, l, j[, temperature, ...])Returns the lifetime of the state (in s)
getTransitionRate
(n1, l1, j1, n2, l2, j2[, ...])Transition rate due to coupling to vacuum modes (black body included)
getReducedMatrixElementJ_asymmetric
(n1, l1, ...)Reduced matrix element in \(J\) basis, defined in asymmetric notation.
getReducedMatrixElementJ
(n1, l1, j1, n2, l2, j2)Reduced matrix element in \(J\) basis (symmetric notation)
getReducedMatrixElementL
(n1, l1, j1, n2, l2, j2)Reduced matrix element in \(L\) basis (symmetric notation)
getRadialMatrixElement
(n1, l1, j1, n2, l2, j2)Radial part of the dipole matrix element
getQuadrupoleMatrixElement
(n1, l1, j1, n2, ...)Radial part of the quadrupole matrix element
getC6term
(n, l, j, n1, l1, j1, n2, l2, j2[, s])C6 interaction term for the given two pair-states
getC3term
(n, l, j, n1, l1, j1, n2, l2, j2[, s])C3 interaction term for the given two pair-states
getEnergyDefect
(n, l, j, n1, l1, j1, n2, l2, j2)Energy defect for the given two pair-states (one of the state has two atoms in the same state)
getEnergyDefect2
(n, l, j, nn, ll, jj, n1, ...)Energy defect for the given two pair-states
Updates the file with pre-calculated dipole matrix elements.
getRadialCoupling
(n, l, j, n1, l1, j1[, s])Returns radial part of the coupling between two states (dipole and quadrupole interactions only)
getLiteratureDME
(n1, l1, j1, n2, l2, j2[, s])Returns literature information on requested transition.
getSphericalMatrixElementHFStoFS
(j1, f1, ...)Spherical matrix element for transition from hyperfine resolved state to unresolved fine-structure state \(\langle f,m_f \vert\mu_q\vert j',m_j'\rangle\) in units of \(\langle j\vert\vert\mu\vert\vert j'\rangle\)
getDipoleMatrixElementHFStoFS
(n1, l1, j1, ...)Dipole matrix element for transition from hyperfine resolved state to unresolved fine-structure state \(\langle n_1 l_1 j_1 f_1 m_{f_1} |e\mathbf{r}|\ n_2 l_2 j_2 m_{j_2}\rangle\) in units of \(a_0 e\)
getMagneticDipoleMatrixElementHFS
(l, j, f1, ...)Magnetic dipole matrix element \(\langle f_1,m_{f_1} \vert \mu_q \vert f_2,m_{f_2}\rangle\) for transitions from \(\vert f_1,m_{f_1}\rangle\rightarrow\vert f_2,m_{f_2}\rangle\) within the same \(n,\ell,j\) state in units of \(\mu_B B_q\).
getHFSCoefficients
(n, l, j[, s])Returns hyperfine splitting coefficients for state \(n\), \(l\), \(j\).
getHFSEnergyShift
(j, f, A[, B, s])Energy shift of HFS from centre of mass \(\Delta E_\mathrm{hfs}\)
getBranchingRatio
(jg, fg, mfg, je, fe, mfe)Branching ratio for decay from \(\vert j_e,f_e,m_{f_e} \rangle \rightarrow \vert j_g,f_g,m_{f_g}\rangle\)
getSaturationIntensity
(ng, lg, jg, fg, mfg, ...)Saturation Intensity \(I_\mathrm{sat}\) for transition \(\vert j_g,f_g,m_{f_g}\rangle\rightarrow\vert j_e,f_e,m_{f_e}\rangle\) in units of \(\mathrm{W}/\mathrm{m}^2\).
getSaturationIntensityIsotropic
(ng, lg, jg, ...)Isotropic Saturation Intensity \(I_\mathrm{sat}\) for transition \(f_g\rightarrow f_e\) averaged over all polarisations in units of \(\mathrm{W}/\mathrm{m}^2\).
groundStateRamanTransition
(Pa, wa, qa, Pb, ...)Returns two-photon Rabi frequency \(\Omega_R\), differential AC Stark shift \(\Delta_\mathrm{AC}\) and probability to scatter a photon during a \(\pi\)-pulse \(P_\mathrm{sc}\) for two-photon ground-state Raman transitions from \(\vert f_g,m_{f_g}\rangle\rightarrow\vert nL_{j_r} j_r,m_{j_r}\rangle\) via an intermediate excited state \(n_e,\ell_e,j_e\).
twoPhotonRydbergExcitation
(Pp, wp, qp, Pc, ...)Returns two-photon Rabi frequency \(\Omega_R\), ground AC Stark shift \(\Delta_{\mathrm{AC}_g}\), Rydberg state AC Stark shift \(\Delta_{\mathrm{AC}_r}\) and probability to scatter a photon during a \(\pi\)-pulse \(P_\mathrm{sc}\) for two-photon excitation from \(\vert f_h,m_{f_g}\rangle\rightarrow \vert j_r,m_{j_r}\rangle\) via intermediate excited state
getLandegj
(l, j[, s])Lande g-factor \(g_J\simeq 1+\frac{j(j+1)+s(s+1)-l(l+1)}{2j(j+1)}\)
getLandegjExact
(l, j[, s])Lande g-factor \(g_J=g_L\frac{j(j+1)-s(s+1)+l(l+1)}{2j(j+1)}+g_S\frac{j(j+1)+s(s+1)-l(l+1)}{2j(j+1)}\)
getLandegf
(l, j, f[, s])Lande g-factor \(g_F\simeq g_J\frac{f(f+1)-I(I+1)+j(j+1)}{2f(f+1)}\)
getLandegfExact
(l, j, f[, s])Lande g-factor \(g_F\) \(g_F=g_J\frac{f(f+1)-I(I+1)+j(j+1)}{2f(f+1)}+g_I\frac{f(f+1)+I(I+1)-j(j+1)}{2f(f+1)}\)
breitRabi
(n, l, j, B)Returns exact Zeeman energies math:E_z for states \(\vert F,m_f\rangle\) in the \(\ell,j\) manifold via exact diagonalisation of the Zeeman interaction \(\mathcal{H}_z\) and the hyperfine interaction \(\mathcal{H}_\mathrm{hfs}\) given by equations
Attributes
Filename of the additional literature source values of dipole matrix elements.
location of hard-disk stored dipole matrix elements
location of hard-disk stored dipole matrix elements