Need help with pyiron?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

pyiron
141 Stars 25 Forks BSD 3-Clause "New" or "Revised" License 7.0K Commits 6 Opened issues

Description

pyiron - an integrated development environment (IDE) for computational materials science.

Services available

!
?

Need anything else?

Contributors list

pyiron

.. image:: https://coveralls.io/repos/github/pyiron/pyiron/badge.svg?branch=master :target: https://coveralls.io/github/pyiron/pyiron?branch=master :alt: Coverage Status

.. image:: https://api.codacy.com/project/badge/Grade/c513254f10004df5a1f5c76425c6584b :target: https://app.codacy.com/app/pyiron-runner/pyiron?utmsource=github.com&utmmedium=referral&utmcontent=pyiron/pyiron&utmcampaign=BadgeGradeSettings :alt: Codacy Badge

.. image:: https://anaconda.org/conda-forge/pyiron/badges/latestreleasedate.svg :target: https://anaconda.org/conda-forge/pyiron/ :alt: Release_Date

.. image:: https://github.com/pyiron/pyiron/workflows/Python%20package/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:: 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.

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/master :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}, }

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.