Papers
Topics
Authors
Recent
Search
2000 character limit reached

arckit Python Library: Atomic Physics Tool

Updated 27 May 2026
  • The arckit Python Library is a flexible and extensible tool for atomic physics computations, focusing on alkali and divalent atoms.
  • It offers APIs for detailed calculations like atomic energies, matrix elements, dynamic polarizabilities, and lattice properties.
  • Utilized for robust workflows in atomic and quantum optics, ARC 3.0 supports data-driven and reproducible studies in neutral-atom systems.

The arckit Python library, also referred to in the literature as ARC or ARC 3.0, is an open-source, object-oriented Python toolbox for atomic physics computations. Designed primarily for precision work with alkali and divalent atom species, it provides a consistent and extensible application programming interface (API) to calculate atomic energies, matrix elements, Stark maps, polarizabilities, lattice properties, and long-range interaction coefficients. Its utility spans atomic, quantum optics, and quantum information, facilitating reproducible workflows for researchers handling Rydberg and related neutral-atom systems (Robertson et al., 2020, Šibalić et al., 2016). The toolkit integrates experimental and model-potential data, semi-classical and numerical methods, and is structured for modularity and community extension.

1. Supported Atomic Species and Data Structures

ARC 3.0 supports a broad range of atomic systems. Alkali species are handled with quantum defect expansions and NIST data—classes include Rubidium87(), Caesium(), Hydrogen(), Sodium23(), and potassium/rubidium/cesium isotopes. Divalent atoms, such as Strontium88() and Ytterbium174(), use a single-active-electron approximation with singlet/triplet specification via a quantum number s=0s=0 or $1$. Atomic constants, quantum defects, ionisation energies, and model-potential coefficients are encoded in the data modules (Robertson et al., 2020):

  • alkali_atom_data, divalent_atom_data for species-specific parameters.
  • Literature dipole matrix elements and level data, extendable through local .csv tables.

Atomic properties, such as state energies, transition wavelengths, and reduced matrix elements, are accessible via high-level class methods: $1$4 This design enables straightforward extension when adding new atomic species, requiring only subclassing and data provision (Robertson et al., 2020).

2. Single-Atom Calculations and Methods

The toolkit rigorously implements single-body atomic calculations relevant for high-lying (Rydberg) and ground electronic states:

  • Radial Wave Functions: Numerov integration of model potentials (Rn(r)R_{n\ell}(r)) for alkalis; semi-classical analytic integrals for divalents.
  • Dipole and Quadrupole Matrix Elements: Automated Wigner-Eckart decomposition and numerical or literature-driven evaluation, including fallback mechanisms (Šibalić et al., 2016).
  • State Energies and Transition Rates: Direct computation of excited-state lifetimes, radiative and black-body-induced decay rates, and Rabi frequencies using model potential and experimental data (Šibalić et al., 2016).
  • Stark Maps: Static electric field Hamiltonian construction and exact diagonalization in a truncated njmj|n\ell j m_j\rangle basis, supporting Fӧrster resonance identification and polarizability extraction (Šibalić et al., 2016, Robertson et al., 2020).

Tabulated atomic data assure high accuracy (1–2% relative error for n20n \ge 20) and cross-checks with NIST reference values; rapid recalculation is facilitated by memoisation schemes (Šibalić et al., 2016).

Quantity Core Module/Class Calculation Principle
Level Energies AlkaliAtom, DivalentAtom Quantum-defect + NIST tables
Dipole Matrix Elements AlkaliAtom Numerov integration, Wigner-Eckart
Radiative Lifetimes AlkaliAtom Einstein AA-coefficients, summations
Stark Map StarkMap Basis diagonalization
Radial Integrals arc_c_extensions C-accelerated Numerov/Python fallback

3. Two-Atom and Many-Body Interaction Modules

Evaluating long- and short-range interatomic potentials is central to quantum information and simulation tasks. ARC 3.0 allows:

  • Multipole Expansion: Dipole–dipole (Vdd/R3V_{dd}/R^3), dipole–quadrupole, and quadrupole–quadrupole terms are calculated, including all relevant angular dependencies via Wigner D-matrices (Šibalić et al., 2016).
  • Van der Waals C6C_6 Coefficients: Computed perturbatively or via full diagonalization, supporting degenerate/interspecies interactions.
  • Two-Body Eigenvalue Problems: Short-range spectra (“spaghetti” curves), resonance finding, and derived parameters (blockade radius, Fӧrster resonance fields) (Robertson et al., 2020).
  • Atom–Surface Interactions: Non-retarded van der Waals (surface C3/z3C_3/z^3 potentials) and support for real optical materials, e.g., Sapphire() via the AtomSurfaceVdW class.

These methods enable prediction and analysis of interacting Rydberg ensembles for gate design, quantum simulation, and metrological schemes.

4. Optical Lattice and Polarizability Computations

ARC 3.0 incorporates substantial capability for lattice physics and AC field interactions, including:

  • 1D Optical Lattice Band Structures: Hamiltonian diagonalization in the ei(q+mk)xe^{i(q + mk_\ell)x} basis, Bloch-band diagramming, and Wannier function generation.
  • Dynamic (AC) Polarizabilities: Scalar, tensor, and core contributions are computed via sum-over-states formulas using reduced dipole matrix elements and transition energies. The tool identifies magic wavelengths critical for neutral-atom trapping and state-insensitive clock operation:

$1$0

(Robertson et al., 2020)

Such routines are critical in contemporary neutral-atom quantum engineering and atomic clock development.

5. Workflow Examples and Application Domains

ARC 3.0 workflows are tailored for experimental and theoretical investigations in atomic, molecular, and optical (AMO) physics:

  • Quantum Gate Design: Calculation of $1$1, blockade radii, and fidelity metrics for Rydberg-mediated two-qubit gates.
  • Metrology and Magic Trap Design: Determination of state-insensitive trapping conditions by equating dynamic polarizabilities ($1$2) (Robertson et al., 2020).
  • Quantum Many-Body Simulation: Long-range interaction matrix generation for input to simulation codes.
  • Atom–Surface Physics: $1$3 coefficient estimation for atom-surface proximity sensors.

All routines are supported by an extensive documentation suite and online code examples, with additional IPython notebook support and a web-based calculator for rapid prototyping (Šibalić et al., 2016, Robertson et al., 2020).

6. Installation, Extensibility, and Community Support

ARC 3.0 is distributed via PyPI, requiring only standard Python (3.6+) and common scientific packages (numpy, scipy, matplotlib, sympy, lmfit). Fast C extensions are optional but recommended for high-performance Numerov integration: $1$5 arc can be imported directly in Python scripts or notebooks (Robertson et al., 2020). Extension is enabled through subclassing of AlkaliAtom or DivalentAtom and inclusion of appropriate empirical data. Advanced routines reside in arc.advanced, and a caching infrastructure improves repeated computation for large basis sizes (controlled by files in ~/.arc-data).

Community contributions are centrally managed at https://github.com/nikolasibalic/ARC-Alkali-Rydberg-Calculator, and a full API reference is available online. Built-in support for additional routines is furthered by design choices emphasizing modular architectures and minimal coupling between subsystems (Šibalić et al., 2016, Robertson et al., 2020).


Principal references: (Šibalić et al., 2016, Robertson et al., 2020)

Definition Search Book Streamline Icon: https://streamlinehq.com
References (2)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to arckit Python Library.