https://github.com/pyiron/pyiron
pyiron - an integrated development environment (IDE) for computational materials science.
https://github.com/pyiron/pyiron
ab-initio ase development-environment dft hdf5 ide lammps molecular-dynamics pyiron python simulation vasp
Last synced: 29 days ago
JSON representation
pyiron - an integrated development environment (IDE) for computational materials science.
- Host: GitHub
- URL: https://github.com/pyiron/pyiron
- Owner: pyiron
- License: bsd-3-clause
- Created: 2018-03-22T13:14:40.000Z (about 8 years ago)
- Default Branch: main
- Last Pushed: 2025-10-13T12:29:43.000Z (6 months ago)
- Last Synced: 2026-03-07T18:57:21.508Z (about 1 month ago)
- Topics: ab-initio, ase, development-environment, dft, hdf5, ide, lammps, molecular-dynamics, pyiron, python, simulation, vasp
- Language: Jupyter Notebook
- Homepage: http://pyiron.org
- Size: 45.1 MB
- Stars: 443
- Watchers: 16
- Forks: 55
- Open Issues: 5
-
Metadata Files:
- Readme: README.rst
- Contributing: CONTRIBUTING.rst
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Citation: CITATION.cff
Awesome Lists containing this project
README
pyiron
======
.. image:: https://anaconda.org/conda-forge/pyiron/badges/latest_release_date.svg
:target: https://anaconda.org/conda-forge/pyiron/
:alt: Release_Date
.. image:: https://github.com/pyiron/pyiron/actions/workflows/notebooks.yml/badge.svg
:target: https://github.com/pyiron//pyiron/actions
:alt: Build Status
.. image:: https://anaconda.org/conda-forge/pyiron/badges/downloads.svg
:target: https://anaconda.org/conda-forge/pyiron/
:alt: Downloads
.. image:: https://readthedocs.org/projects/pyiron/badge/?version=latest
:target: https://pyiron.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status
.. image:: https://img.shields.io/github/stars/pyiron/pyiron
:target: https://github.com/pyiron/pyiron
:alt: pyiron repository
.. image:: docs/_static/screenshot.png
:align: center
:alt: Screenshot of pyiron running inside jupyterlab.
pyiron - an integrated development environment (IDE) for computational materials science. It combines several tools in a common platform:
- Atomic structure objects – compatible to the `Atomic Simulation Environment (ASE) `_.
- Atomistic simulation codes – like `LAMMPS `_ and `VASP `_.
- Feedback Loops – to construct dynamic simulation life cycles.
- Hierarchical data management – interfacing with storage resources like SQL and `HDF5 `_.
- Integrated visualization – based on `NGLview `_.
- Interactive simulation protocols - based on `Jupyter notebooks `_.
- Object oriented job management – for scaling complex simulation protocols from single jobs to high-throughput simulations.
pyiron (called pyron) is developed in the `Computational Materials Design department `_ of `Joerg Neugebauer `_ at the `Max Planck Institut für Eisenforschung (Max Planck Institute for iron research) `_. While its original focus was to provide a framework to develop and run complex simulation protocols as needed for ab initio thermodynamics it quickly evolved into a versatile tool to manage a wide variety of simulation tasks. In 2016 the `Interdisciplinary Centre for Advanced Materials Simulation (ICAMS) `_ joined the development of the framework with a specific focus on high throughput applications. In 2018 pyiron was released as open-source project.
See the `Documentation `_ page for more details.
.. note::
**pyiron**: This is the documentation page for the pyiron meta package, that combines the other packages in a common
interface. The API documentation for `pyiron_base `_ and
`pyiron_atomistics `_ are available as separate pages.
Installation
------------
You can test pyiron on `Mybinder.org (beta) `_.
For a local installation we recommend to install pyiron inside an `anaconda `_ environment::
conda install -c conda-forge pyiron
After the installation of pyiron you need to configure pyiron. The default configuration can be generated automatically. Start a new Python session and import pyiron::
> import pyiron
> pyiron.install()
>>> It appears that pyiron is not yet configured, do you want to create a default start configuration (recommended: yes). [yes/no]:
> yes
> exit()
See the `Documentation-Installation `_ page for more details.
Example
-------
After the successful configuration you can start your first pyiron calculation. Navigate to the the projects directory and start a jupyter notebook or jupyter lab session correspondingly::
cd ~/pyiron/projects
jupyter notebook
Open a new jupyter notebook and inside the notebook you can now validate your pyiron calculation by creating a test project, setting up an initial structure of bcc Fe and visualize it using NGLview::
from pyiron import Project
pr = Project('test')
structure = pr.create_structure('Fe', 'bcc', 2.78)
structure.plot3d()
Finally a first lammps calculation can be executed by::
job = pr.create_job(job_type=pr.job_type.Lammps, job_name='lammpstestjob')
job.structure = structure
job.potential = job.list_potentials()[0]
job.run()
Getting started:
----------------
Test pyiron with mybinder:
.. image:: https://mybinder.org/badge_logo.svg
:target: https://mybinder.org/v2/gh/pyiron/pyiron/main
:alt: mybinder
License and Acknowledgments
---------------------------
``pyiron`` 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},
}