Z2Pack

is a tool for calculating topological invariants. The method is based on tracking the evolution of hybrid Wannier functions, which is equivalent to the computation of the Wilson loop. Originally developed for calculating \(\mathbb{Z}_2\) invariants, it is now also capable of calculating Chern numbers. Moreover, through the use of individual Chern numbers it can be used to identify any kind of topological phase.

A key feature of Z2Pack is its flexibility: It can be used with various kinds of calculations and models. Currently, interfaces to first-principles codes, tight-binding models and \(\mathbf{k \cdot p}\) models are implemented. However, it can in principle be extended to any kind of system.

This is the second major release of Z2Pack. Read here what’s new, and find out which version is best for you.

Please cite

  • Dominik Gresch, Gabriel Autès, Oleg V. Yazyev, Matthias Troyer, David Vanderbilt, B. Andrei Bernevig, and Alexey A. Soluyanov “Z2Pack: Numerical Implementation of Hybrid Wannier Centers for Identifying Topological Materials” [PhysRevB.95.075146]

  • Alexey A. Soluyanov and David Vanderbilt “Computing topological invariants without inversion symmetry” [PhysRevB.83.235401]

Parts of the documentation

start here

feel free to copy and paste

detailed description of the classes and functions

getting involved

slides and exercises from workshops and talks

where to go next

Getting in touch

The development version of Z2Pack is hosted on GitHub . If you have a suggestion or have found a bug in the code, please post an issue there. For general questions, you can write to the Z2Pack mailing list z2pack@lists.phys.ethz.ch . Send me an email if you would like to subscribe to the mailing list. An archive of the mailing list is also available.

Indices and tables

list of all functions and classes

list of all modules and submodules