QuantumLattices.DegreesOfFreedom.Hilbert — MethodHilbert(hilbert::Hilbert{<:Spin}, magneticstructure::MagneticStructure)Get the corresponding Hilbert space of the original one after the Holstein-Primakoff transformation.
QuantumLattices.DegreesOfFreedom.Metric — MethodMetric(::Magnonic, hilbert::Hilbert{<:Fock{:b}}) -> OperatorIndexToTupleGet the index-to-tuple metric for a quantum spin system after the Holstein-Primakoff transformation.
SpinWaveTheory.HolsteinPrimakoff — TypeHolsteinPrimakoff{S<:Operators, U<:CoordinatedIndex, M<:MagneticStructure} <: UnitSubstitution{U, S}Holstein-Primakoff transformation.
SpinWaveTheory.LSWT — TypeLSWT{
K<:TBAKind{:BdG},
L<:AbstractLattice,
S<:OperatorGenerator,
HP<:HolsteinPrimakoff,
H₀<:CategorizedGenerator,
H₂<:CategorizedGenerator,
H<:CategorizedGenerator{<:OperatorSum{<:Quadratic}},
C<:AbstractMatrix
} <: TBA{K, H, C}Linear spin wave theory for magnetically ordered quantum lattice systems.
SpinWaveTheory.LSWT — MethodLSWT(lattice::AbstractLattice, hilbert::Hilbert{<:Spin}, terms::OneOrMore{Term}, magneticstructure::MagneticStructure; neighbors::Union{Int, Neighbors}=nneighbor(terms))Construct a LSWT.
SpinWaveTheory.MagneticStructure — TypeMagneticStructure{L<:AbstractLattice, D<:Number}The magnetic structure of an ordered quantum lattice system.
SpinWaveTheory.MagneticStructure — MethodMagneticStructure(cell::AbstractLattice, moments::Dict{Int, <:Union{AbstractVector{<:Number}, NTuple{2, Number}}}; unit::Symbol=:radian)Construct the magnetic structure on a given lattice with the given moments.
SpinWaveTheory.Magnonic — TypeMagnonic <: TBAKind{:BdG}Magnonic quantum lattice system.
SpinWaveTheory.RankFilter — TypeRankFilter{R} <: LinearTransformationRank filter, which filters out the Operator with a given rank R.
QuantumLattices.add! — Methodadd!(dest::OperatorSum, qf::Quadraticization{Magnonic}, m::Operator{<:Number, <:NTuple{2, CoordinatedIndex{<:Index{<:FockIndex{:b}}}}}; kwargs...) -> typeof(dest)Get the unified quadratic form of a rank-2 operator and add it to destination.
SpinWaveTheory.rotation — Methodrotation(destination::AbstractVector{<:Number}; kwargs...) -> SMatrix{3, 3}
rotation(destination::Tuple{Number, Number}; unit::Symbol=:radian) -> SMatrix{3, 3}Get the rotation matrix which rotates [0, 0, 1] to the direction of the destination vector.
TightBindingApproximation.commutator — Methodcommutator(::Magnonic, hilbert::Hilbert{<:Fock{:b}}) -> DiagonalGet the commutation relation of the Holstein-Primakoff bosons.