OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
Implements the solution of linear system of equation in the form using solvers from Pardiso-project.org. More...
#include <pardisoprojectorgsolver.h>
Public Member Functions | |
PardisoProjectOrgSolver (Domain *d, EngngModel *m) | |
Constructor. More... | |
virtual | ~PardisoProjectOrgSolver () |
virtual NM_Status | solve (SparseMtrx &A, FloatArray &b, FloatArray &x) |
Solves the given sparse linear system of equations . More... | |
virtual const char * | giveClassName () const |
virtual LinSystSolverType | giveLinSystSolverType () const |
virtual SparseMtrxType | giveRecommendedMatrix (bool symmetric) const |
Returns the recommended sparse matrix type for this solver. More... | |
Public Member Functions inherited from oofem::SparseLinearSystemNM | |
SparseLinearSystemNM (Domain *d, EngngModel *m) | |
Constructor. More... | |
virtual | ~SparseLinearSystemNM () |
Destructor. More... | |
std::string | errorInfo (const char *func) |
virtual NM_Status | solve (SparseMtrx &A, FloatMatrix &B, FloatMatrix &X) |
Solves the given sparse linear system of equations . More... | |
Public Member Functions inherited from oofem::NumericalMethod | |
NumericalMethod (Domain *d, EngngModel *m) | |
Constructor. More... | |
virtual | ~NumericalMethod () |
Destructor. More... | |
EngngModel * | giveEngngModel () |
virtual IRResultType | initializeFrom (InputRecord *ir) |
virtual void | reinitialize () |
Reinitializes the receiver. More... | |
virtual void | setDomain (Domain *d) |
virtual contextIOResultType | saveContext (DataStream &stream, ContextMode mode, void *obj=NULL) |
virtual contextIOResultType | restoreContext (DataStream &stream, ContextMode mode, void *obj=NULL) |
Additional Inherited Members | |
Protected Attributes inherited from oofem::NumericalMethod | |
Domain * | domain |
Pointer to domain. More... | |
EngngModel * | engngModel |
Pointer to engineering model. More... | |
Implements the solution of linear system of equation in the form using solvers from Pardiso-project.org.
Adapted from mklpardisosolver implementation by M. Ohman Only works with the CSC (compressed sparse column) sparse matrix implementation.
Definition at line 58 of file pardisoprojectorgsolver.h.
oofem::PardisoProjectOrgSolver::PardisoProjectOrgSolver | ( | Domain * | d, |
EngngModel * | m | ||
) |
Constructor.
d | Domain which solver belongs to. |
m | Engineering model which solver belongs to. |
Definition at line 50 of file pardisoprojectorgsolver.C.
|
virtual |
Definition at line 52 of file pardisoprojectorgsolver.C.
|
inlinevirtual |
Implements oofem::SparseLinearSystemNM.
Definition at line 72 of file pardisoprojectorgsolver.h.
|
inlinevirtual |
Implements oofem::SparseLinearSystemNM.
Definition at line 73 of file pardisoprojectorgsolver.h.
References oofem::ST_PardisoProjectOrg.
|
inlinevirtual |
Returns the recommended sparse matrix type for this solver.
Implements oofem::SparseLinearSystemNM.
Definition at line 74 of file pardisoprojectorgsolver.h.
References oofem::SMT_CompCol.
|
virtual |
Solves the given sparse linear system of equations .
A | Coefficient matrix. |
b | Right hand side. |
x | Solution array. |
Implements oofem::SparseLinearSystemNM.
Definition at line 54 of file pardisoprojectorgsolver.C.
References oofem::FloatArray::computeSquaredNorm(), oofem::Timer::getUtime(), oofem::CompCol::giveColPtr(), oofem::SparseMtrx::giveNumberOfRows(), oofem::IntArray::givePointer(), oofem::FloatArray::givePointer(), oofem::CompCol::giveRowIndex(), oofem::FloatArray::giveSize(), oofem::CompCol::giveValues(), NM_NoSuccess, NM_Success, OOFEM_ERROR, OOFEM_LOG_DEBUG, OOFEM_LOG_INFO, OOFEM_WARNING, pardiso(), pardisoinit(), oofem::FloatArray::resize(), oofem::Timer::startTimer(), and oofem::Timer::stopTimer().