From rapid prototyping to high-performance computing in material science
| Website 🌐 | Documentation 📚 | Workshops 🧑🏫 | Questions 💬 | Publications 📝 |
|---|---|---|---|---|
| pyiron.org | pyiron.readthedocs.io | workshop.pyiron.org | pyiron/FAQs | Using pyiron |
This project is supported by German and European digitalization initiatives in the field of materials science:
| Material Digital | NFDI Matwerk | MaterialsCommons |
|---|
The pyiron developers closely collaborate with workflow standardization initiatives and the Python scientific computing community to establish Python functions as workflow nodes:
| Python Workflow Definition | Workflows.community | NumFocus |
|---|
The stable pyiron version is developed based on the generic job object class to handle the execution and storage of atomistic calculations and their post-processing.
| Repository | Description | Coverage | Documentation | Conda Package |
|---|---|---|---|---|
| pyiron | A meta package which seamlessly loads all installed pyiron plugins. Still it is recommended to install pyiron_atomistics directly rather than pyiron. |
📚 | 📦 | |
| pyiron_atomistics | An interface to atomistic simulation codes including but not limited to GPAW, LAMMPS, S/Phi/nX and VASP. It is compatible to the atomistic simulation environment and extends its functionality. | 📚 | 📦 | |
| pyiron_base | A package containing the core components e.g. the job management, data storage and resource management. With the @job decorator every Python function can be converted into a pyiron job object. |
📚 | 📦 | |
| pyiron_potentialfit | Fit machine learning interatomic potentials using pyiron. | 📦 |
Based on the experience with the stable pyiron version and the success of the standalone packages, the pyiron framework continues to innovate in the field of workflows for materials science.
| Repository | Description | Coverage | Documentation | Conda Package |
|---|---|---|---|---|
| ironflow | Prototype of a graphical user interface for pyiron (not under active development) | 📦 | ||
| pyiron_workflow | Graph-and-node based workflows | 📚 | 📦 | |
| pyironFlow | React xyflow based visual programming interface for pyiron_workflow | 📚 | 📦 |
To increase the maintainability of the pyiron project, there is a continuous release of spin-off packages which are used inside pyiron, but which can also be used as stand-alone packages:
| Repository | Description | Coverage | Documentation | Conda Package |
|---|---|---|---|---|
| atomistics | Interfaces for atomistic simulation codes and workflows | 📚 | 📦 | |
| bagofholding | Pickle-like storage for python objects with browsing, version control, and partial loading . | 📚 | 📦 | |
| conda_subprocess | Run a subprocess or python function in a separate conda environment. | 📦 | ||
| executorlib | Up-scale python functions for high-performance computing (HPC) | 📚 | 📦 | |
| pyfileindex | Pythonic file system index | 📦 | ||
| pyiron_lammps | Parser for LAMMPS input and output files. | 📦 | ||
| pyiron_ontology | Leveraging ontologies for dynamic typing and guided workflow design | 📚 | 📦 | |
| pyiron_snippets | Short, dependency-free pieces of code that are useful for pyiron (and python in general) | 📚 | 📦 | |
| pyiron_vasp | Parser for the Vienna Ab initio Simulation Package (VASP). | 📦 | ||
| pylammpsmpi | Parallel Lammps Python interface - control a mpi4py parallel LAMMPS instance from a serial python process or a Jupyter notebook. | 📦 | ||
| pysqa | Simple HPC queuing system adapter for Python on based jinja templates to automate the submission script creation. | 📚 | 📦 | |
| semantikon | Provide type hinting and interpreters for scientific context on node inputs and outputs. | 📦 | ||
| sphinx_parser | Parser for the S/PHI/nX DFT simulation code. | 📦 | ||
| structuretoolkit | Build, analyse and visualise atomistic structures for materials science. | 📦 |