AMBiT is a high-precision atomic structure software package based on the Configuration Interaction + Many-Body Perturbation Theory (CI+MBPT) method and is developed and maintained by the Julian Berengut Group at the University of New South Wales in Sydney, Australia. While we are contactable by email, we would prefer for bug reports and feature requests to be made on this GitHub page.
Briefly, AMBiT is:
- Highly-accurate - AMBiT typically gives better than 1% accuracy for simple atoms and highly-charged ions, while more complicated open-shell systems (e.g. Lanthanides and Actinides) AMBiT agrees with experiment to approximately 10% (note that such systems would be either extremely difficult or outright impossible to simulate using other codes)
- Flexible - The particle-hole extension to CI+MBPT allows us to treat a wide range of atoms with many valence electrons which would be otherwise intractable
- Ab-initio - no fitting or semi-empirical fudge-factors are necessary to get good results
- Fast and scalable - AMBiT is highly parallelised and designed to take full advantage of modern high-performance computing architecture, while still being possible to run on a personal workstation (or even a notebook computer!)
- Modern - Written in C++11, AMBiT makes heavy use of modern computer science paradigms which allows for rapid development and integration of new functionality
- User friendly - we consider usability to be a first-class constraint on our development.
AMBiT is currently in active development: the ''dev'' branch is regularly updated with new features and performance improvements, while the ''master'' branch is more stable and only updated once we are sure it is correct and bug-free. If you are installing AMBiT globally (i.e. not in your personal directory) on a cluster then we recommend you use the master branch - otherwise use either dev or master depending on your tolerance for software changes.
AMBiT uses the SCons build-system, which is based on Python 2.7.x, and requires the following external libraries:
- GSL - The GNU Scientific Library.
- Boost filesystem and system C++ (boost_filesystem and boost_system)
- Eigen v3 - C++ linear algebra package.
- LAPACK and BLAS - linear algebra subroutines. Can be substituted for internal libraries in the Intel Math Kernel Library (MKL).
- Google Sparsehash
We welcome contributions, bug reports and feature requests. See CONTRIBUTING.md for contribution and bug-report guidlines.
This project is licensed under the GNU GPL v3.0. See LICENSE for more details