ARC 3.0: An expanded Python toolbox for atomic physics calculations

ARC 3.0 is a modular, object-oriented Python library combining data and algorithms to enable the calculation of a range of properties of alkali and divalent atoms. Building on the initial version of the ARC library (Šibalić et al., 2017), which focused on Rydberg states of alkali atoms, this major u...

Full description

Saved in:
Bibliographic Details
Published inComputer physics communications Vol. 261; p. 107814
Main Authors Robertson, E.J., Šibalić, N., Potvliege, R.M., Jones, M.P.A.
Format Journal Article
LanguageEnglish
Published Elsevier B.V 01.04.2021
Elsevier
Subjects
Online AccessGet full text
ISSN0010-4655
1879-2944
1879-2944
DOI10.1016/j.cpc.2020.107814

Cover

More Information
Summary:ARC 3.0 is a modular, object-oriented Python library combining data and algorithms to enable the calculation of a range of properties of alkali and divalent atoms. Building on the initial version of the ARC library (Šibalić et al., 2017), which focused on Rydberg states of alkali atoms, this major upgrade introduces support for divalent atoms. It also adds new methods for working with atom–surface interactions, for modelling ultracold atoms in optical lattices and for calculating valence electron wave functions and dynamic polarisabilities. Such calculations have applications in a variety of fields, e.g., in the quantum simulation of many-body physics, in atom-based sensing of DC and AC fields (including in microwave and THz metrology) and in the development of quantum gate protocols. ARC 3.0 comes with an extensive documentation including numerous examples. Its modular structure facilitates its application to a wide range of problems in atom-based quantum technologies. Program Title: ARC 3.0 CPC Library link to program files:https://doi.org/10.17632/c4z4n2cdf7.1 Licencing provisions: BSD-3-Clause Programming language: Python External Routines: NumPy [1], SciPy [1], Matplotlib [2], SymPy [3], LmFit [4] Nature of problem: The calculation of atomic properties of alkali and divalent atoms including energies, Stark shifts and dipole–dipole interaction strengths using matrix elements evaluated through a variety of means. Solution method: Dipole matrix elements are calculated using an analytical semi-classical approximation or wave functions obtained by numerical integration of the radial Schrödinger equation for a one-electron model potential. Interaction energies and shifts due to external fields are calculated using second order degenerate perturbation theory or exact diagonalisation of the interaction Hamiltonian, yielding results valid even at large external fields or small interatomic separation. Additional comments including restrictions and unusual features: External electric and magnetic field must be parallel to the quantisation axis. The accuracy of short range (≲1μm) atom - atom interaction potentials is limited by the truncation of the basis. Only weak magnetic fields are supported as only linear Zeeman shifts are taken into account. Calculations for divalent atoms use a single-electron approximation and calculation of their wave functions is not supported. References [1] T.E. Oliphant, Comput. Sci. Eng. 9 (2007) 10. http://www.scipy.org/. [2] J.D. Hunter, Comput. Sci. Eng. 9 (2007) 90. http://matplotlib.org/. [3] A. Meurer et al., PeerJ Comput. Sci. 3 (2017) e103. https://doi.org/10.7717/peerj-cs.103 [4] M. Newville et al., lmfit/lmfit-py 1.0.0 (Version 1.0.0), Zenodo (2019). https://doi.org/10.5281/zenodo.3588521
ISSN:0010-4655
1879-2944
1879-2944
DOI:10.1016/j.cpc.2020.107814