WignerFamilies

WignerFamilies.classical_wigner3j_m0!Method
classical_wigner3j_m0!(::Type{T}, j₂, j₃, m₂, m₃) where {T<:Real}

Computes all allowed j₁ given fixed j₂, j₃, m₁, m₂, m₃, subject to m₁ = m₂ = m₃ = 0. This applies the classical three-term recurrence relation and iterates two at a time, since in this special case all symbols with odd ∑jᵢ are zero. Unlike other Wigner symbols, this special case requires iterating outwards, as one must recur towards increasing |fⱼ| for stability.

Arguments

  • T::Type{<:Real}: output array type
  • j₂::Tn: quantum number
  • j₃::Tn: quantum number
  • m₂::Tn: quantum number
source
WignerFamilies.get_wigner_arrayMethod
get_wigner_array(w::AbstractWigner{T}) where {T}

Utility function for getting an OffsetArray with indices from jₘᵢₙ to jₘₐₓ.

Arguments

  • w::AbstractWigner{T}: contains the quantum numbers and dispatches on the kind of symbol

Returns

  • OffsetArray{T}: an array for wigner symbols
source
WignerFamilies.rψ!Method
rψ!(w::AbstractWigner{T}, n::Integer, iterates::AbstractVector{T}) where T

Backward recurrence scheme defined by equation 2 in Luscombe and Luban 1998. Iteratively generates the ratio rψ(n) = ψ(n) / ψ(n+1) in the iterates vector.

Arguments

  • w::AbstractWigner{T}: contains the quantum numbers and dispatches on the kind of symbol
  • nmid::Integer: current index of the recurrence
  • ψ::AbstractVector{T}: store the values of rψ here during recursion.

Returns

  • stop::Int: the index the iteration stopped
source
WignerFamilies.swap_triangularMethod

Evens out an array which scales linearly with difficulty by interleaving elements such that [1,2,3,4,5,6] is mapped to [1,6,2,5,3,4].

source
WignerFamilies.wigner3j_fMethod
wigner3j_f(::Type{T}, j₂, j₃, m₂, m₃) where {T<:Real}

Computes all allowed j₁ given fixed j₂, j₃, m₂, m₃, m₁=-m₂-m₃.

Arguments

  • T::Type{<:Real}: output array type
  • j₂: quantum number
  • j₃: quantum number
  • m₂: quantum number
  • m₃: quantum number

Returns

  • Tuple{Vector{Int}, Vector{T}}: j₁ values and wigner symbols
source