Chi-Tech
|
#include <NonLinearSolver.h>
Public Types | |
typedef NonLinearSolverContext< VecType, SolverType > | NLSolverContext |
typedef std::shared_ptr< NLSolverContext > | NLSolverContextPtr |
Public Member Functions | |
NonLinearSolver (NLSolverContextPtr context_ptr, const chi::InputParameters ¶ms=NonLinearSolverOptions::GetInputParameters()) | |
virtual | ~NonLinearSolver () |
NonLinearSolverOptions & | ToleranceOptions () |
void | ApplyToleranceOptions () |
NLSolverContextPtr & | GetContext () |
bool | IsConverged () const |
std::string | GetConvergedReasonString () const |
virtual void | Setup () |
virtual void | Solve () |
Protected Member Functions | |
bool | IsSystemSet () const |
virtual void | PreSetupCallback () |
virtual void | SetOptions () |
virtual void | SetSolverContext () |
virtual void | SetConvergenceTest () |
virtual void | SetMonitor () |
virtual void | SetPreconditioner () |
virtual void | SetSystemSize ()=0 |
virtual void | SetSystem ()=0 |
virtual void | SetFunction ()=0 |
virtual void | SetJacobian ()=0 |
virtual void | PostSetupCallback () |
virtual void | PreSolveCallback () |
virtual void | SetInitialGuess ()=0 |
virtual void | PostSolveCallback () |
Protected Attributes | |
const std::string | solver_name_ |
NLSolverContextPtr | context_ptr_ = nullptr |
MatType | J_ |
MatType | P_ |
VecType | r_ |
VecType | x_ |
SolverType | nl_solver_ |
int64_t | num_local_dofs_ = 0 |
int64_t | num_globl_dofs_ = 0 |
NonLinearSolverOptions | options_ |
Private Attributes | |
bool | system_set_ = false |
bool | converged_ = false |
std::string | converged_reason_string_ |
Implementation of a general non-linear solver.
Definition at line 17 of file NonLinearSolver.h.
typedef NonLinearSolverContext<VecType, SolverType> chi_math::NonLinearSolver< MatType, VecType, SolverType >::NLSolverContext |
Definition at line 20 of file NonLinearSolver.h.
typedef std::shared_ptr<NLSolverContext> chi_math::NonLinearSolver< MatType, VecType, SolverType >::NLSolverContextPtr |
Definition at line 21 of file NonLinearSolver.h.
|
inlineexplicit |
Definition at line 23 of file NonLinearSolver.h.
|
virtual |
void chi_math::NonLinearSolver< MatType, VecType, SolverType >::ApplyToleranceOptions | ( | ) |
|
inline |
Definition at line 36 of file NonLinearSolver.h.
std::string chi_math::NonLinearSolver< MatType, VecType, SolverType >::GetConvergedReasonString | ( | ) | const |
|
inline |
Definition at line 38 of file NonLinearSolver.h.
|
inlineprotected |
Definition at line 45 of file NonLinearSolver.h.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedpure virtual |
|
protectedpure virtual |
|
protectedpure virtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedpure virtual |
|
protectedpure virtual |
|
virtual |
|
virtual |
|
inline |
Definition at line 33 of file NonLinearSolver.h.
|
protected |
Definition at line 68 of file NonLinearSolver.h.
|
private |
Definition at line 83 of file NonLinearSolver.h.
|
private |
Definition at line 84 of file NonLinearSolver.h.
|
protected |
Definition at line 70 of file NonLinearSolver.h.
|
protected |
Definition at line 74 of file NonLinearSolver.h.
|
protected |
Definition at line 77 of file NonLinearSolver.h.
|
protected |
Definition at line 76 of file NonLinearSolver.h.
|
protected |
Definition at line 79 of file NonLinearSolver.h.
|
protected |
Definition at line 71 of file NonLinearSolver.h.
|
protected |
Definition at line 72 of file NonLinearSolver.h.
|
protected |
Definition at line 66 of file NonLinearSolver.h.
|
private |
Definition at line 82 of file NonLinearSolver.h.
|
protected |
Definition at line 73 of file NonLinearSolver.h.