pyMolDyn is a viewer for atomic clusters, crystalline and amorphous materials in a unit cell corresponding to one of the seven 3D Bravais lattices. The program calculates cavities (vacancies, voids) according to three definitions.

pyMolDyn GUI


  • Interactive viewer based on GR3
  • Computation of cavities in all seven 3D Bravais lattice systems
  • Creation of high resolution images appropriate for publications
  • Video creation from a set of input frames to analyze cavity changes in materials over time
  • Statistics including
    • Surfaces, volumes and surface/volume ratios of cavities and domains
    • Pair distribution functions (including cavities), bonds, bond (dihedral) angles
    • Gyration tensor, asphericity, acylindricity
  • Filter for atoms and cavities
  • Batch mode for simultaneous processing of multiple files


Further information on supported input formats and the Bravais lattice systems can be found on the pyMolDyn documentation page.

Short introductions to the gui version and the command line interface are also available.


At PGI/JCNS pyMolDyn is installed centrally on all Linux machines and Macs. For other users, we offer a Mac OS X app bundle, a package repository for several Linux distributions and a github source code repository.

Mac OS X

Current version: 0.9.7

DMG intaller with self contained app bundle (runnable out of the box; tested on Mavericks, Yosemite, El Capitan and Sierra, file size: 262 MB)


Current version 0.9.7

Add our package repository and install pyMolDyn (as root user):

Debian 8 Jessie / Ubuntu 16.04 LTS Xenial / Ubuntu 17.04 Zesty (64 bit)

curl -L | apt-key add -
echo 'deb jessie main' > /etc/apt/sources.list.d/iffrepo.list
apt-get update
apt-get install pymoldyn

Centos 7 (64 bit)

curl -LO
rpm --import iffrepo.gpg.key
echo -e '[iffrepo]\nname=iffrepo\nbaseurl=$basearch\nenabled=1' > /etc/yum.repos.d/iff.repo
yum install epel-release
yum install pymoldyn

Fedora 25 (64 bit)

curl -LO
rpm --import iffrepo.gpg.key
echo -e '[iffrepo]\nname=iffrepo\nbaseurl=$basearch\nenabled=1' > /etc/yum.repos.d/iff.repo
yum install pymoldyn

OpenSUSE Leap 42.1 / 42.2 (64 bit)

curl -LO
rpm --import iffrepo.gpg.key
zypper addrepo -f '$basearch' iffrepo
zypper install pymoldyn

Afterwards pymoldyn can be run from a terminal or from your application menu.

Source Code

For obtaining source code tarballs, please visit our public git repository at

Running the development version on Linux

  • Install python2 with header files and pip (e.g. python2-dev, python-pip on Debian/Ubuntu)

  • Install the virtualenv utility for Python 2:

    sudo python2 -m pip install virtualenv
  • Install the gr framework, prebuilt packages can be found at

  • Install PyQt5 for Python 2 (e.g. python-pyqt5 on Debian/Ubuntu)

  • Clone pyMolDyn source code:

    git clone
    cd pyMolDyn
    git checkout develop
  • Install pyMolDyn dependencies:

    cd src
    python2 -m virtualenv --system-site-packages env
    source env/bin/activate
    pip install pyqt5 gr h5py jinja2 pyopengl python-dateutil
  • Compile pyMolDyn C extensions:

  • Start pyMolDyn:


Running the development version on macOS

  • Install XCode (and start XCode once to accept the license)

  • Install Miniconda2

  • Install the gr framework:

    curl -O -L
    tar -xvf gr-latest-Darwin-x86_64.tar.gz
    sudo cp -rv gr /usr/local/
  • Install pyMolDyn dependencies:

    /opt/miniconda2/bin/conda install pyqt h5py pyopengl jinja2
    /opt/miniconda2/bin/pip install python-dateutil gr
  • Clone pyMolDyn source code:

    git clone
    cd pyMolDyn
    git checkout develop
  • Compile pyMolDyn C extensions:

    cd src
    export CONDA_PREFIX=/opt/miniconda2
  • Start pyMolDyn:


How to cite

I. Meyer, F. Rhiem, F. Beule, D. Knodt, J. Heinen, R. O. Jones: pyMolDyn: Identification, structure, and properties of cavities/vacancies in condensed matter (J. Comput. Chem. 2017, 38, 389–394. DOI: 10.1002/jcc.24697)

pyMolDyn at EuroScipy 2016

A poster about the implemented pyMolDyn algorithms was presented at the EuroScipy 2016.


For questions, bug reports or feature requests please contact Ingo Meyer (software maintainer).