Reference
GradedArrays.GradedOneTo — Type
const GradedOneTo{I, R1, R2} = BlockOneTo{Int, Vector{SectorUnitRange{I, R1, R2}}, Vector{Int}}See also SectorUnitRange and GradedUnitRange.
GradedArrays.GradedUnitRange — Type
const GradedUnitRange{I, R1, R2} = BlockUnitRange{Int, Vector{SectorUnitRange{I, R1, R2}}, Vector{Int}}Type alias for the axis type of graded arrays. This represents the blocked combination of ranges, where each block is a SectorUnitRange with sector labels of type I and underlying range types R1 and R2.
See also SectorUnitRange and GradedOneTo.
GradedArrays.SectorArray — Type
SectorArray(sectors, data) <: AbstractKroneckerArrayA representation of a general symmetric array as the combination of a structural part (sectors) and a data part (data). This can be thought of as a direct implementation of the Wigner-Eckart theorem.
GradedArrays.SectorDelta — Type
SectorDelta{T}(sectors::NTuple{N, I}) <: AbstractArray{T, N}An immutable representation of the structural tensor associated to the representation space of a number of sectors. For abelian symmetries, this boils down to a scalar which can always be normalized to 1.
GradedArrays.SectorOneTo — Type
const SectorOneTo{I <: SectorRange} = SectorUnitRange{I, Base.OneTo{Int}, Base.OneTo{Int}}GradedArrays.SectorRange — Type
SectorRange(sector::TKS.Sector, isdual::Bool)Unit range with elements of type Int that additionally stores a sector to denote the grading. Equivalent to Base.OneTo(length(sector)). Additionally holds a flag to denote the duality.
GradedArrays.SectorUnitRange — Type
const SectorUnitRange{I <: SectorRange, RB <: AbstractUnitRange{Int}, R <: AbstractUnitRange{Int}} =
CartesianProductUnitRange{Int, I, RB, R}Type alias for the cartesian product of a sector range of type I, and a unit range of type RB, which yields a total range of type R.
GradedArrays.flux — Function
flux(a::AbstractArray)
flux(a::AbstractArray, I::Block...)Compute the total flux of an AbstractArray, defined as the fusion of all of the incoming charges, or the flux associated to a provided block. Whenever the flux cannot be meaningfully computed, for example for non-graded arrays, or empty ones, this function returns UndefinedFlux.
GradedArrays.gradedrange — Method
gradedrange(xs::AbstractVector{<:Pair})Construct a graded range from the provided list of sector => range pairs.
GradedArrays.masked_inversion_parity — Method
Compute the parity of the number of inversions of a masked permutation
GradedArrays.sectorrange — Function
sectorrange(sector, range)
sectorrange(sector, dim)Construct a SectorUnitRange for the given sector and dimension or range.