Skip to content
A physics computational framework for python and ipython
Branch: master
Clone or download
Latest commit edc2294 Jan 31, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.docker Life is short and does not need python2 Oct 27, 2018
cmake_modules Have to specify kernel explictly Jun 9, 2018
config dependency on mpi4py is only in tests Jun 11, 2018
crystal Replaced exceptions with version checks Dec 17, 2018
decorations 🚑 not sure decorations can be trusted Jan 19, 2017
errors Ran autopep8 on most python files Mar 8, 2016
espresso use fixure as argument rather than directly Jan 27, 2019
ewald update fortran and c++ builds Nov 1, 2018
ipython Remove import of the Pylada class in scattered Jul 26, 2018
jobfolder Changing logging levels Aug 8, 2016
misc Using py.path rather than homegrown Apr 11, 2016
notebooks notebook tests were not running in tmpdir Aug 15, 2018
periodic_table getargspec -> getfullargspec, removes deprecation Oct 27, 2018
physics xrange -> range Mar 8, 2016
process tests disable themselves if mpi4py is absent Oct 27, 2018
python Using py.path rather than homegrown Apr 11, 2016
sphinx-doc Using py.path rather than homegrown Apr 11, 2016
tools incorrectly gitted part of a file Jan 27, 2019
vasp last magmom test passes Oct 27, 2018
.clang-format Adding third_order + regression test Mar 8, 2016
.gitattributes Add a .gitattributes file Jun 26, 2014
.gitignore Ignoring pytest cache Jun 6, 2018
.gitlab-ci.yml Try and use dockerhub registry in gitlab ci Oct 27, 2018
.travis.yml Typo in travis Oct 27, 2018
CMakeLists.txt update fortran and c++ builds Nov 1, 2018
LICENSE.txt Adding License txt Jun 14, 2014 Trying to install data when doing pip install Jun 14, 2014 Update build files Mar 8, 2016
README.rst Adding some notebooks Aug 8, 2016 dependency on mpi4py is only in tests Jun 11, 2018



A python computational physics framework.

Minimal version of pylada necessary to just run the crystal,VASP,ewald,jobs,and database modules

Constructed by Peter Graf from Mayeul d'Avezac's pylada


There are some IPython notebooks in the notebooks subdirectory. And documentation can be found [online](, though somewhat out of date. Notably, it does not describe the PWSCF wrapper.

For more examples, look at the tests in each subfolder, and at the BDD scenarios in the espresso/tests/bdd/features folder.

Finally, do join us on [slack]( Send one of the authors an email if you need access.


There are currently two pre-requisites:

  • CMake, a cross-platform build system
  • git, a distributed version control system

Both are generally available on Linux and OS/X (via homebrew for instance).

The simplest approach is to install via pip:

  • global installation

    pip install git+
  • local (user) installation

    pip install --user git+
  • in a virtual environment

    mkvirtualenv --system-site-packages pylada
    source pylada/bin/activate
    pip install git+

    This last approach is recommended since it keeps the pylada environment isolated from the rest of the system. Susbsequently, this environment can be accessed by running the second line.

Installation for development

There are two approaches for developping with pylada. One is to use the bare-bone cmake build system. The other is to two have pip setup the cmake system for you.

In either case, the source should first be obtained from the github repo.

  • bare-bone

    cd /path/to/source
    mkdir build
    cd build
    cmake ..
    make test

    The usual cmake options apply. In order to facilitate debugging, a script :bash:`` exists in the build directory to a run a python session that will know where to find the pylada package that is being developped. For instance :bash:`./ -m IPython` will launch an ipython session where the current pylada can be imported.

  • pip develop

    mkvirtualenv --system-site-packages pylada
    source pylada/bin/activate
    pip install -e git+
    cd pylada/src/pylada/build
    make test

    The above creates a virtual environment and installs pylada inside it in development mode. This means that the virtual environment will know about the pylada flavor in development. It is possible to edit a file, do :bash:`make`, launch python and debug. One just needs to active the virtual environment once per session.

You can’t perform that action at this time.