(git:26ffdda)
Loading...
Searching...
No Matches
topology_wilson Module Reference

Local Wilson-loop linear algebra, independent of the electronic-structure representation. WCC are arg(eigenvalue)/(2*pi), as in Z2Pack. The occupied subspace must be isolated. More...

Functions/Subroutines

subroutine, public chern_from_wcc (wcc, invariant, winding, status, closure_tol)
 First Chern number from determinant Wilson-phase winding on a closed surface. Both transverse endpoints must be present. This is not a Z2 half-surface. The sign follows Z2Pack: increasing transverse coordinate, fixed loop orientation.
logical function, public surface_resolved (wcc)
 Conservative neighbouring-line movement and largest-gap separation checks.
subroutine, public wilson_step (product, overlap, minimum_sv, status, sv_tol)
 Multiply by the unitary polar factor of an overlap. Reject rank-deficient links.
subroutine, public wilson_spectrum (product, wcc, berry, status)
 Sorted Wilson eigenphases in reduced units and total Berry phase in radians.
subroutine, public z2_from_wcc (wcc, invariant, status, pair_tol)
 Largest-gap crossing parity for an ordered time-reversal half-surface. Endpoint degeneracy is necessary but does not establish time-reversal symmetry. Sampling convergence and an isolated fixed-rank subspace must be checked by the caller.
real(kind=dp) function, public wcc_distance (a, b)
 Minimum maximal cyclic matching distance between two WCC sets.

Detailed Description

Local Wilson-loop linear algebra, independent of the electronic-structure representation. WCC are arg(eigenvalue)/(2*pi), as in Z2Pack. The occupied subspace must be isolated.

Function/Subroutine Documentation

◆ chern_from_wcc()

subroutine, public topology_wilson::chern_from_wcc ( real(kind=dp), dimension(:, :), intent(in) wcc,
integer, intent(out) invariant,
real(kind=dp), intent(out) winding,
integer, intent(out) status,
real(kind=dp), intent(in) closure_tol )

First Chern number from determinant Wilson-phase winding on a closed surface. Both transverse endpoints must be present. This is not a Z2 half-surface. The sign follows Z2Pack: increasing transverse coordinate, fixed loop orientation.

Parameters
wccWilson centres, band index first and transverse line second
invariantcandidate integer, meaningful only for status zero
windingunrounded winding
status0 success, -1 invalid data, -2 unclosed surface, -3 unresolved phase step
closure_tolmaximal endpoint WCC mismatch

Definition at line 36 of file topology_wilson.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ surface_resolved()

logical function, public topology_wilson::surface_resolved ( real(kind=dp), dimension(:, :), intent(in) wcc)

Conservative neighbouring-line movement and largest-gap separation checks.

Parameters
wcccentres, band index first and surface-line index second
Returns
whether the sampled surface is locally resolved (not a proof between samples)

Definition at line 75 of file topology_wilson.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ wilson_step()

subroutine, public topology_wilson::wilson_step ( complex(kind=dp), dimension(:, :), intent(inout) product,
complex(kind=dp), dimension(:, :), intent(in) overlap,
real(kind=dp), intent(out) minimum_sv,
integer, intent(out) status,
real(kind=dp), intent(in) sv_tol )

Multiply by the unitary polar factor of an overlap. Reject rank-deficient links.

Parameters
productrunning Wilson matrix
overlapoverlap between adjacent occupied subspaces
minimum_svsmallest singular value of this link
statuszero on success; negative for invalid/singular input; positive LAPACK failure
sv_tolrank tolerance

Definition at line 114 of file topology_wilson.F.

Here is the caller graph for this function:

◆ wilson_spectrum()

subroutine, public topology_wilson::wilson_spectrum ( complex(kind=dp), dimension(:, :), intent(in) product,
real(kind=dp), dimension(:), intent(out) wcc,
real(kind=dp), intent(out) berry,
integer, intent(out) status )

Sorted Wilson eigenphases in reduced units and total Berry phase in radians.

Parameters
productWilson matrix
wccsorted centres in [0,1)
berryBerry phase in [-pi,pi)
statuszero on success

Definition at line 150 of file topology_wilson.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ z2_from_wcc()

subroutine, public topology_wilson::z2_from_wcc ( real(kind=dp), dimension(:, :), intent(in) wcc,
integer, intent(out) invariant,
integer, intent(out) status,
real(kind=dp), intent(in) pair_tol )

Largest-gap crossing parity for an ordered time-reversal half-surface. Endpoint degeneracy is necessary but does not establish time-reversal symmetry. Sampling convergence and an isolated fixed-rank subspace must be checked by the caller.

Parameters
wccWilson centres, band index first and surface-line index second
invariantZ2 parity, or -1 if checks fail
status0 success, -1 invalid input, -2 missing Kramers pairs, -3 ambiguous crossing
pair_toltolerance on boundary Kramers degeneracy, in reduced units

Definition at line 182 of file topology_wilson.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ wcc_distance()

real(kind=dp) function, public topology_wilson::wcc_distance ( real(kind=dp), dimension(:), intent(in) a,
real(kind=dp), dimension(:), intent(in) b )

Minimum maximal cyclic matching distance between two WCC sets.

Parameters
afirst WCC set
bsecond WCC set
Returns
distance, or huge if sizes differ

Definition at line 228 of file topology_wilson.F.

Here is the call graph for this function:
Here is the caller graph for this function: