#include <sparsesolver.hpp>
Public Types | |
typedef double | TScalar |
typedef Eigen::SparseMatrix < TScalar, Eigen::LowerTriangular > | TSparseLowerMatrix |
typedef Eigen::SparseMatrix < TScalar, Eigen::LowerTriangular|Eigen::SelfAdjoint > | TSparseLowerSelfAdjointMatrix |
typedef Eigen::SparseMatrix < TScalar > | TSparseMatrix |
typedef Eigen::SparseMatrix < TScalar, Eigen::SelfAdjoint > | TSparseSelfAdjointMatrix |
typedef Eigen::SparseMatrix < TScalar, Eigen::UpperTriangular > | TSparseUpperMatrix |
typedef Eigen::SparseMatrix < TScalar, Eigen::UpperTriangular|Eigen::SelfAdjoint > | TSparseUpperSelfAdjointMatrix |
Public Member Functions | |
virtual bool | Compute (SymSparseMatrix &) |
computes the factorization, returns true if succeeded | |
virtual bool | Compute (SparseMatrix &) |
computes the factorization, returns true if succeeded | |
virtual Matrix | operator* (const Matrix &other) |
returns the matrix product A*B | |
void | Solve (const Matrix &b, Matrix **x, bool **success) |
Defines a wrapper for Solve() using pointers. | |
virtual bool | Solve (const Matrix &b, Matrix &x) |
virtual bool | SolveInPlace (Matrix &b) |
void | SolveTransposed (const Matrix &b, Matrix **x, bool **success) |
Defines a wrapper for Solve() using pointers. | |
virtual bool | SolveTransposed (const Matrix &b, Matrix &x) |
SparseSolver () | |
default constructor | |
virtual std::string | typeIdent () const |
returns the name of the datatype | |
virtual | ~SparseSolver () |
destructor | |
Protected Member Functions | |
void | Init () |
const bool & | succeeded_factorization () const |
bool & | succeeded_factorization () |
Static Protected Member Functions | |
static SparseMatrix | getSparseScalarMatrix () |
creates and returns a dummy matrix to enable standard constructors | |
Protected Attributes | |
std::pair< int, int > | m_dimensions |
dimensions of input object: | |
bool | m_succeeded_factorization |
Static Protected Attributes | |
static const SparseMatrix | sparseScalarMatrix |
a dummy matrix to enable standard constructors |
Solves the given vector on return; returns true if succeeded
Reimplemented in tmath::sparse::SparseLLT, tmath::sparse::SparseLU, tmath::sparse::SparseSuperLU, tmath::sparse::SparseLUUmfPack, and tmath::sparse::MUMPS.
virtual bool tmath::sparse::SparseSolver::SolveInPlace | ( | Matrix & | b | ) | [virtual] |
Factorizes this matrix and solves the given vector in place; returns true if succeeded
Reimplemented in tmath::sparse::SparseLLT, tmath::sparse::SparseLowerLLT, tmath::sparse::SparseLLTCholmod, tmath::sparse::SparseLowerLLTCholmod, tmath::sparse::SparseLU, and tmath::sparse::MUMPS.
virtual bool tmath::sparse::SparseSolver::SolveTransposed | ( | const Matrix & | b, | |
Matrix & | x | |||
) | [virtual] |
Solves the system (transpose(Matrix)*x=b for x; returns true if succeeded
Reimplemented in tmath::sparse::MUMPS.