\HeaderA{sparseLU-class}{Sparse LU decomposition of a square sparse matrix}{sparseLU.Rdash.class}
\aliasA{expand,sparseLU-method}{sparseLU-class}{expand,sparseLU.Rdash.method}
\keyword{classes}{sparseLU-class}
\begin{Description}\relax
Objects of this class contain the components of the LU
decomposition of a sparse square matrix.
\end{Description}
\begin{Section}{Objects from the Class}
Objects can be created by calls of the form \code{new("sparseLU",
    ...)} but are more commonly created by function \code{\LinkA{lu}{lu}()}
applied to a sparse matrix, such as a matrix of class
\code{\LinkA{dgCMatrix}{dgCMatrix.Rdash.class}}.
\end{Section}
\begin{Section}{Slots}
\describe{
\item[\code{L}:] Object of class \code{"\LinkA{dtCMatrix}{dtCMatrix.Rdash.class}"}, the lower
triangular factor from the left.
\item[\code{U}:] Object of class \code{"\LinkA{dtCMatrix}{dtCMatrix.Rdash.class}"}, the upper
triangular factor from the right.
\item[\code{p}:] Object of class \code{"integer"}, permutation
applied from the left. 
\item[\code{q}:] Object of class \code{"integer"}, permutation
applied from the right.
\item[\code{Dim}:] the dimension of the original matrix; inherited
from class \code{\LinkA{MatrixFactorization}{MatrixFactorization.Rdash.class}}.
}
\end{Section}
\begin{Section}{Extends}
Class \code{"\LinkA{LU}{LU.Rdash.class}"}, directly.
Class \code{"\LinkA{MatrixFactorization}{MatrixFactorization.Rdash.class}"}, by class \code{"LU"}.
\end{Section}
\begin{Section}{Methods}
\describe{
\item[expand] \code{signature(x = "sparseLU")} Returns a list with
components \code{P}, \code{L}, \code{U}, and \code{Q},
where \eqn{P}{} and \eqn{Q}{} represent fill-reducing
permutations, and \eqn{L}{}, and \eqn{U}{} the lower and upper
triangular matrices of the decomposition.  The original matrix
corresponds to the product \eqn{PLUQ}{}.
}
\end{Section}
\begin{Note}\relax
The decomposition is of the form
\deqn{A = PLUQ}{}
where all matrices are sparse and of size \eqn{n\times n}{}.
The matrices \eqn{P}{} and \eqn{Q}{} are permutation matrices, \eqn{L}{} is
lower triangular and \eqn{U}{} is upper triangular.
\end{Note}
\begin{SeeAlso}\relax
\code{\LinkA{lu}{lu}}, \code{\LinkA{solve}{solve}}, \code{\LinkA{dgCMatrix}{dgCMatrix.Rdash.class}}
\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
  ## see  examples(lu)
\end{ExampleCode}
\end{Examples}

