dtCMatrix-class {Matrix} | R Documentation |
The "dtCMatrix"
class is a class of triangular, sparse
matrices in the compressed, column-oriented format. In this
implementation the non-zero elements in the columns are sorted into
increasing row order. The "dtTMatrix"
class is a class of
triangular, sparse matrices in triplet format.
Objects can be created by calls of the form new("dtCMatrix",
...)
or calls of the form new("dtTMatrix", ...)
, but more
typically automatically via Matrix()
or coercion such as
as(x, "dtCMatrix")
.
uplo
:Object of class "character"
. Must be
either "U", for upper triangular, and "L", for lower triangular.
diag
:Object of class "character"
. Must be
either "U"
, for unit triangular (diagonal is all ones), or
"N"
; see triangularMatrix
.
p
:(only present in "dtCMatrix"
:) an
integer
vector for providing pointers, one for each
column, see the detailed description in CsparseMatrix
.
i
:Object of class "integer"
of length nnzero
(number of non-zero elements). These are the row numbers for
each non-zero element in the matrix.
j
:Object of class "integer"
of length nnzero
(number of non-zero elements). These are the column numbers for
each non-zero element in the matrix. (Only present in the
dtTMatrix
class.)
x
:Object of class "numeric"
- the non-zero
elements of the matrix.
Dim
,Dimnames
:The dimension (a length-2
"integer"
) and corresponding names (or NULL
),
inherited from the Matrix
, see there.
Class "dgCMatrix"
, directly.
Class "triangularMatrix"
, directly.
Class "dMatrix"
, "sparseMatrix"
, and more by class
"dgCMatrix"
etc, see the examples.
signature(from = "dtCMatrix", to = "dgTMatrix")
signature(from = "dtCMatrix", to = "dgeMatrix")
signature(from = "dtTMatrix", to = "dgeMatrix")
signature(from = "dtTMatrix", to = "dtrMatrix")
signature(from = "dtTMatrix", to = "matrix")
signature(a = "dtCMatrix", b = "matrix")
signature(a = "dtCMatrix", b = "dgeMatrix")
signature(a = "dtCMatrix", b = "missing")
signature(a = "dtCMatrix", b = "numeric")
signature(a = "dtCMatrix", b = "CsparseMatrix")
:
fully sparse triangular solve, in traditional S/R\ aka
backsolve
.
signature(x = "dtCMatrix")
: returns the transpose of
x
signature(x = "dtTMatrix")
: returns the transpose of
x
Classes dgCMatrix
, dgTMatrix
,
dgeMatrix
, and dtrMatrix
.
showClass("dtCMatrix") showClass("dtTMatrix") t1 <- new("dtTMatrix", x= c(3,7), i= 0:1, j=3:2, Dim= as.integer(c(4,4))) t1 ## from 0-diagonal to unit-diagonal {low-level step}: tu <- t1 ; tu@diag <- "U" tu (cu <- as(tu, "dtCMatrix")) str(cu)# only two entries in @i and @x stopifnot(cu@i == 1:0, all(2 * symmpart(cu) == Diagonal(4) + forceSymmetric(cu))) t1[1,2:3] <- -1:-2 diag(t1) <- 10*c(1:2,3:2) t1 # still triangular (it1 <- solve(t1)) t1. <- solve(it1) all(abs(t1 - t1.) < 10 * .Machine$double.eps)