Internal

TopologicalNumbers.SecondChernPhase!Method
SecondChernPhase!(v; parallel::T=UseSingleThread()) where {T<:TopologicalNumbersParallel}

This function updates the second Chern number for the given system v. The parallel argument specifies whether to use parallel computation or not.

Arguments

  • v: The system to compute the second Chern number for.
  • parallel: (optional) The parallel computation mode. Default is UseSingleThread().

Example

source
TopologicalNumbers.SecondChernPhaseMethod
SecondChernPhase(p; parallel::T=UseSingleThread()) where {T<:TopologicalNumbersParallel}

Main function to execute the simulation and calculate the second Chern number.

Arguments

  • p: Parameters for the simulation.
  • parallel: Parallelization strategy. Default is UseSingleThread().

Returns

  • chern: The second Chern number.
source
TopologicalNumbers.householder_complex!Method
(tau, alpha) = householder_complex!(v, x)

Compute a Householder transformation such that (1-tau v v^T) x = alpha e1 where x and v a complex vectors, tau is 0 or 2, and alpha a complex number (e1 is the first unit vector)

source
TopologicalNumbers.householder_complexMethod
(v, tau, alpha) = householder_complex(x)

Compute a Householder transformation such that (1-tau v v^T) x = alpha e1 where x and v a complex vectors, tau is 0 or 2, and alpha a complex number (e1 is the first unit vector)

source
TopologicalNumbers.householder_real!Method
(tau, alpha) = householder_real!(v, x)

Compute a Householder transformation such that (1-tau v v^T) x = alpha e1 where x and v a real vectors, tau is 0 or 2, and alpha a real number (e1 is the first unit vector)

source
TopologicalNumbers.householder_realMethod
(v, tau, alpha) = householder_real(x)

Compute a Householder transformation such that (1-tau v v^T) x = alpha e1 where x and v a real vectors, tau is 0 or 2, and alpha a real number (e1 is the first unit vector)

source