Git Product home page Git Product logo

matgenb's Introduction

Visit the Github Pages for a nicely formatted HTML page and notebook search functionality.

Introduction

This repo is started by the Materials Virtual Lab as a useful collection of Jupyter notebooks that demonstrate the utilization of open-source codes for the study of materials science.

We frequently get requests (from students, postdocs, collaborators, or just general users) for example codes that demonstrate various capabilities in the open-source software we maintain and contribute to, such as the Materials Project software stack comprising Python Materials Genomics (pymatgen), Custodian, and Fireworks. This repo is a start at building a more sustainable path towards sharing of code examples.

It is not limited to the codes we develop - any use of open source software for materials analysis is welcome. Also, anyone is welcome to contribute.

Contributing

  1. Fork this repo and clone.
git clone [email protected]:m<your_github_username>/matgenb.git
cd matgenb
  1. Write a new notebook in the notebooks folder.
cd notebooks
jupyter notebook
  1. Notebooks should be well-documented and simple. The idea here is to be pedagogical. A newcomer to the software (with the right materials science background) should be able to follow the logic without too much difficulty. Feel free to add authorship and contact information, as well as works to cite and acknowledge your contributions. In view that scientific codes tend to be continuously being updated, please put in a list of the key pinned dependencies so that other users can install the exact version of software to run the notebook if needed. Ideally, please update notebooks as needed to use more modern versions of the codes, and you may update the date of the notebook as needed. An example preamble can be:

This notebook demonstrates the core functionality in pymatgen for manipulating structures. Written with:

  • pymatgen==2018.1.1
  1. Notebooks should be placed in the notebooks folder, and the name should start with the date in YYYY-MM-DD-<intuitive title> format. See existing examples.
  2. In the root folder of the repo, convert the jupyter notebooks to html.
jupyter nbconvert --to html notebooks/*.ipynb --output-dir docs/_posts
  1. Commit and push.
git add .
git commit -a -m "Describe your contribution"
git push
  1. Submit a pull request from Github.

matgenb's People

Contributors

shyuep avatar jageo avatar montoyjh avatar dwinston avatar

Watchers

James Cloos avatar

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.