QInchworm.sector_block_matrix

QInchworm.sector_block_matrixModule

Matrix representation of operators acting in a many-body Hilbert space partitioned into invariant subspaces (sectors) of a Hamiltonian.

source
QInchworm.sector_block_matrix.SectorBlockMatrixType

Complex block matrix stored as a dictionary of non-vanishing blocks.

Each element of the dictionary has the form right block index => (left block index, block). A block matrix represented by this type is allowed to have at most one non-vanishing block per column.

Objects of this type support addition/subtraction, matrix multiplication and multiplication/division by a scalar.

source
Base.zerosMethod
zeros(
    _::Type{Dict{Int64, Tuple{Int64, Matrix{ComplexF64}}}},
    ed::KeldyshED.EDCore
) -> Dict{Int64, Tuple{Int64, Matrix{ComplexF64}}}

Construct a block-diagonal SectorBlockMatrix, whose block structure is consistent with the invariant subspace partition of a given exact diagonalization object ed. All matrix elements of the stored blocks are set to zero.

source
Base.zeroMethod
zero(
    A::Dict{Int64, Tuple{Int64, Matrix{ComplexF64}}}
) -> Dict{Int64, Tuple{Int64, Matrix{ComplexF64}}}

Construct a SectorBlockMatrix that shares the list of stored blocks with another matrix A but has all those blocks set to zero.

source
LinearAlgebra.normFunction
norm(
    A::Dict{Int64, Tuple{Int64, Matrix{ComplexF64}}}
) -> Any
norm(
    A::Dict{Int64, Tuple{Int64, Matrix{ComplexF64}}},
    p::Real
) -> Any

p-norm of a SectorBlockMatrix A.

source
Statistics.varMethod
var(
    itr::AbstractArray{Dict{Int64, Tuple{Int64, Matrix{ComplexF64}}}};
    corrected,
    mean
) -> Any

Compute the sample variance of collection of SectorBlockMatrix itr.

If corrected is true, then the sum is scaled with n-1, whereas the sum is scaled with n if corrected is false where n is the number of elements in itr. A pre-computed mean may be provided.

source
Statistics.stdMethod
std(
    itr::AbstractArray{Dict{Int64, Tuple{Int64, Matrix{ComplexF64}}}};
    corrected,
    mean
) -> Dict

Compute the sample standard deviation of collection itr.

If corrected is true, then the sum is scaled with n-1, whereas the sum is scaled with n if corrected is false where n is the number of elements in itr. A pre-computed mean may be provided.

source
Base.isapproxMethod
isapprox(
    A::Dict{Int64, Tuple{Int64, Matrix{ComplexF64}}},
    B::Dict{Int64, Tuple{Int64, Matrix{ComplexF64}}};
    atol
) -> Bool

Inexact equality comparison of two SectorBlockMatrix objects A and B. Block structures of the objects must agree. atol specifies the absolute tolerance for the single element comparison (zero by default).

source