|
OOFEM 3.0
|
#include <ldltfact.h>
Public Member Functions | |
| LDLTFactorization (Domain *d, EngngModel *m) | |
| Constructor - creates new instance of LDLTFactorization, with number i, belonging to domain d and Engngmodel m. | |
| virtual | ~LDLTFactorization () |
| Destructor. | |
| ConvergedReason | solve (SparseMtrx &A, FloatArray &b, FloatArray &x) override |
| const char * | giveClassName () const override |
| LinSystSolverType | giveLinSystSolverType () const override |
| SparseMtrxType | giveRecommendedMatrix (bool symmetric) const override |
| Public Member Functions inherited from oofem::SparseLinearSystemNM | |
| SparseLinearSystemNM (Domain *d, EngngModel *m) | |
| Constructor. | |
| virtual | ~SparseLinearSystemNM () |
| Destructor. | |
| std::string | errorInfo (const char *func) |
| virtual ConvergedReason | solve (SparseMtrx &A, FloatMatrix &B, FloatMatrix &X) |
| Public Member Functions inherited from oofem::NumericalMethod | |
| NumericalMethod (Domain *d, EngngModel *m) | |
| virtual | ~NumericalMethod () |
| Destructor. | |
| EngngModel * | giveEngngModel () |
| virtual void | initializeFrom (InputRecord &ir) |
| virtual void | reinitialize () |
| virtual void | setDomain (Domain *d) |
| virtual void | saveContext (DataStream &stream, ContextMode mode) |
| virtual void | restoreContext (DataStream &stream, ContextMode mode) |
Additional Inherited Members | |
| Protected Attributes inherited from oofem::NumericalMethod | |
| Domain * | domain |
| Pointer to domain. | |
| EngngModel * | engngModel |
| Pointer to engineering model. | |
Implements the solution of linear system of equation in the form Ax=b using direct factorization method. Can work with any sparse matrix implementation. However, the sparse matrix implementation have to support its factorization (canBeFactorized method).
Definition at line 55 of file ldltfact.h.
| oofem::LDLTFactorization::LDLTFactorization | ( | Domain * | d, |
| EngngModel * | m ) |
Constructor - creates new instance of LDLTFactorization, with number i, belonging to domain d and Engngmodel m.
References LDLTFactorization(), and solve().
Referenced by LDLTFactorization().
|
virtual |
Destructor.
Definition at line 46 of file ldltfact.C.
|
inlineoverridevirtual |
Implements oofem::SparseLinearSystemNM.
Definition at line 74 of file ldltfact.h.
|
inlineoverridevirtual |
Implements oofem::SparseLinearSystemNM.
Definition at line 75 of file ldltfact.h.
References oofem::ST_Direct.
|
inlineoverridevirtual |
Returns the recommended sparse matrix type for this solver.
Implements oofem::SparseLinearSystemNM.
Definition at line 76 of file ldltfact.h.
References oofem::SMT_Skyline, and oofem::SMT_SkylineU.
|
overridevirtual |
Solves the given linear system by LDL^T factorization. Implementation rely on factorization support provided by mapped sparse matrix. It calls Lhs->factorized()->backSubstitutionWith(*solutionArray). Sets solved flag to 1 if o.k.
| A | coefficient matrix |
| b | right hand side |
| x | solution array |
Implements oofem::SparseLinearSystemNM.
Definition at line 51 of file ldltfact.C.
References oofem::SparseMtrx::backSubstitutionWith(), oofem::SparseMtrx::canBeFactorized(), oofem::CR_CONVERGED, oofem::SparseMtrx::factorized(), and OOFEM_ERROR.
Referenced by LDLTFactorization().