Skip to main content

abacuslite

Introduction

A lightweight ABACUS calculator and I/O plugin for ASE. It packages ABACUS's ASE interface as an independent, pip-installable project. Existing abacuslite imports keep working, and ASE does not need patching.

Use it for energy, forces and stress in ASE workflows, or to read and write ABACUS files without launching an engine. The current develop output format and the 3.10.x LTS format are supported. The fixed-cell socket calculator requires an ABACUS build with the socket driver.

Release line: 1.2.0 (candidate; publication pending authorization). It adds the ABACUS_PP_PATH/ABACUS_ORB_PATH profile defaults and three calculator and restart corrections on top of 1.1.0; the 1.x line was tested with ABACUS develop v3.11.0-beta10 and LTS v3.10.1. See the compatibility record for the exact snapshots and current checks, and the release record for artifact and publication status.

Key features

  • Lightweight: an ASE plugin; no ASE core changes are required.
  • Engine compatibility: each calculator selects latestio or legacyio from the configured ABACUS version.
  • ASE workflows: energy, forces and stress for relaxation, MD, NEB, band structure and DOS through ASE.
  • Socket support: AbacusSocketIO provides fixed-cell i-PI calculations.
  • Pure I/O: read and write INPUT, STRU and KPT, and read completed output without launching ABACUS.

Installation

Requires Python 3.10+ and ASE 3.28+ (<4):

python3 -m venv .venv
source .venv/bin/activate
python -m pip install 'abacuslite==1.2.0'
python -m pip check

Pip installs ASE, NumPy and seekpath. ABACUS, pseudopotentials and orbital files are supplied separately. Tested engine snapshots are listed in supported versions.

Quick start

Read an existing input file without an engine:

from abacuslite.io.generalio import read_input

print(read_input("INPUT"))

Run a short SCF calculation:

from ase.build import bulk
from abacuslite import Abacus, AbacusProfile

atoms = bulk("Si", "diamond", a=5.43)
profile = AbacusProfile(
    command="mpirun -np 2 abacus",   # or the actual ABACUS binary path
    pseudo_dir="/path/to/PP_ORB",
    orbital_dir="/path/to/PP_ORB",
)
atoms.calc = Abacus(
    profile=profile,
    directory="scf-run",
    pseudopotentials={"Si": "Si_ONCV_PBE-1.0.upf"},
    basissets={"Si": "Si_gga_8au_100Ry_2s2p1d.orb"},
    inp={"basis_type": "lcao", "gamma_only": True, "scf_thr": 1e-3},
)
print(atoms.get_potential_energy())

Recent ABACUS develop builds may name the executable abacus_basic_para instead of abacus; point command at the actual binary. Most shipped examples use genelpa; if your build lacks it, set ks_solver to an available solver.

Examples

The source release includes eleven examples. A suggested learning path is SCF, relaxation or MD, then the more specialized workflows. See the usage guide for assets, engine features, cleanup behavior and the complete table.

Example Purpose
scf.py SCF calculation of silicon
relax.py Atomic position relaxation
cellrelax.py Cell relaxation
bandstructure.py Band structure
dos.py Density of states
md.py Molecular dynamics
constraintmd.py Constrained molecular dynamics
metadynamics.py Metadynamics with PLUMED
neb.py Nudged elastic band
soc.py Noncollinear spin-orbit coupling
socketio.py Fixed-cell socket calculations

Documentation

Task Guide
Configure calculators, read output, run examples Usage
Check tested engines and limitations Supported versions
Fix common setup and runtime problems Troubleshooting
Migrate ABACUS/ATST callers Migration
Understand modules and package boundaries Module reference
Check CI and acceptance evidence Compatibility
Set up development and run tests Contributing
Review changes and attribution Changelog, provenance

Authors

Contributors

Acknowledgments

Thanks to the ABACUS community for their support and contributions.

License

Licensed under LGPL-3.0-only. Original attribution and ATST-derived adaptations are recorded in UPSTREAM.md.

Contact

Report issues at QuantumMisaka/abacuslite.

Metadata

Release files for abacuslite 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for abacuslite 1.2.0
File Size Uploaded Provenance
abacuslite-1.2.0.tar.gz 188.3 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for abacuslite 1.2.0
File Interpreter ABI Platform
abacuslite-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 236.6 kB

Release files / abacuslite-1.2.0.tar.gz

Download URL abacuslite-1.2.0.tar.gz
Size 188.3 kB
Tags Source
SHA-256 checksum
How to use checksums
61a238197879136ee59d99651242921850834a3954b8a8b475a34b109a077fe0
BLAKE2b-256 checksum
How to use checksums
865f02a9eeaedee7808fca4813977cde35c860d996b8569122d41c40a6446b54
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

Release files / abacuslite-1.2.0-py3-none-any.whl

Download URL abacuslite-1.2.0-py3-none-any.whl
Size 48.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3e5e245c0a03e8182c2c726d7ccad1c800c20250641abd4b81a8e22e892bc4a0
BLAKE2b-256 checksum
How to use checksums
837cfd97a2a4eb33078e50547163a86e666e8dfc9fabd7d1174df9c5ca0e4d02
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

Security for abacuslite 1.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for abacuslite-1.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page