Non exported symbols

SpinModels._hopping_coordinates!Function
_hopping_coordinates!(A, B, N, i, j)

Compute the coordinates of the matrix entries of the hopping operator between site i and J in a spin chain. The values are 1 everywhere, so there is no input/output for these in this function.

Hopping operator: σ₊ⁱσ₋ʲ + σ₋ⁱσ₊ʲ = 𝟙⊗…⊗𝟙⊗σ₊⊗𝟙⊗…⊗𝟙⊗σ₋⊗𝟙⊗…⊗𝟙 + transpose

Parameters

  • A,B coordinate vectors. These should have length 2^(N-2) will be overwritten!
  • N number of sites in the system
  • i,j sites the excitation can hop between. 1 ≤ i,j ≤ N
source
SpinModels._z_field!Function
_z_field!(V, N, hz, i)

ADD to V the diagonal of hz σzⁱ.

Parameters

  • V array of length 2^N. Will be mutated!
  • N number of sites in the system
  • hz field strength
  • i site to act on
source
SpinModels._zcorrelator_values!Function
    _zcorrelator_values!(V, N, Jij, i, j)

ADD to V the diagonal of Jᵢⱼ σzⁱσzʲ.

Parameters

  • V array of length 2^N. Will be mutated!
  • N number of sites in the system
  • Jij interaction strength
  • i,j sites to couple
source
SpinModels._check_add_compatibleFunction

checkadd_compatible(term1, term2)

Two terms can be added, if either:

  1. both have no spatial information
  2. both carry spatial information for the same number of spins

Otherwise error.

source
SpinModels._check_arrayFunction
_check_array(dims, nbody)

Bad name. Raise an error if an array with size dims is not suitable as coefficient for an nbody term. Generally a n-body term needs a n-dimensional array which axes are all equal.

source