dsCMatrix-class {Matrix}R Documentation

Numeric Symmetric Sparse (column compressed) Matrices

Description

The dsCMatrix class is a class of symmetric, sparse numeric matrices in the compressed, column-oriented format. In this implementation the non-zero elements in the columns are sorted into increasing row order.
The dsTMatrix class is the class of symmetric, sparse numeric matrices in triplet format.

Objects from the Class

Objects can be created by calls of the form new("dsCMatrix", ...) or new("dsTMatrix", ...) or (for dsCMatrix) also automatically from Matrix(.).

Slots

uplo:
A character object indicating if the upper triangle ("U") or the lower triangle ("L") is stored.
i:
Object of class "integer" of length nnZ (half number of non-zero elements). These are the row numbers for each non-zero element in the lower triangle of the matrix.
p:
(only in class "dsCMatrix":) Object of class "integer" of pointers, one for each column, to the initial (zero-based) index of elements in the column.
j:
(only in class "dsTMatrix":) Object of class "integer" of length nnZ (as i). These are the column numbers for each non-zero element in the lower triangle of the matrix.
x:
Object of class "numeric" of length nnZ – the non-zero elements of the matrix (to be duplicated for full matrix).
factors:
Object of class "list" - a list of factorizations of the matrix.
Dim:
Object of class "integer" - the dimensions of the matrix - must be an integer vector with exactly two non-negative values.

Extends

Both classes extend classes and symmetricMatrix dsparseMatrix directly; dsCMatrix further directly extends CsparseMatrix, where dsTMatrix does TsparseMatrix.

Methods

solve
signature(a = "dsCMatrix", b = "dsparseMatrix"): Solve a linear system of equations defined by x using a Cholesky decomposition. All steps will be based on sparse representations.
solve
signature(a = "dsCMatrix", b = "matrix"): Solve a linear system of equations defined by x using a Cholesky decomposition.
chol
signature(x = "dsCMatrix", pivot = "logical"): Returns (and stores) the Cholesky decomposition of x, see chol.
Cholesky
signature(A = "dsCMatrix",...): Computes more flexibly Cholesky decompositions, see Cholesky.
determinant
signature(x = "dsCMatrix", logarithm = "missing"): Evaluate the determinant of x on the logarithm scale. This creates and stores the Cholesky factorization.
determinant
signature(x = "dsCMatrix", logarithm = "logical"): Evaluate the determinant of x on the logarithm scale or not, according to the logarithm argument. This creates and stores the Cholesky factorization.
t
signature(x = "dsCMatrix"): Transpose. As for all symmetric matrices, a matrix for which the upper triangle is stored produces a matrix for which the lower triangle is stored and vice versa, i.e., the uplo slot is swapped, and the row and column indices are interchanged.
t
signature(x = "dsTMatrix"): Transpose. The uplo slot is swapped from "U" to "L" or vice versa, as for a "dsCMatrix", see above.
coerce
signature(from = "dsCMatrix", to = "dgTMatrix")
coerce
signature(from = "dsCMatrix", to = "dgeMatrix")
coerce
signature(from = "dsCMatrix", to = "matrix")
coerce
signature(from = "dsTMatrix", to = "dgeMatrix")
coerce
signature(from = "dsTMatrix", to = "dsCMatrix")
coerce
signature(from = "dsTMatrix", to = "dsyMatrix")
coerce
signature(from = "dsTMatrix", to = "matrix")

See Also

Classes dgCMatrix, dgTMatrix, dgeMatrix and those mentioned above.

Examples

mm <- Matrix(toeplitz(c(10, 0, 1, 0, 3)), sparse = TRUE)
mm # automatically dsCMatrix
str(mm)

## how would we go from a manually constructed Tsparse* :
mT <- as(mm, "dgTMatrix")

## Either
(symM <- as(mT, "symmetricMatrix"))# dsT
(symC <- as(symM, "CsparseMatrix"))# dsC
## or
sC <- Matrix(mT, sparse=TRUE, forceCheck=TRUE)

sym2 <- as(symC, "TsparseMatrix")


[Package Matrix version 0.999375-29 Index]