Invariants¶
This submodule contains functions for calculating the topological invariants from the result of a WCC / Wilson loop calculation.
- z2pack.invariant.chern(surface_result)[source]¶
Computes the Chern number corresponding to a given surface result.
- Parameters:
surface_result (
SurfaceResult
orSurfaceData
) – Result of a WCC calculation on a Surface.
Example code:
result = z2pack.surface.run(...) print(z2pack.invariant.chern(result)) # Prints the Chern number
- z2pack.invariant.z2(surface_result, check_kramers_pairs=True)[source]¶
Computes the \(\mathbb{Z}_2\) invariant corresponding to a given surface result.
- Parameters:
surface_result (
SurfaceResult
orSurfaceData
) – Result of a WCC calculation on a Surface.check_kramers_pairs (bool) – Check whether the WCC at the edge of the surface come in degenerate pairs. This is a requirement for having a well-defined Z2 invariant.
Example code:
result = z2pack.surface.run(...) print(z2pack.invariant.z2(result)) # Prints the Z2 invariant