NobleBlocks

Research index

Atomic Simulation Interface (ASI): application programming interface for electronic structure codes

Stishenko, Keal, Woodley and 4 others

Zenodo (CERN European Organization for Nuclear Research)12 May 2023Open access

NobleIDark:/48914/w1/20261004/79C27B13DOI10.5281/zenodo.7931108

Abstract

The Atomic Simulation Interface (ASI) is a native C-style API for density functional theory (DFT) codes. ASI provides an efficient way to import and export large arrays that describe electronic structure (e.g. Hamiltonian, overlap, and density matrices) from DFT codes that are typically monolithic. The ASI API is designed to be implemented and used with minimal performance penalty, avoiding, where possible, unnecessary data copying. It provides direct access to the internal data structures of a code, and reuses existing data distribution over MPI nodes. The ASI API also defines a set of functions that support classical, AIMD (ab initio molecular dynamics), and hybrid QM/MM simulations: exporting potential energy, forces, atomic charges, and electrostatic potential at user defined points, as well as importing nuclear coordinates and arbitrary external electrostatic potentials. The ASI API is implemented in the DFTB+ and FHI-aims codes. A Python wrapper for easy access to ASI functions is also freely available (asi4py). We hope that the ASI API will be widely adopted and used for development of universal and interoperable DFT codes without sacrificing efficiency for portability.

Discussion

Topics

More

Suggest a correction or report