Skip to main content

machine learning interatomic potentials aiida plugin

Project description

Build Status Coverage Status Docs status PyPI version License DOI

aiida-mlip

logo

machine learning interatomic potentials aiida plugin

Features (in development)

  • Supports multiple MLIPs
    • MACE
    • M3GNET
    • CHGNET
  • Single point calculations
  • Geometry optimisation
  • Molecular Dynamics:
    • NVE
    • NVT (Langevin(Eijnden/Ciccotti flavour) and Nosé-Hoover (Melchionna flavour))
    • NPT (Nosé-Hoover (Melchiona flavour))
  • Training ML potentials (MACE only planned)
  • Fine tunning MLIPs (MACE only planned)

The code relies heavily on janus-core, which handles mlip calculations using ASE.

Installation

pip install aiida-mlip
verdi quicksetup  # better to set up a new profile
verdi plugin list aiida.calculations

The last command should show a list of AiiDA pre-installed calculations and the aiida-mlip plugin calculations (mlip.opt, mlip.sp)

Registered entry points for aiida.calculations:
* core.arithmetic.add
* core.templatereplacer
* core.transfer
* mlip.opt
* mlip.sp
* mlip.md
* mlip.train

Usage

A quick demo of how to submit a calculation using the provided example files:

verdi daemon start     # make sure the daemon is running
cd examples/calculations
verdi run submit_singlepoint.py "janus@localhost" --struct "path/to/structure" --architecture mace --model "/path/to/model"    # run singlepoint calculation
verdi run submit_geomopt.py "janus@localhost" --struct "path/to/structure" --model "path/to/model" --steps 5 --fully_opt True # run geometry optimisation
verdi run submit_md.py "janus@localhost" --struct "path/to/structure" --model "path/to/model" --ensemble "nve" --md_dict_str "{'temp':300,'steps':4,'traj-every':3,'stats-every':1}" # run molecular dynamics

verdi process list -a  # check record of calculation

Models can be trained by using the Train calcjob. In that case the needed inputs are a config file containig the path to train, test and validation xyz file and other optional parameters. Running

verdi run submit_train.py

a model will be trained using the provided example config file and xyz files (can be found in the tests folder)

Development

  1. Install poetry
  2. (Optional) Create a virtual environment
  3. Install aiida-mlip with dependencies:
git clone https://github.com/stfc/aiida-mlip
cd aiida-mlip
pip install --upgrade pip
poetry install --with pre-commit,dev,docs  # install extra dependencies
pre-commit install  # install pre-commit hooks
pytest -v  # discover and run all tests

See the developer guide for more information.

Repository contents

License

BSD 3-Clause License

Funding

Contributors to this project were funded by

PSDI ALC CoSeC

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aiida_mlip-0.2.1.tar.gz (20.6 kB view details)

Uploaded Source

Built Distribution

aiida_mlip-0.2.1-py3-none-any.whl (28.8 kB view details)

Uploaded Python 3

File details

Details for the file aiida_mlip-0.2.1.tar.gz.

File metadata

  • Download URL: aiida_mlip-0.2.1.tar.gz
  • Upload date:
  • Size: 20.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.12 Linux/6.5.0-1021-azure

File hashes

Hashes for aiida_mlip-0.2.1.tar.gz
Algorithm Hash digest
SHA256 ca0d2b47ae0118128a8c1a079d63d92ff5fc33d72180db8ed787743865644c3c
MD5 58390701e7fbb3fb4bf916358ae7415d
BLAKE2b-256 ebdd54dd6bc2ffcbd991b4260aa5e589bfc8f59dc64cdbfbd2b7fed522305165

See more details on using hashes here.

File details

Details for the file aiida_mlip-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: aiida_mlip-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 28.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.12 Linux/6.5.0-1021-azure

File hashes

Hashes for aiida_mlip-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1d0bd59084d2e81d111da122698d675d0d4779a150de2269e1a2bb09d14fba24
MD5 2ad4815cd85c0a9aa88a7b5c31a6b0ff
BLAKE2b-256 8bf835dd82dde0f6e599ab99e5b1fa085e69db45041a5b7e7db3bd6807c2585f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page