atomphys
A Python package to help with atomic physics calculations.
Documentation: mgrau.github.io/atomphys/
Source Code: github.com/mgrau/atomphys
atomphys is meant to be a good starting off point for your atomic physics calculations. It can automate much of the frustrating process of searching for and compiling physical data and simple physical relations, and help you more quickly get to the good stuff.
It's designed with a natural interface and is easy to use.
Example
>>> from atomphys import Atom
>>> Rb = Atom('Rb')
>>> print(Rb('S1/2').to('P1/2').λ.to('nm'))
795 nm
>>> print(Rb('P1/2').τ.to('ns'))
27.7 ns
Installation
To install atomphys, simply use pip:
$ pip install atomphys
Features
- Integration with Pint for robust handling of units
- Automatically fetch energy level and transition data from the NIST Atomic Spectra Database
- Use transition data to calculate state lifetimes, polarizabilities, transition dipole moments, cross sections, and saturation intensities
Requirements
Python 3.6+
atomphys makes extensive use of the excellent package Pint to handle units.