Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Log inSign up
Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Blog
Job Board
Q3AS

© 2026 Aqora Quantum S.A.S.

TermsPrivacyLegal Notice

arXiv:1708.05305 · Computer Physics Communications

ElecSus: Extension to arbitrary geometry magneto-optics

James Keaveney, Charles S. Adams, Ifan G. Hughes

Published Dec 11, 2017• 58 citations
arXivHTMLPDF

Abstract

We present a major update to ElecSus, a computer program and underlying model to calculate the electric susceptibility of an alkali-metal atomic vapour. Knowledge of the electric susceptibility of a medium is essential to predict its absorptive and dispersive properties. In this version we implement several changes which significantly extend the range of applications of ElecSus, the most important of which is support for non-axial magnetic fields (i.e. fields which are not aligned with the light propagation axis). Supporting this change requires a much more general approach to light propagation in the system, which we have now implemented. We exemplify many of these new applications by comparing ElecSus to experimental data. In addition, we have developed a graphical user interface front-end which makes the program much more accessible, and have improved on several other minor areas of the program structure. Program Title: ElecSus Program Files doi: http://dx.doi.org/10.17632/h7cj8bz4bd.1 Licensing provisions: Apache License, Version 2.0 Programming language: Python External routines/libraries: SciPy library [1] 0.15.0 or later, NumPy [1], matplotlib [2], sympy [3], lmfit 0.9.5 or later [4], wxpython (required for GUI only) Nature of problem: Calculating the weak-probe electric susceptibility of an alkali-metal vapour. The electric susceptibility can be used to calculate spectra such as transmission and Stokes parameters. Measurements of experimental parameters can be made by fitting the theory to data. Solution method: The transition frequencies and wavelengths are calculated using a matrix representation of the Hamiltonian in the completely uncoupled basis. A suite of fitting methods are provided in order to allow user supplied experimental data to be fit to the theory, thereby allowing experimental parameters to be extracted. Restrictions: Results are only valid in the weak-probe regime. [1] T. E. Oliphant, Comput. Sci. Eng. 9, 10 (2007). http://www.scipy.org/ [2] J. D. Hunter, Comput. Sci. Eng. 9, 10 (2007). http://matplotlib.org/ [3] A. Meurer et. al, PeerJ Comp. Sci. 3, e103 (2017) http://www.sympy.org/ [4] M. Newville et al., LMFIT: Non-Linear Least-Square Minimization and Curve-Fitting for Python, Zenodo (2014). DOI:10.5281/zenodo.11813 https://lmfit.github.io/lmfit-py/

DOI
10.1016/j.cpc.2017.12.001

Related papers

ElecSus: A program to calculate the electric susceptibility of an atomic ensemble

Mark A. Zentile, James Keaveney, Lee Weller +3 more

We present a computer program and underlying model to calculate the electric susceptibility of a gas, which is essential to predict its absorptive and dispersive properties. Our program focuses on alkali-metal vapours where we use a matrix representation of the atomic Hamiltonian in the completely uncoupled basis in order to calculate transition frequencies and strengths. The program calculates various spectra for a weak-probe laser beam in an atomic medium with an applied axial magnetic field. This allows many optical devices to be designed, such as Faraday rotators/filters, optical isolators and circular polarisation filters. Fitting routines are also provided with the program which allows the user to perform optical metrology by fitting to experimental data. Program title: ElecSus Catalogue identifier: AEVD_v1_0 Program summary URL:http://cpc.cs.qub.ac.uk/summaries/AEVD_v1_0.html Program obtainable from: CPC Program Library, Queen’s University, Belfast, N. Ireland Licensing provisions: Apache License, version 2 No. of lines in distributed program, including test data, etc.: 191 270 No. of bytes in distributed program, including test data, etc.: 309 4994 Distribution format: tar.gz Programming language: Python. Computer: Any single computer running Python 2. Operating system: Linux, Mac OSX, Windows. RAM: Depends on the precision required and size of the data set, but typically not larger than 50 MiB. Classification: 2.2, 2.3. External routines: SciPy library [1] 0.12.0 or later, NumPy [1], matplotlib [2] Nature of problem: Calculating the weak-probe electric susceptibility of an alkali-metal vapour. The electric susceptibility can be used to calculate spectra such as transmission and Stokes parameters. Measurements of experimental parameters can be made by fitting the theory to data. Solution method: The transition frequencies and wavelengths are calculated using a matrix representation of the Hamiltonian in the completely uncoupled basis. A suite of fitting methods are provided in order to allow user supplied experimental data to be fit to the theory, thereby allowing experimental parameters to be extracted. Restrictions: Only describes a magnetic field parallel to the laser beam propagation direction. Results are only valid in the weak-probe regime. Running time: At standard precision less than a second for a theory curve, fitting will take 10 s to 20 min depending on the method used, the number of parameters to fit and the number of data points. References: [1] T.E. Oliphant, Comput. Sci. Eng. 9, 10 (2007). http://www.scipy.org/. [2] J.D. Hunter, Comput. Sci. Eng. 9, 10 (2007). http://matplotlib.org/.

arXiv:1409.1873•Computer Physics Communications•Dec 11, 2014•151 citations

Applications of the Faraday effect in hot atomic vapours

Mark A. Zentile

This thesis presents both a computational and experimental investigation into light propagation in hot alkali-metal vapours, with a particular focus on utilizing the Faraday effect for practical applications. A model to calculate various spectra for a weak-probe laser beam in an atomic medium with an applied axial magnetic field is presented. A computer program (ElecSus) was developed which implements this model efficiently. Using ElecSus we design optical devices such as Faraday filters and laser frequency stabilizing references. The design of Faraday filters utilizing compact vapour cells is shown, along with excellent agreement with experiment. The importance of including the effect of self broadening in the model is shown for these short path length vapour cells. Also, a Faraday filter is presented that can potentially be used for quantum optics experiments on the caesium D$_1$ line (894~nm). The filter displays the highest ratio of transmission to equivalent noise bandwidth to date for a linear Faraday filter, demonstrating the power of computerized optimization for this application. Furthermore, a Faraday filter is presented for use as an intra-cavity element in an external-cavity diode laser. A proof-of-principle experiment is demonstrated which shows that using a short external cavity with the Faraday filter eliminates mode-hops. Experimentally and theoretically the Faraday effect is investigated in large magnetic fields where alkali-metal atoms enter the hyperfine Paschen-Back regime. This hyperfine Paschen-Back Faraday effect is shown to allow a direct measure of the refractive indices for left and right circular polarized light. Furthermore, fitting the weak-probe spectra using ElecSus is found to give measures of the magnetic field with a fractional precision of the order of $10^{-4}$. In addition we study slow-light pulse propagation in a high density rubidium vapour, showing that our theoretical model for the electric susceptibility is valid for short pulses as well as continuous-wave light. This shows that the model is accurate for predicting weak-probe pulse propagation.

•Jan 1, 2015•4 citations

ARC: An open-source library for calculating properties of alkali Rydberg atoms

Nikola Šibalić, Jonathan D. Pritchard, Charles S. Adams +1 more

We present an object-oriented Python library for the computation of properties of highly-excited Rydberg states of alkali atoms. These include single-body effects such as dipole matrix elements, excited-state lifetimes (radiative and black-body limited) and Stark maps of atoms in external electric fields, as well as two-atom interaction potentials accounting for dipole and quadrupole coupling effects valid at both long and short range for arbitrary placement of the atomic dipoles. The package is cross-referenced to precise measurements of atomic energy levels and features extensive documentation to facilitate rapid upgrade or expansion by users. This library has direct application in the field of quantum information and quantum optics which exploit the strong Rydberg dipolar interactions for two-qubit gates, robust atom-light interfaces and simulating quantum many-body physics, as well as the field of metrology using Rydberg atoms as precise microwave electrometers. Program Title: ARC: Alkali Rydberg Calculator Program Files doi: http://dx.doi.org/10.17632/hm5n8w628c.1 Licensing provisions: BSD-3-Clause Programming language: Python 2.7 or 3.5, with C extension External Routines: NumPy [1], SciPy [1], Matplotlib [2] Nature of problem: Calculating atomic properties of alkali atoms including lifetimes, energies, Stark shifts and dipole–dipole interaction strengths using matrix elements evaluated from radial wavefunctions. Solution method: Numerical integration of radial Schrödinger equation to obtain atomic wavefunctions, which are then used to evaluate dipole matrix elements. Properties are calculated using second order perturbation theory or exact diagonalisation of the interaction Hamiltonian, yielding results valid even at large external fields or small interatomic separation. Restrictions: External electric field fixed to be parallel to quantisation axis. Supplementary material: Detailed documentation (.html), and Jupyter notebook with examples and benchmarking runs (.html and .ipynb). [1] T.E. Oliphant, Comput. Sci. Eng. 9, 10 (2007). http://www.scipy.org/. [2] J.D. Hunter, Comput. Sci. Eng. 9, 90 (2007). http://matplotlib.org/.

arXiv:1612.05529•Computer Physics Communications•Aug 5, 2017•466 citations

Experimental and theoretical characterisation of Stokes polarimetry of the potassium D1 line with neon buffer gas broadening

Sharaa A. Alqarni, Danielle Pizzey, Steven A. Wrathmall +1 more

Abstract This study presents a comprehensive experimental and theoretical characterisation of Stokes polarimetry in potassium (K) vapour on the D1 line. Measurements were performed in the weak-probe regime, investigating the influence of neon buffer gas in the presence of an applied magnetic field in the Faraday geometry. While previous Stokes polarimetry studies in alkali-metal vapours have been conducted, the specific effects of buffer gas-induced broadening and shifts on the observed Stokes parameters remained largely underexplored. Here, experimental measurements of absolute absorption and dispersion were compared with a theoretical model for the electric susceptibility of the vapour, calculated using the established software package ElecSus . This work marks the first application of ElecSus to model buffer gas polarimetry of the potassium D1 line, with validation performed against experimental spectra for magnetic fields up to 1.2 kG. Our findings provide new insight into how the presence of buffer gas influences the observed Stokes parameters, thereby enhancing the predictive capabilities of theoretical frameworks for atom-light interactions in buffer-gas environments.

arXiv:2507.18353•Journal of Physics B Atomic Molecular and Optical Physics•Nov 19, 2025•0 citations

Diatomic-py: A Python module for calculating the rotational and hyperfine structure of 1Σ molecules

Jacob A. Blackmore, Philip D. Gregory, Jeremy M. Hutson +1 more

We present a computer program to calculate the quantised rotational and hyperfine energy levels of Σ1 diatomic molecules in the presence of dc electric, dc magnetic, and off-resonant optical fields. Our program is applicable to the bialkali molecules used in ongoing state-of-the-art experiments with ultracold molecular gases. We include functions for the calculation of space-fixed electric dipole moments, magnetic moments and transition dipole moments. Program Title: Diatomic-Py CPC Library link to program files: https://doi.org/10.17632/3yfxnh5bn5.1 Developer's repository link: https://doi.org/10.5281/zenodo.6632148 Licensing provisions: BSD 3-clause Programming language: Python ≥ 3.7 Nature of problem: Calculation of the rotational and hyperfine structure of Σ1 molecules in the presence of dc magnetic, dc electric, and off-resonant laser fields. Solution method: A matrix representation of the Hamiltonian is constructed in the uncoupled basis set. Eigenstates and eigenenergies are calculated by numerical diagonalization of the Hamiltonian. Additional comments including restrictions and unusual features: Restricted to calculating the Stark and Zeeman shifts with co-axial electric and magnetic fields.

arXiv:2205.05686•Computer Physics Communications•Aug 29, 2022•10 citations

Modelling spectra of hot alkali vapour in the saturation regime

Daniel R Häupl, Clare R. Higgins, Danielle Pizzey +5 more

Abstract Laser spectroscopy of hot atomic vapours has been studied extensively. Theoretical models that predict the absolute value of the electric susceptibility are crucial for optimising the design of photonic devices that use hot vapours, and for extracting parameters, such as external fields, when these devices are used as sensors. To date, most of the models developed have been restricted to the weak-probe regime. However, fulfilling the weak-probe power constraint may not always be easy, desired or necessary. Here we present a model for simulating the spectra of alkali-metal vapours for a variety of experimental parameters, most distinctly at intensities beyond weak laser fields. The model incorporates optical pumping effects and transit-time broadening. We test the performance of the model by performing spectroscopy of 87Rb in a magnetic field of 0.6 T, where isolated atomic resonances can be addressed. We find very good agreement between the model and data for three different beam diameters and a variation of intensity of over five orders of magnitude. The non-overlapping absorption lines allow us to differentiate the saturation behaviour of open and closed transitions. While our model was only experimentally verified for the D2 line of rubidium, the software is also capable of simulating spectra of rubidium, sodium, potassium and caesium over both D lines.

New Journal of Physics•Feb 18, 2025•4 citations
We present a major update to ElecSus, a computer program and underlying model to calculate the electric susceptibility of an alkali-metal atomic vapour. Knowledge of the electric susceptibility of a medium is essential to predict its absorptive and dispersive properties. In this version we implement several changes which significantly extend the range of applications of ElecSus, the most important of which is support for non-axial magnetic fields (i.e. fields which are not aligned with the light propagation axis). Supporting this change requires a much more general approach to light propagation in the system, which we have now implemented. We exemplify many of these new applications by comparing ElecSus to experimental data. In addition, we have developed a graphical user interface front-end which makes the program much more accessible, and have improved on several other minor areas of the program structure. Program Title: ElecSus Program Files doi: http://dx.doi.org/10.17632/h7cj8bz4bd.1 Licensing provisions: Apache License, Version 2.0 Programming language: Python External routines/libraries: SciPy library [1] 0.15.0 or later, NumPy [1], matplotlib [2], sympy [3], lmfit 0.9.5 or later [4], wxpython (required for GUI only) Nature of problem: Calculating the weak-probe electric susceptibility of an alkali-metal vapour. The electric susceptibility can be used to calculate spectra such as transmission and Stokes parameters. Measurements of experimental parameters can be made by fitting the theory to data. Solution method: The transition frequencies and wavelengths are calculated using a matrix representation of the Hamiltonian in the completely uncoupled basis. A suite of fitting methods are provided in order to allow user supplied experimental data to be fit to the theory, thereby allowing experimental parameters to be extracted. Restrictions: Results are only valid in the weak-probe regime. [1] T. E. Oliphant, Comput. Sci. Eng. 9, 10 (2007). http://www.scipy.org/ [2] J. D. Hunter, Comput. Sci. Eng. 9, 10 (2007). http://matplotlib.org/ [3] A. Meurer et. al, PeerJ Comp. Sci. 3, e103 (2017) http://www.sympy.org/ [4] M. Newville et al., LMFIT: Non-Linear Least-Square Minimization and Curve-Fitting for Python, Zenodo (2014). DOI:10.5281/zenodo.11813 https://lmfit.github.io/lmfit-py/
We present a computer program and underlying model to calculate the electric susceptibility of a gas, which is essential to predict its absorptive and dispersive properties. Our program focuses on alkali-metal vapours where we use a matrix representation of the atomic Hamiltonian in the completely uncoupled basis in order to calculate transition frequencies and strengths. The program calculates various spectra for a weak-probe laser beam in an atomic medium with an applied axial magnetic field. This allows many optical devices to be designed, such as Faraday rotators/filters, optical isolators and circular polarisation filters. Fitting routines are also provided with the program which allows the user to perform optical metrology by fitting to experimental data. Program title: ElecSus Catalogue identifier: AEVD_v1_0 Program summary URL:http://cpc.cs.qub.ac.uk/summaries/AEVD_v1_0.html Program obtainable from: CPC Program Library, Queen’s University, Belfast, N. Ireland Licensing provisions: Apache License, version 2 No. of lines in distributed program, including test data, etc.: 191 270 No. of bytes in distributed program, including test data, etc.: 309 4994 Distribution format: tar.gz Programming language: Python. Computer: Any single computer running Python 2. Operating system: Linux, Mac OSX, Windows. RAM: Depends on the precision required and size of the data set, but typically not larger than 50 MiB. Classification: 2.2, 2.3. External routines: SciPy library [1] 0.12.0 or later, NumPy [1], matplotlib [2] Nature of problem: Calculating the weak-probe electric susceptibility of an alkali-metal vapour. The electric susceptibility can be used to calculate spectra such as transmission and Stokes parameters. Measurements of experimental parameters can be made by fitting the theory to data. Solution method: The transition frequencies and wavelengths are calculated using a matrix representation of the Hamiltonian in the completely uncoupled basis. A suite of fitting methods are provided in order to allow user supplied experimental data to be fit to the theory, thereby allowing experimental parameters to be extracted. Restrictions: Only describes a magnetic field parallel to the laser beam propagation direction. Results are only valid in the weak-probe regime. Running time: At standard precision less than a second for a theory curve, fitting will take 10 s to 20 min depending on the method used, the number of parameters to fit and the number of data points. References: [1] T.E. Oliphant, Comput. Sci. Eng. 9, 10 (2007). http://www.scipy.org/. [2] J.D. Hunter, Comput. Sci. Eng. 9, 10 (2007). http://matplotlib.org/.
This thesis presents both a computational and experimental investigation into light propagation in hot alkali-metal vapours, with a particular focus on utilizing the Faraday effect for practical applications. A model to calculate various spectra for a weak-probe laser beam in an atomic medium with an applied axial magnetic field is presented. A computer program (ElecSus) was developed which implements this model efficiently. Using ElecSus we design optical devices such as Faraday filters and laser frequency stabilizing references. The design of Faraday filters utilizing compact vapour cells is shown, along with excellent agreement with experiment. The importance of including the effect of self broadening in the model is shown for these short path length vapour cells. Also, a Faraday filter is presented that can potentially be used for quantum optics experiments on the caesium D1_11​ line (894~nm). The filter displays the highest ratio of transmission to equivalent noise bandwidth to date for a linear Faraday filter, demonstrating the power of computerized optimization for this application. Furthermore, a Faraday filter is presented for use as an intra-cavity element in an external-cavity diode laser. A proof-of-principle experiment is demonstrated which shows that using a short external cavity with the Faraday filter eliminates mode-hops. Experimentally and theoretically the Faraday effect is investigated in large magnetic fields where alkali-metal atoms enter the hyperfine Paschen-Back regime. This hyperfine Paschen-Back Faraday effect is shown to allow a direct measure of the refractive indices for left and right circular polarized light. Furthermore, fitting the weak-probe spectra using ElecSus is found to give measures of the magnetic field with a fractional precision of the order of 10−410^{-4}10−4. In addition we study slow-light pulse propagation in a high density rubidium vapour, showing that our theoretical model for the electric susceptibility is valid for short pulses as well as continuous-wave light. This shows that the model is accurate for predicting weak-probe pulse propagation.
We present an object-oriented Python library for the computation of properties of highly-excited Rydberg states of alkali atoms. These include single-body effects such as dipole matrix elements, excited-state lifetimes (radiative and black-body limited) and Stark maps of atoms in external electric fields, as well as two-atom interaction potentials accounting for dipole and quadrupole coupling effects valid at both long and short range for arbitrary placement of the atomic dipoles. The package is cross-referenced to precise measurements of atomic energy levels and features extensive documentation to facilitate rapid upgrade or expansion by users. This library has direct application in the field of quantum information and quantum optics which exploit the strong Rydberg dipolar interactions for two-qubit gates, robust atom-light interfaces and simulating quantum many-body physics, as well as the field of metrology using Rydberg atoms as precise microwave electrometers. Program Title: ARC: Alkali Rydberg Calculator Program Files doi: http://dx.doi.org/10.17632/hm5n8w628c.1 Licensing provisions: BSD-3-Clause Programming language: Python 2.7 or 3.5, with C extension External Routines: NumPy [1], SciPy [1], Matplotlib [2] Nature of problem: Calculating atomic properties of alkali atoms including lifetimes, energies, Stark shifts and dipole–dipole interaction strengths using matrix elements evaluated from radial wavefunctions. Solution method: Numerical integration of radial Schrödinger equation to obtain atomic wavefunctions, which are then used to evaluate dipole matrix elements. Properties are calculated using second order perturbation theory or exact diagonalisation of the interaction Hamiltonian, yielding results valid even at large external fields or small interatomic separation. Restrictions: External electric field fixed to be parallel to quantisation axis. Supplementary material: Detailed documentation (.html), and Jupyter notebook with examples and benchmarking runs (.html and .ipynb). [1] T.E. Oliphant, Comput. Sci. Eng. 9, 10 (2007). http://www.scipy.org/. [2] J.D. Hunter, Comput. Sci. Eng. 9, 90 (2007). http://matplotlib.org/.
Abstract This study presents a comprehensive experimental and theoretical characterisation of Stokes polarimetry in potassium (K) vapour on the D1 line. Measurements were performed in the weak-probe regime, investigating the influence of neon buffer gas in the presence of an applied magnetic field in the Faraday geometry. While previous Stokes polarimetry studies in alkali-metal vapours have been conducted, the specific effects of buffer gas-induced broadening and shifts on the observed Stokes parameters remained largely underexplored. Here, experimental measurements of absolute absorption and dispersion were compared with a theoretical model for the electric susceptibility of the vapour, calculated using the established software package ElecSus . This work marks the first application of ElecSus to model buffer gas polarimetry of the potassium D1 line, with validation performed against experimental spectra for magnetic fields up to 1.2 kG. Our findings provide new insight into how the presence of buffer gas influences the observed Stokes parameters, thereby enhancing the predictive capabilities of theoretical frameworks for atom-light interactions in buffer-gas environments.
We present a computer program to calculate the quantised rotational and hyperfine energy levels of Σ1 diatomic molecules in the presence of dc electric, dc magnetic, and off-resonant optical fields. Our program is applicable to the bialkali molecules used in ongoing state-of-the-art experiments with ultracold molecular gases. We include functions for the calculation of space-fixed electric dipole moments, magnetic moments and transition dipole moments. Program Title: Diatomic-Py CPC Library link to program files: https://doi.org/10.17632/3yfxnh5bn5.1 Developer's repository link: https://doi.org/10.5281/zenodo.6632148 Licensing provisions: BSD 3-clause Programming language: Python ≥ 3.7 Nature of problem: Calculation of the rotational and hyperfine structure of Σ1 molecules in the presence of dc magnetic, dc electric, and off-resonant laser fields. Solution method: A matrix representation of the Hamiltonian is constructed in the uncoupled basis set. Eigenstates and eigenenergies are calculated by numerical diagonalization of the Hamiltonian. Additional comments including restrictions and unusual features: Restricted to calculating the Stark and Zeeman shifts with co-axial electric and magnetic fields.
Abstract Laser spectroscopy of hot atomic vapours has been studied extensively. Theoretical models that predict the absolute value of the electric susceptibility are crucial for optimising the design of photonic devices that use hot vapours, and for extracting parameters, such as external fields, when these devices are used as sensors. To date, most of the models developed have been restricted to the weak-probe regime. However, fulfilling the weak-probe power constraint may not always be easy, desired or necessary. Here we present a model for simulating the spectra of alkali-metal vapours for a variety of experimental parameters, most distinctly at intensities beyond weak laser fields. The model incorporates optical pumping effects and transit-time broadening. We test the performance of the model by performing spectroscopy of 87Rb in a magnetic field of 0.6 T, where isolated atomic resonances can be addressed. We find very good agreement between the model and data for three different beam diameters and a variation of intensity of over five orders of magnitude. The non-overlapping absorption lines allow us to differentiate the saturation behaviour of open and closed transitions. While our model was only experimentally verified for the D2 line of rubidium, the software is also capable of simulating spectra of rubidium, sodium, potassium and caesium over both D lines.