A Python package for machine learning potentials with LAMMPS.
Documentation page: https://fitsnap.github.io
Colab Python notebook tutorial: https://colab.research.google.com/github/FitSNAP/FitSNAP/blob/master/tutorial.ipynb
How to cite
Rohskopf et al., (2023). FitSNAP: Atomistic machine learning with LAMMPS. Journal of Open Source Software, 8(84), 5118, https://doi.org/10.21105/joss.05118
Dependencies:
- This package expects Python 3.10+
- Python dependencies: See
pyproject.toml - Compile LAMMPS as a shared library with python support.
If you can run
import lammps; lmp = lammps.lammps()without errors in your Python interpreter, you're good to go! - [Optional] To use neural network fitting functionality, install PyTorch.
- [Optional] For optimal performance, also install your favorite flavor of MPI (OpenMPI, MPICH) and
the Python package
mpi4py. If installing mpi4py with a Python package manager, we recommend using pip over conda as pip will auto-configure your package to your system's defaut MPI version (usually what you used to build LAMMPS). - [Optional] For atomic cluster expansion (ACE) capabilities, build LAMMPS with the ML-PACE package,
along with the
compute_pacefiles from https://github.com/jmgoff/lammps-user-pace
Quick install (minimal working environment) using Conda:
WARNING: Conda LAMMPS installation does NOT include ACE. See the docs for details on how to install the current LAMMPS which has these functionalities.
- Add conda-forge to your conda install, if not already added:
conda config --add channels conda-forge - Create a new conda environment:
conda create -n fitsnap python=3.9; conda activate fitsnap; - Install the following packages:
conda install -c conda-forge lammps fitsnap3
Running:
(mpirun -np #) python -m fitsnap3 [options] infile- Command line options can be seen with
python -m fitsnap3 -h - Examples of published SNAP interatomic potentials are found in
examples/ - Examples of running FitSNAP via the library interface are found in
examples/library
Contributing:
- See our Programmer Guide on how to add new features.
- Abide by our code standards by installing
flake8and runningflake8 --statisticsin the top directory. - Get Sphinx with
pip install sphinx sphinx_rtd_themefor adding new documentation, and seedocs/README.mdfor how to build docs for your features. - Feel free to ask for help!
About
- Mitchell Wood and Aidan Thompson co-lead development of FitSNAP since 2016.
- The FitSNAP Development Team is the set of all contributors to the FitSNAP project, including all subprojects.
- The core development of FitSNAP is performed at the Center for Computing Research (CCR), Sandia National Laboratories, Albuquerque, New Mexico, USA
- The original prototype of FitSNAP was developed in 2012 under a CIS LDRD project.
Copyright (2016) Sandia Corporation. Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains certain rights in this software. This software is distributed under the GNU General Public License
Release files for fitsnap3 3.1.0.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| fitsnap3-3.1.0.4.tar.gz | 175.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fitsnap3-3.1.0.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 396.5 kB
Release files / fitsnap3-3.1.0.4.tar.gz
| Download URL | fitsnap3-3.1.0.4.tar.gz |
|---|---|
| Size | 175.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
80f08cbc24ca99eec05e117971e5284b8535c6e0d03a603668581b7efa025e7b
|
|
BLAKE2b-256 checksum How to use checksums |
c81ba1ed59a0fb0004c9d25f00174a32727e6fcfac89c49edfd1232454a70b29
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.6
|
Release files / fitsnap3-3.1.0.4-py3-none-any.whl
| Download URL | fitsnap3-3.1.0.4-py3-none-any.whl |
|---|---|
| Size | 221.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0b867eea8de475c3a5fe66474aba4d188a5094892b60a7f0490e87c886980e36
|
|
BLAKE2b-256 checksum How to use checksums |
6851339d0f794c84a5f3ef0968df1fd9e4d0628f75a4ecab5bcd8f54e7b93bae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.6
|