Crystal symmetry in ASE and spglib

Adam J. Jackson

Link to the tutorial

Learning objectives

In this tutorial you will explore the crystal symmetry features of ASE, and some capabilities of the external library spglib. This will involve

  • generating high-symmetry systems from input data, and
  • analysing the symmetry of existing structures.


The tutorial is primarily self-guided, and provided as a jupyter notebook. Other tutorials at the workshop will also make use of jupyter, and a few tips will be included for working in this environment.

This session is intended to be self-guided with a gentle pace in order to allow some room for questions and troubleshooting.



You need a laptop with a working Python3 environment and recent versions of ASE and spglib. Both can be installed with pip:

pip3 install --user ase spglib

It is also expected that attendees will have access to some structure data relevant to their own research interests.

In order to interact with the notebook file you will need a working Jupyter Notebook or Jupyter Lab installation.

If this is broken or unavailable then it is also possible to follow through the notebook using a web browser and an interactive python terminal: IPython is strongly recommended.