UMFPACK based solver implementation. More...
#include <umfpack_solver.hpp>
Public Member Functions | |
UMFPACKSolver (double newton_Reps=1.0e-5, double newton_dXeps=1.0e-6, uint32_t newton_imax=10) | |
Constructor. | |
~UMFPACKSolver () | |
Destructor. | |
virtual void | solve (const Problem &p, Vector &X) |
Solve problem p defined in geometry g. Initial guess and solution are in vector X. | |
virtual void | reset (void) |
Reset solver. | |
void | set_newton_imax (uint32_t newton_imax) |
Sets maximum iteration count for Newton-Raphson steps. | |
void | set_newton_residual_eps (double newton_Reps) |
Sets the accuracy request for Newton-Raphson residual. | |
void | set_newton_step_eps (double newton_dXeps) |
Sets the accuracy request for Newton-Raphson step size. | |
![]() | |
virtual | ~Solver () |
Virtual destructor. | |
virtual void | solve (const class Problem &p, Vector &X)=0 |
Solve problem p. Initial guess and solution are in vector X. | |
UMFPACK based solver implementation.
An implementation of virtual class Solver using UMFPACK matrix solver library doing LU decomposition to solve linear matrix problems. This solver includes both linear and nonlinear solvers. Nonlinear solver based on Newton-Raphson iteration.
UMFPACKSolver::UMFPACKSolver | ( | double | newton_Reps = 1.0e-5 , |
double | newton_dXeps = 1.0e-6 , |
||
uint32_t | newton_imax = 10 |
||
) |
Constructor.
UMFPACKSolver::~UMFPACKSolver | ( | ) |
Destructor.
|
virtual |
Reset solver.
This is a signal from the problem that the problem has changed and internal caches (if they exist) in the solver should be resetted.
Implements Solver.
|
inline |
Sets maximum iteration count for Newton-Raphson steps.
|
inline |
Sets the accuracy request for Newton-Raphson residual.
|
inline |
Sets the accuracy request for Newton-Raphson step size.
Solve problem p defined in geometry g. Initial guess and solution are in vector X.