ampsci
High-precision calculations for one- and two-valence atomic systems
Loading...
Searching...
No Matches
ampsci

Atomic Many-body Perturbation theory in the Screened Coulomb Interaction

ampsci is a c++ program for high-precision atomic structure calculations of one and two valence atomic systems, developed and maintained by Benjamin M. Roberts, University of Queensland, Australia

Designed to be fast, accurate, and easy to use.

  • Solves the correlated Dirac equation using the Hartree-Fock + correlation potential method (based on Dzuba-Flambaum-Sushkov method) to produce a set of atomic wavefunctions and energies.
  • For two-valence systems, uses the CI+MBPT (Configuration Interaction with many-body perturbation theory) method.
  • Fully relativistic, includes electron correlations, all-orders screening and hole-particle interaction, finite-nuclear size, Breit interaction, radiative QED effects, RPA for matrix elements, and structure radiation/renormalisation.
  • QED is included via the Flambaum-Ginges radiative potential method.
  • Can solve for continuum states with high energy, and calculate ionisation cross sections with large energy/momentum transfer.
  • Can solve for exotic atoms (e.g., muonic atoms), including electron screening.
  • The "modules" system (see doc/modules.md) makes it simple to add your own routines to use the atomic wavefunctions to calculate whatever properties you may be interested in.

The code is on GitHub: github.com/benroberts999/ampsci

  • See ampsci.dev/ for full documentation
    • Includes basic step-by-step introduction and tutorials
  • A full description of the physics methods and approximations, including references, is given in the physics documentation: ampsci.pdf.

Important: this is a pre-release version of the code: not fully tested or documented, and should not be used for publishable calculations (without consultation)

github doxygen manual

tests build macOS cov


Compilation and usage

Quick start

  • The setup.sh bash script should compile and build ampsci (uses Make)
    • It uses only defaults, and may not work on all systems. See documentation for full guide to compilation.
    • It assumes dependencies have already been installed. If not, see next:
  • The install-dependencies.sh bash script should install all required dependencies.
    • It uses only defaults, and may not work on all systems.
  • If there are issue with compilation
    • See full compilation instructions: doc/compilation.md
  • Check out the example input files to get running:
    • doc/examples/ampsci.in – an example/template input file
    • More: in doc/examples/ there are several example input files, along with the expected output; use these to test if everything is working

Tutorials/examples

  • The fastest way to get familiar with ampsci is to follow the tutorials at ampsci.dev/

Much of ampsci documentation can be seen from the command line:

  • See which ampsci input options are available: ./ampsci -a
    • See available input options for each input block by following with its name
    • e.g., ./ampsci -a HartreeFock
  • Check which Modules are aviable: ./ampsci -m
    • See available input options for each module by following with its name
    • e.g., ./ampsci -m MatrixElements
  • Check which operators are aviable: ./ampsci -o
    • See available input options for each operator by following with its name
    • e.g., ./ampsci -o hfs

Looking for atomic ionisation form-factors for dark-matter-electron scattering?

  • See Kionisation module (./ampsci -m Kionisation)

A selection of publications resulting from ampsci