template<class TBlockType, class TEigenSolverFactory>
class sofa::component::linearsolver::direct::EigenDirectSparseSolver< TBlockType, TEigenSolverFactory >
Base class for all Eigen based direct sparse solvers
|
| SOFA_ABSTRACT_CLASS (SOFA_TEMPLATE2(EigenDirectSparseSolver, TBlockType, EigenSolverFactory), SOFA_TEMPLATE(ordering::OrderingMethodAccessor, SOFA_TEMPLATE2(sofa::component::linearsolver::MatrixLinearSolver, Matrix, Vector))) |
|
| ~EigenDirectSparseSolver () override=default |
|
void | init () override |
|
void | reinit () override |
|
void | solve (Matrix &A, Vector &x, Vector &b) override |
|
void | invert (Matrix &A) override |
|
| SOFA_CLASS (OrderingMethodAccessor, sofa::component::linearsolver::MatrixLinearSolver< sofa::linearalgebra::CompressedRowSparseMatrix< TBlockType >, sofa::linearalgebra::FullVector< sofa::linearalgebra::CompressedRowSparseMatrix< TBlockType >::Real > >) |
|
| OrderingMethodAccessor () |
|
| ~OrderingMethodAccessor () override=default |
|
void | init () override |
|
void | parse (sofa::core::objectmodel::BaseObjectDescription *arg) override |
|
void | resetSystem () |
|
void | resizeSystem (Size n) |
|
void | setSystemMBKMatrix (const core::MechanicalParams *mparams) |
|
void | rebuildSystem (SReal, SReal) |
|
void | setSystemLHVector (core::MultiVecDerivId v) |
|
void | applySystemSolution () |
|
void | applyConstraintForce (const sofa::core::ConstraintParams *, sofa::core::MultiVecDerivId, const linearalgebra::BaseVector *) |
|
void | computeResidual (const core::ExecParams *, linearalgebra::BaseVector *) |
|
GraphScatteredVector * | createPersistentVector () |
|
linearalgebra::BaseMatrix * | getSystemBaseMatrix () |
|
linearalgebra::BaseVector * | getSystemRHBaseVector () |
|
linearalgebra::BaseVector * | getSystemLHBaseVector () |
|
void | checkLinearSystem () |
|
bool | addJMInvJtLocal (GraphScatteredMatrix *M, MatrixLinearSolver< GraphScatteredMatrix, GraphScatteredVector, NoThreadManager >::ResMatrixType *result, const MatrixLinearSolver< GraphScatteredMatrix, GraphScatteredVector, NoThreadManager >::JMatrixType *J, const SReal fact) |
|
SOFA_COMPONENT_LINEARSOLVER_ITERATIVE_API void | resetSystem () |
|
SOFA_COMPONENT_LINEARSOLVER_ITERATIVE_API void | resizeSystem (Size) |
|
SOFA_COMPONENT_LINEARSOLVER_ITERATIVE_API void | setSystemMBKMatrix (const core::MechanicalParams *mparams) |
|
SOFA_COMPONENT_LINEARSOLVER_ITERATIVE_API void | rebuildSystem (SReal massFactor, SReal forceFactor) |
|
SOFA_COMPONENT_LINEARSOLVER_ITERATIVE_API void | setSystemLHVector (core::MultiVecDerivId v) |
|
SOFA_COMPONENT_LINEARSOLVER_ITERATIVE_API void | applySystemSolution () |
|
SOFA_COMPONENT_LINEARSOLVER_ITERATIVE_API GraphScatteredVector * | createPersistentVector () |
|
SOFA_COMPONENT_LINEARSOLVER_ITERATIVE_API linearalgebra::BaseMatrix * | getSystemBaseMatrix () |
|
SOFA_COMPONENT_LINEARSOLVER_ITERATIVE_API linearalgebra::BaseVector * | getSystemRHBaseVector () |
|
SOFA_COMPONENT_LINEARSOLVER_ITERATIVE_API linearalgebra::BaseVector * | getSystemLHBaseVector () |
|
SOFA_COMPONENT_LINEARSOLVER_ITERATIVE_API void | applyConstraintForce (const sofa::core::ConstraintParams *, sofa::core::MultiVecDerivId, const linearalgebra::BaseVector *) |
|
SOFA_COMPONENT_LINEARSOLVER_ITERATIVE_API void | computeResidual (const core::ExecParams *params, linearalgebra::BaseVector *f) |
|
SOFA_COMPONENT_LINEARSOLVER_ITERATIVE_API void | checkLinearSystem () |
|