AiiDA plugin for the LAMMPS code
Project description
AiiDA LAMMPS plugin
An AiiDA plugin for the classical molecular dynamics code LAMMPS.
This plugin contains 2 types of calculations:
lammps.base: Calculation making use of parameter based input generation for single stage LAMMPS calculations.lammps.raw: Calculation making use of a pre-made LAMMPS input file.
The lammps.base is also used to handle three workflows:
-
lammps.base: A workflow that can be used to submit any single stage LAMMPS calculation. -
lammps.relax: A workflow to submit a structural relaxation using LAMMPS. -
lammps.md: A workflow to submit a molecular dynamics calculation using LAMMPS.
Installation
To install a stable version from pypi:
pip install aiida-lammps
To install from source:
git clone https://github.com/aiidaplugins/aiida-lammps.git
pip install -e aiida-lammps
Built-in Potential Support
The lammps.base calculation and associated workflows make use of the LammpsPotentialData data structure which is created by passing a potential file, plus some labelling parameters to it.
This data structure can be used to handle the following potential types:
- Single file potentials: Any potential that can be stored in a single file, e.g. EAM, MEAM, Tersoff and ReaxFF.
- Directly parametrized potentials: Potentials whose parameters are directly given via
pair_coeffin the input file, e.g Born, Lennard-Jones and Yukawa. These parameters should be written into a file that is then stored into aLammpsPotentialDatanode.
Examples
More example calculations are found in the folder /examples as well as in the documentation. The examples touch some common cases for the usage of LAMMPS for a single stage calculation.
Development
Running tests
The test suite can be run in an isolated, virtual environment using tox (see tox.ini in the repo):
pip install tox
tox -e 3.9-aiida_lammps -- tests/
or directly:
pip install .[testing]
pytest -v
The tests require that both PostgreSQL and RabbitMQ are running.
If you wish to run an isolated RabbitMQ instance, see the docker-compose.yml file in the repo.
Some tests require that a lammps executable be present.
The easiest way to achieve this is to use Conda:
conda install lammps==2019.06.05
# this will install lmp_serial and lmp_mpi
You can specify a different executable name for LAMMPS with:
tox -e 3.9-aiida_lammps -- --lammps-exec lmp_exec
To output the results of calcjob executions to a specific directory:
pytest --lammps-workdir "test_workdir"
Pre-commit
The code is formatted and linted using pre-commit, so that the code conform to the standard:
cd aiida-lammps
pre-commit run --all
or to automate runs, triggered before each commit:
pre-commit install
License
The aiida-lammps plugin package is released under the MIT license. See the LICENSE file for more details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aiida_lammps-1.0.2.tar.gz.
File metadata
- Download URL: aiida_lammps-1.0.2.tar.gz
- Upload date:
- Size: 308.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.31.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c161e5b926766e440638cec6302c033b840eecb82e2f4c651f932866039b0ffa
|
|
| MD5 |
08dcda915f2893360ee56f5692f30ce4
|
|
| BLAKE2b-256 |
3ed08f4fa3f593010d011afd46e3b440983a77c643a62c608a64598ed1d6b9bd
|
File details
Details for the file aiida_lammps-1.0.2-py3-none-any.whl.
File metadata
- Download URL: aiida_lammps-1.0.2-py3-none-any.whl
- Upload date:
- Size: 60.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.31.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57f8755358c64ad08a30dda1d13ac9e5506d2d56b4a3ac854bac77970c43df6d
|
|
| MD5 |
b3f8fc330026c7547480a2269ca1015b
|
|
| BLAKE2b-256 |
561368a5692d310c56b50c17ac6bf60c582fe6255c41cb55dc8a3b8d47e7bc8d
|