LU decomposition of a sparse matrix and associated features.
More...
List of all members.
Public Types |
typedef _MatrixType | MatrixType |
Public Member Functions |
void | compute (const _MatrixType &matrix) |
int | flags () const |
int | orderingMethod () const |
RealScalar | precision () const |
void | setFlags (int f) |
void | setOrderingMethod (int m) |
void | setPrecision (RealScalar v) |
template<typename BDerived , typename XDerived > |
bool | solve (const MatrixBase< BDerived > &b, MatrixBase< XDerived > *x, const int transposed=SvNoTrans) const |
template<typename BDerived , typename XDerived > |
bool | solve (const MatrixBase< BDerived > &b, MatrixBase< XDerived > *x) const |
| SparseLU (int flags=0) |
| SparseLU (const _MatrixType &matrix, int flags=0) |
bool | succeeded (void) const |
Protected Types |
enum | { MatrixLUIsDirty
} |
typedef SparseMatrix< Scalar > | LUMatrixType |
typedef NumTraits< typename
_MatrixType::Scalar >::Real | RealScalar |
typedef _MatrixType::Scalar | Scalar |
Protected Attributes |
int | m_flags |
RealScalar | m_precision |
int | m_status |
bool | m_succeeded |
Detailed Description
template<typename _MatrixType, typename Backend = DefaultBackend>
class Eigen::SparseLU< _MatrixType, Backend >
LU decomposition of a sparse matrix and associated features.
- Parameters:
-
_MatrixType | the type of the matrix of which we are computing the LU factorization |
- See also:
- class FullPivLU, class SparseLLT
Constructor & Destructor Documentation
Creates a dummy LU factorization object with flags flags.
SparseLU |
( |
const _MatrixType & |
matrix, |
|
|
int |
flags = 0 |
|
) |
| |
|
inline |
Creates a LU object and compute the respective factorization of matrix using flags flags.
Member Function Documentation
void compute |
( |
const MatrixType & |
matrix | ) |
|
Computes/re-computes the LU factorization
Computes / recomputes the LU decomposition of matrix a using the default algorithm.
- Returns:
- the current flags
RealScalar precision |
( |
| ) |
const |
|
inline |
Sets the flags. Possible values are:
- CompleteFactorization
- IncompleteFactorization
- MemoryEfficient
- one of the ordering methods
- etc...
- See also:
- flags()
void setPrecision |
( |
RealScalar |
v | ) |
|
|
inline |
Sets the relative threshold value used to prune zero coefficients during the decomposition.
Setting a value greater than zero speeds up computation, and yields to an imcomplete factorization with fewer non zero coefficients. Such approximate factors are especially useful to initialize an iterative solver.
Note that the exact meaning of this parameter might depends on the actual backend. Moreover, not all backends support this feature.
- See also:
- precision()
bool solve |
( |
const MatrixBase< BDerived > & |
b, |
|
|
MatrixBase< XDerived > * |
x, |
|
|
const int |
transposed = SvNoTrans |
|
) |
| const |
- Returns:
- the lower triangular matrix L
-
the upper triangular matrix U
Computes *x = U^-1 L^-1 b
If transpose is set to SvTranspose or SvAdjoint, the solution of the transposed/adjoint system is computed instead.
Not all backends implement the solution of the transposed or adjoint system.
bool succeeded |
( |
void |
| ) |
const |
|
inline |
- Returns:
- true if the factorization succeeded
The documentation for this class was generated from the following files: