Atomic Simulation Interface (ASI)
Atomic Simulation Interface (ASI): application programming interface for electronic structure codes - Published in JOSS (2023)
Science Score: 89.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 1 DOI reference(s) in JOSS metadata -
○Academic publication links
-
✓Committers with academic emails
5 of 11 committers (45.5%) from academic institutions -
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Last synced: 4 months ago
·
JSON representation
Repository
Atomic Simulations Interface
Basic Info
- Host: gitlab.com
- Owner: pvst
- License: mit
- Default Branch: main
Statistics
- Stars: 2
- Forks: 2
- Open Issues: 11
- Releases: 0
Created over 3 years ago
https://gitlab.com/pvst/asi/blob/main/
# Atomic Simulation Interface (ASI) API
The Atomic Simulation Interface (ASI) is a native C-style API that
includes functions for the export and import of data structures that are
used in electronic structure calculations and for classical molecular
dynamics simulations. ASI aims to be a uniform, generic and efficient
interface for connecting various computational chemistry and materials
science codes in multiscale simulation workflows, such as QM/MM, QM/ML,
QM/QM. ASI specifies functions, data types and calling conventions for
export and import of density matrices, overlap and Hamiltonian matrices,
electrostatic potentials, atomic coordinates, charges, total energy and
forces.
[Full ASI API documentation](https://pvst.gitlab.io/asi).
## ASI API specification
The ASI API is specified as a C header file
[asi.h](https://pvst.gitlab.io/asi/asi_8h.html). Codes using ASI API
must provide a linkable library with definitions of functions matching
[asi.h](https://pvst.gitlab.io/asi/asi_8h.html). Depending on particular
usage of the implementations, some functions can be omitted or
implemented as stubs, if they are not going to used. To use the Python
ASI wrapper it is necessary to have all functions from
[asi.h]{.title-ref} defined, but of course stub definitions can be used.
[Doxygen-generated ASI API
specification](https://pvst.gitlab.io/asi/asi_8h.html).
## Implementations
- [DFTB+](https://dftbplus.org/): [in separate
branch](https://github.com/PavelStishenko/dftbplus/tree/ASI_v1.3).
Milestone release: `24.2`. ASI API is provided by a separate library
that should be linked with the DFTB+ library.
- [FHI-aims](https://fhi-aims.org/): in the main branch.
## Supported platforms
### FHI-aims
The ASI API implementation in FHI-aims is routinely tested on Linux
machines with the following compilers and libraries:
- Linux, GNU 7.5.0, Intel MKL 2021.4, and Intel MPICH 3.2.1.
- Linux, Intel compilers, Intel MKL 2021.4, and Intel MPICH 3.2.1.
- Debian Stable, GNU 9.3, OpenBLAS 0.3, and OpenMPI 4.1
### DFTB+
Although the DFTB+ works on both Linux and MacOS machines, the ASI API
implementation is not tested for MacOS and build scripts are Linux-only.
The well-tested configurations are:
- Debian Stable with GCC 9.3 and OpenMPI 4.1
- Fedora 34 with GCC 11.3 and OpenMPI 4.1
- Debian Testing with GCC 12.2 and OpenMPI 4.1
## Python wrapper
ASI-enabled codes can be used in Python scripts via the `asi4py` wrapper
of the ASI API.
To install asi4py use `pip`
pip install asi4py
See [asi4py reference in
documentation](https://pvst.gitlab.io/asi/reference.html).
# Usage example
See tests and their
[descriptions](https://pvst.gitlab.io/asi/testing.html#tests-descriptions)
in the documentation for various usage scenarios.
## A simple asi4py example
``` python
::include{file=tests/python/example.py}
```
JOSS Publication
Atomic Simulation Interface (ASI): application programming interface for electronic structure codes
Published
May 17, 2023
Volume 8, Issue 85, Page 5186
Authors
Pavel V. Stishenko
Cardiff Catalysis Institute, School of Chemistry, Cardiff University, Cardiff, United Kingdom
Cardiff Catalysis Institute, School of Chemistry, Cardiff University, Cardiff, United Kingdom
Thomas W. Keal
Scientific Computing Department, STFC Daresbury Laboratory, Keckwick Lane, Daresbury, Warrington WA4 4AD, United Kingdom
Scientific Computing Department, STFC Daresbury Laboratory, Keckwick Lane, Daresbury, Warrington WA4 4AD, United Kingdom
Scott M. Woodley
Department of Chemistry, Kathleen Lonsdale Materials Chemistry, University College London, London, United Kingdom
Department of Chemistry, Kathleen Lonsdale Materials Chemistry, University College London, London, United Kingdom
Volker Blum
Thomas Lord Department of Mechanical Engineering and Materials Science, Duke University, Durham, North Carolina 27708, United States
Thomas Lord Department of Mechanical Engineering and Materials Science, Duke University, Durham, North Carolina 27708, United States
Benjamin Hourahine
SUPA, Department of Physics, University of Strathclyde, John Anderson Building, 107 Rottenrow, Glasgow G4 0NG, United Kingdom
SUPA, Department of Physics, University of Strathclyde, John Anderson Building, 107 Rottenrow, Glasgow G4 0NG, United Kingdom
Tags
Python DFTCommitters
Last synced: 4 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Pavel V. Stishenko | p****o@g****m | 297 |
| mazay | m****y@l****d | 62 |
| Gabriel | B****G@c****k | 23 |
| Pavel Stishenko | p****l@l****n | 7 |
| Pavel Stishenko | s****p@c****k | 6 |
| mazay | m****y@l****n | 5 |
| Gabriel Bramley | b****g@c****k | 3 |
| Ben Hourahine | b****e@s****k | 3 |
| mazay | m****y@m****n | 2 |
| Pavel Stishenko | P****o@y****u | 1 |
| gabrielbramley | g****y@w****k | 1 |
Committer Domains (Top 20 + Academic)
cardiff.ac.uk: 3
w740.chemy.cf.ac.uk: 1
yandex.ru: 1
mzhx.lan: 1
strath.ac.uk: 1
lenovo.lan: 1
localhost.localdomain: 1
localhost-2.broadband: 1
Issues and Pull Requests
Last synced: 4 months ago
Packages
- Total packages: 1
-
Total downloads:
- pypi 896 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 64
- Total maintainers: 1
pypi.org: asi4py
A Python wrapper for Atomic Simulation Interface API
- Homepage: https://gitlab.com/pvst/asi
- Documentation: https://asi4py.readthedocs.io/
- License: MIT License Copyright (c) 2022 Pavel V Stishenko, Andrew Logsdail, Reinhard Maurer, Volker Blum, Mariana Rossi, Ben Hourahine, Scott Woodley, Thomas Keal Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
Latest release: 1.4.4
published 6 months ago
Rankings
Dependent packages count: 6.6%
Downloads: 9.0%
Average: 19.5%
Forks count: 23.2%
Stargazers count: 28.2%
Dependent repos count: 30.6%
Maintainers (1)
Last synced:
4 months ago