Vector-oriented LAMMPS interface to rapidly iterate over series of atomistic structures or interatomic potentials.
Project description
pyiron_lammps
Disclaimer
The pyiron_lammps
package is under development.
Idea
- The
pyiron_lammps
package is designed to calculate concentration dependent material properties, like the elastic constants, energy-volume curves and phonons for interatomic potentials. - It uses
mpi4py
for parallel execution, does not write any files to the file system and does not use any database. With this combination is it one order of magnitude faster than competing software packages for evaluating material properties for interatomic potentials. - In contrast to all other
pyiron_*
packages,pyiron_lammps
does not depent onpyiron_base
. Overall the dependencies are designed to be minimal.
Example
import pyiron_lammps as pyr
# Generate SQS Structure
structure = pyr.generate_sqs_structure(
structure_template=pyr.get_ase_bulk("Al", cubic=True).repeat([3,3,3]),
element_lst=["Fe", "Ni", "Cr", "Co", "Cu"],
count_lst=[22, 22, 22, 21, 21]
)[0]
# Select Potential
potential = '2021--Deluigi-O-R--Fe-Ni-Cr-Co-Cu--LAMMPS--ipr1'
df_pot = pyr.get_potential_dataframe(
structure=structure,
resource_path="/Users/janssen/mambaforge/share/iprpy"
)
df_pot_selected = df_pot[df_pot.Name==potential].iloc[0]
# Optimize Structure
structure_opt = pyr.optimize_structure(
structure=structure,
potential_dataframe=df_pot_selected
)
# Calculate Elastic Constants
elastic_matrix = pyr.calculate_elastic_constants(
structure=structure_opt,
potential_dataframe=df_pot_selected,
num_of_point=5,
eps_range=0.005,
sqrt_eta=True,
fit_order=2
)
print(elastic_matrix)
Features
generate_sqs_structure
- generate an SQS structure usingsqsgenerator
.get_ase_bulk
- create anase.build.bulk
structure.get_lammps_engine
- create anLAMMPS
instance, these instances can then be shared between multiple serial calculation.get_potential_dataframe
- load dataframe of suitable interatomic potentials for the selected atomistic structure from the NIST database.optimize_structure
- optimize thecell
and thepositions
of a given structure, while maintaining the cell shape.calculate_elastic_constants
- calculate the elastic constants.calculate_elastic_constants_with_minimization
- combine the structure optimization and the calculation of the elastic constants.optimize_structure_parallel
- optimize a list of atomistic structures all with the same interatomic potential.calculate_elastic_constants_parallel
- calculate the elastic constants for a list of atomistic structures.calculate_elastic_constants_with_minimization_parallel
- combine the structure optimization and the calculation of the elastic constants for a list of atomistic structures.
License and Acknowledgments
pyiron_lammps
is licensed under the BSD license.
If you use pyiron in your scientific work, please consider citing:
@article{pyiron-paper,
title = {pyiron: An integrated development environment for computational materials science},
journal = {Computational Materials Science},
volume = {163},
pages = {24 - 36},
year = {2019},
issn = {0927-0256},
doi = {https://doi.org/10.1016/j.commatsci.2018.07.043},
url = {http://www.sciencedirect.com/science/article/pii/S0927025618304786},
author = {Jan Janssen and Sudarsan Surendralal and Yury Lysogorskiy and Mira Todorova and Tilmann Hickel and Ralf Drautz and Jörg Neugebauer},
keywords = {Modelling workflow, Integrated development environment, Complex simulation protocols},
}
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
pyiron_lammps-0.2.14.tar.gz
(13.7 kB
view details)
Built Distribution
File details
Details for the file pyiron_lammps-0.2.14.tar.gz
.
File metadata
- Download URL: pyiron_lammps-0.2.14.tar.gz
- Upload date:
- Size: 13.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.0 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d1ce3e5f4b3a75b3f6f766834219ca7401fef02cb9b46d7ed6e99e6fcf285307 |
|
MD5 | ee97d0b05f1b1aa2aec3298e1baa655a |
|
BLAKE2b-256 | f1b3a8e7d13c3cfd2f71daaef0679f7eb0f0ced73171f4d519afff9e7f96d027 |
File details
Details for the file pyiron_lammps-0.2.14-py3-none-any.whl
.
File metadata
- Download URL: pyiron_lammps-0.2.14-py3-none-any.whl
- Upload date:
- Size: 17.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.0 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9d24b12e949688eb549df7211669fbb092be2c9be64489fe1ea2fe111ed3ebfb |
|
MD5 | 92c40c7585c42c1cb21ffa1342324963 |
|
BLAKE2b-256 | b55625d83e3d19d8f7408e4e0133b764b1eecc2c3ee8c7887a8073e268f0c8d2 |