SparseLU< MatrixType, Backend > Class Template Reference
[Sparse module]

LU decomposition of a sparse matrix and associated features. More...

List of all members.

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
 SparseLU (const MatrixType &matrix, int flags=0)
 SparseLU (int flags=0)
bool succeeded (void) const

Protected Types

enum  { MatrixLUIsDirty }
typedef SparseMatrix< Scalar,
LowerTriangular > 
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, int 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 LU, class SparseLLT

Constructor & Destructor Documentation

SparseLU ( int  flags = 0  )  [inline]

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 &  a  )  [inline]

Computes/re-computes the LU factorization

Computes / recomputes the LU decomposition of matrix a using the default algorithm.

int flags (  )  const [inline]
Returns:
the current flags
RealScalar precision (  )  const [inline]
Returns:
the current precision.
See also:
setPrecision()
void setFlags ( int  f  )  [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 [inline]
Returns:
the lower triangular matrix L
the upper triangular matrix U

Computes *x = U^-1 L^-1 b

bool succeeded ( void   )  const [inline]
Returns:
true if the factorization succeeded

The documentation for this class was generated from the following file:

Generated on Mon Aug 31 17:48:42 2009 for Eigen by  doxygen 1.6.1