| diagonalMatrix-class {Matrix} | R Documentation |
Class "diagonalMatrix" is the virtual class of all diagonal matrices.
A virtual Class: No objects may be created from it.
diag:"U" or
"N", where "U" means ‘unit-diagonal’.Dim:Dimnames:dimnames, a
list, see the Matrix class
description. Typically list(NULL,NULL) for diagonal matrices.
Class "denseMatrix", directly.
signature(from = "matrix", to = "diagonalMatrix"): ... signature(from = "diagonalMatrix", to = "symmetricMatrix"): ... signature(from = "diagonalMatrix", to = "triangularMatrix"): ... signature(from = "diagonalMatrix", to = "matrix"): ... signature(from = "Matrix", to = "diagonalMatrix"): ... signature(x = "diagonalMatrix"): ... signature(x = "dgeMatrix", y = "diagonalMatrix"): ... signature(x = "matrix", y = "diagonalMatrix"): ... signature(x = "diagonalMatrix", y = "matrix"): ... signature(x = "diagonalMatrix", y = "dgeMatrix"): ... signature(a = "diagonalMatrix", b, ...): is
trivially implemented, of course.
ddiMatrix and ldiMatrix are
“actual” classes extending "diagonalMatrix".
I5 <- Diagonal(5)
D5 <- Diagonal(x = 10*(1:5))
## trivial (but explicitly defined) methods:
stopifnot(identical(crossprod(I5), I5),
identical(tcrossprod(I5), I5),
identical(crossprod(I5, D5), D5),
identical(tcrossprod(D5, I5), D5),
identical(solve(D5), solve(D5, I5)),
all.equal(D5, solve(solve(D5)), tol = 1e-12)
)
solve(D5)