triangularMatrix-class Virtual Class of Triangular Matrices in Package Matrix
Description
The virtual class of triangular matrices,"triangularMatrix", the package Matrix contains square (nrow ==
ncol) numeric and logical, dense and sparse matrices, e.g., see the examples. A main use of the virtual class is in methods (and C functions) that can deal with all triangular matrices.
Slots
-
uplo: -
String (of class
"character"). Must be either "U", for upper triangular, and "L", for lower triangular. -
diag: -
String (of class
"character"). Must be either"U", for unit triangular (diagonal is all ones), or"N"for non-unit. The diagonal elements are not accessed internally whendiagis"U". FordenseMatrixclasses, they need to be allocated though, i.e., the length of thexslot does not depend ondiag. -
Dim,Dimnames: -
The dimension (a length-2
"integer") and corresponding names (orNULL), inherited from theMatrix, see there.
Extends
Class "Matrix", directly.
Methods
There's a C function triangularMatrix_validity() called by the internal validity checking functions.
Currently, Schur, isSymmetric and as() (i.e. coerce) have methods with triangularMatrix in their signature.
See Also
isTriangular() for testing any matrix for triangularity; classes symmetricMatrix, and, e.g., dtrMatrix for numeric dense matrices, or ltCMatrix for a logical sparse matrix subclass of "triangularMatrix".
Examples
showClass("triangularMatrix")
## The names of direct subclasses:
scl <- getClass("triangularMatrix")@subclasses
directly <- sapply(lapply(scl, slot, "by"), length) == 0
names(scl)[directly]
(m <- matrix(c(5,1,0,3), 2))
as(m, "triangularMatrix")
Copyright (©) 1999–2012 R Foundation for Statistical Computing.
Licensed under the GNU General Public License.