\HeaderA{MatrixFactorization-class}{Class "MatrixFactorization" of Matrix Factorizations}{MatrixFactorization.Rdash.class}
\aliasA{dim,MatrixFactorization-method}{MatrixFactorization-class}{dim,MatrixFactorization.Rdash.method}
\aliasA{expand,MatrixFactorization-method}{MatrixFactorization-class}{expand,MatrixFactorization.Rdash.method}
\aliasA{show,MatrixFactorization-method}{MatrixFactorization-class}{show,MatrixFactorization.Rdash.method}
\aliasA{solve,MatrixFactorization,ANY-method}{MatrixFactorization-class}{solve,MatrixFactorization,ANY.Rdash.method}
\aliasA{solve,MatrixFactorization,missing-method}{MatrixFactorization-class}{solve,MatrixFactorization,missing.Rdash.method}
\aliasA{solve,MatrixFactorization,numeric-method}{MatrixFactorization-class}{solve,MatrixFactorization,numeric.Rdash.method}
\keyword{classes}{MatrixFactorization-class}
\begin{Description}\relax
The class \code{"MatrixFactorization"} is the virtual (super) class of
(potentially) all matrix factorizations of matrices from package
\pkg{Matrix}.
\end{Description}
\begin{Section}{Objects from the Class}
A virtual Class: No objects may be
created from it.
\end{Section}
\begin{Section}{Slots}
\describe{
\item[\code{Dim}:] Object of class \code{"integer"} - the dimensions
of the original matrix - must be an integer vector with exactly two
non-negative values.
}
\end{Section}
\begin{Section}{Methods}
\describe{
\item[dim] \code{(x)} simply returns \code{x@Dim}, see above.
\item[expand] \code{signature(x = "MatrixFactorization")}: this has
not been implemented yet for all matrix factorizations. It should
return a list whose components are matrices which when multiplied
return the original \code{\LinkA{Matrix}{Matrix.Rdash.class}} object.
\item[show] \code{signature(object = "MatrixFactorization")}: simple
printing, see \code{\LinkA{show}{show}}.
\item[solve] \code{signature(a = "MatrixFactorization", b= .)}:
solve \eqn{A x = b}{} for \eqn{x}{}; has not been implemented for
all factorizations, but e.g., for \code{\LinkA{CHMfactor}{CHMfactor.Rdash.class}},
see there.
}
\end{Section}
\begin{SeeAlso}\relax
classes inheriting from \code{"MatrixFactorization"}, such as
\code{\LinkA{CHMfactor}{CHMfactor.Rdash.class}},
\code{\LinkA{LU}{LU.Rdash.class}}, and
\code{\LinkA{sparseQR}{sparseQR.Rdash.class}}.
\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
showClass("MatrixFactorization")
\end{ExampleCode}
\end{Examples}

