Giter VIP home page Giter VIP logo

pyiron-resources's Introduction

pyiron

Coverage Status

Codacy Badge

Release_Date

Build Status

Downloads

Documentation Status

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:

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},
}

pyiron-resources's People

Contributors

ahmed-aslam avatar jan-janssen avatar lxknll avatar max-hassani avatar pmrv avatar srmnitc avatar sudarsan-surendralal avatar yury-lysogorskiy avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pyiron-resources's Issues

GITHUB_TOKEN missing

The github token for the repository is missing. That is why the deployment workflow here failed. I will add the token from pyiron_runner user as a secret to this repo.

Current LAMMPS executables aren't compiled with the h5md tag

Summary

I am trying to dump the outputs from LAMMPS using dump h5md command. However, when the jobs are submitted, it shows “ERROR: Unrecognized dump style 'h5md' is part of the USER-H5MD package which is not enabled in this LAMMPS binary. (src/output.cpp:570)”. I've tried two LAMMPS executables, lmp_serial and lmp_mpi, which are located in /u/system/SLES12/soft/pyiron/dev/anaconda3/bin/. Neither of them works.

pyiron Version and Platform

python 3.7.9
pyiron 0.4.4

Expected Behavior

LAMMPS succeeds to dump hdf5 file.

Actual Behavior

ERROR: Unrecognized dump style 'h5md' is part of the USER-H5MD package which is not enabled in this LAMMPS binary. (src/output.cpp:570)

Steps to Reproduce

Adding the following keywords in control.inp

dump 1 all h5md ${dumptime} dump.h5 position force create_group yes

Further Information, Files, and Links

Packages with extra build options for LAMMPS

Sphinx in the Windows sub system

Joerg noticed that the Sphinx executables give the following error when executed in the windows sub system:

mkfifo: cannot create fifo 'sxctrl': Operation not permitted 
mkfifo: cannot create fifo 'sxres': Operation not permitted 
rm: cannot remove 'sxres': No such file or directory 
rm: cannot remove 'sxctrl': No such file or directory 

This can be overcome with:
microsoft/WSL#3962

Still we should find a way to create the named pipes only when required or suppress the error message in the windows subsystem.

@samwaseda any comments on this?
@sudarsan-surendralal as I do not have a windows subsystem enabled computer, can you help with testing this?

workflow to enable additional SPHInX version on the MPIE cluster

Summary

I would like to provide scripts to request the SPHInX 3.0 version on the cmti/cmfe cluster. How do I do that?

Detailed Description

I assume I must somehow place this in .../pyiron-resources-cmmc/sphinx/bin/ in the pyiron dev installation on the cluster. Yet, I have no write permissions there myself.
Should I submit my version to the pyiron-resources repo and then ask someone to update the cluster version? Or is there a different workflow?

I assume that I should start from the existing scripts (which claims to run 2.6.2, but effectively runs 2.7.1) and adapt it.

Further Information, Files, and Links

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.