MatrixFactorization-class function

Virtual Class "MatrixFactorization" of Matrix Factorizations

Virtual Class "MatrixFactorization" of Matrix Factorizations

MatrixFactorization is the virtual class of factorizations of mbynm-by-n matrices AA, having the general form [REMOVE_ME]P1AP2=A1ApP1AP2=A1...Ap[REMOVEME2] P_{1} A P_{2} = A_{1} \cdots A_{p}P1 * A * P2 = A1 * ... * Ap [REMOVE_ME_2]

or (equivalently) [REMOVE_ME]A=P1A1ApP2A=P1A1...ApP2[REMOVEME2] A = P_{1}' A_{1} \cdots A_{p} P_{2}'A = P1' * A1 * ... * Ap * P2' [REMOVE_ME_2]

where P1P1 and P2P2 are permutation matrices. Factorizations requiring symmetric AA have the constraint P2=P1P2 = P1', and factorizations without row or column pivoting have the constraints P1=ImP1 = Im and P2=InP2 = In, where ImIm and InIn are the mbymm-by-m and nbynn-by-n identity matrices.

CholeskyFactorization, BunchKaufmanFactorization, SchurFactorization, LU, and QR are the virtual subclasses of MatrixFactorization containing all Cholesky, Bunch-Kaufman, Schur, LU, and QR factorizations, respectively.

class

Description

MatrixFactorization is the virtual class of factorizations of mbynm-by-n matrices AA, having the general form

P1AP2=A1ApP1AP2=A1...Ap P_{1} A P_{2} = A_{1} \cdots A_{p}P1 * A * P2 = A1 * ... * Ap

or (equivalently)

A=P1A1ApP2A=P1A1...ApP2 A = P_{1}' A_{1} \cdots A_{p} P_{2}'A = P1' * A1 * ... * Ap * P2'

where P1P1 and P2P2 are permutation matrices. Factorizations requiring symmetric AA have the constraint P2=P1P2 = P1', and factorizations without row or column pivoting have the constraints P1=ImP1 = Im and P2=InP2 = In, where ImIm and InIn are the mbymm-by-m and nbynn-by-n identity matrices.

CholeskyFactorization, BunchKaufmanFactorization, SchurFactorization, LU, and QR are the virtual subclasses of MatrixFactorization containing all Cholesky, Bunch-Kaufman, Schur, LU, and QR factorizations, respectively.

Slots

  • Dim: an integer vector of length 2 giving the dimensions of the factorized matrix.
  • Dimnames: a list of length 2 preserving the dimnames of the factorized matrix. Each element must be NULL or a character vector of length equal to the corresponding element of Dim.

Methods

  • determinant: signature(x = "MatrixFactorization", logarithm = "missing"): sets logarithm = TRUE and recalls the generic function.
  • dim: signature(x = "MatrixFactorization"): returns x@Dim.
  • dimnames: signature(x = "MatrixFactorization"): returns x@Dimnames.
  • dimnames<-: signature(x = "MatrixFactorization", value = "NULL"): returns x with x@Dimnames set to list(NULL, NULL).
  • dimnames<-: signature(x = "MatrixFactorization", value = "list"): returns x with x@Dimnames set to value.
  • length: signature(x = "MatrixFactorization"): returns prod(x@Dim).
  • show: signature(object = "MatrixFactorization"): prints the internal representation of the factorization using str.
  • solve: signature(a = "MatrixFactorization", b = .): see solve-methods.
  • unname: signature(obj = "MatrixFactorization"): returns obj with obj@Dimnames set to list(NULL, NULL).

See Also

Classes extending CholeskyFactorization, namely Cholesky, pCholesky, and CHMfactor.

Classes extending BunchKaufmanFactorization, namely BunchKaufman and pBunchKaufman.

Classes extending SchurFactorization, namely Schur.

Classes extending LU, namely denseLU and sparseLU.

Classes extending QR, namely sparseQR.

Generic functions Cholesky, BunchKaufman, Schur, lu, and qr for computing factorizations.

Generic functions expand1 and expand2

for constructing matrix factors from MatrixFactorization

objects.

Examples

showClass("MatrixFactorization")
  • Maintainer: Martin Maechler
  • License: GPL (>= 2) | file LICENCE
  • Last published: 2025-03-11