![]() |
Chi-Tech
|
#include <linear_solver.h>
Data Structures | |
| struct | ToleranceOptions |
Public Types | |
| typedef LinearSolverContext< MatType, VecType > | LinSolveContext |
| typedef std::shared_ptr< LinSolveContext > | LinSolveContextPtr |
Public Member Functions | |
| LinearSolver (const std::string &iterative_method, LinSolveContextPtr context_ptr) | |
| LinearSolver (std::string solver_name, std::string iterative_method, LinSolveContextPtr context_ptr) | |
| virtual | ~LinearSolver () |
| ToleranceOptions & | ToleranceOptions () |
| void | ApplyToleranceOptions () |
| LinSolveContextPtr & | GetContext () |
| void | SetKSPSolveSuppressionFlag (bool flag) |
| bool | GetKSPSolveSuppressionFlag () const |
| virtual void | Setup () |
| virtual void | Solve () |
| ~LinearSolver () | |
| void | ApplyToleranceOptions () |
| void | Setup () |
| 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 | PostSetupCallback () |
| virtual void | PreSolveCallback () |
| virtual void | SetInitialGuess ()=0 |
| virtual void | SetRHS ()=0 |
| virtual void | PostSolveCallback () |
| void | PreSetupCallback () |
| void | SetOptions () |
| void | SetSolverContext () |
| void | SetConvergenceTest () |
| void | SetMonitor () |
| void | SetPreconditioner () |
| void | PostSetupCallback () |
| void | PreSolveCallback () |
| void | PostSolveCallback () |
Protected Attributes | |
| const std::string | solver_name_ |
| const std::string | iterative_method_ |
| LinSolveContextPtr | context_ptr_ = nullptr |
| MatType | A_ |
| VecType | b_ |
| VecType | x_ |
| SolverType | solver_ |
| int64_t | num_local_dofs_ = 0 |
| int64_t | num_globl_dofs_ = 0 |
| struct chi_math::LinearSolver::ToleranceOptions | tolerance_options_ |
Private Attributes | |
| bool | system_set_ = false |
| bool | suppress_kspsolve_ = false |
Implementation of a general linear solver.
Definition at line 18 of file linear_solver.h.
| typedef LinearSolverContext<MatType, VecType> chi_math::LinearSolver< MatType, VecType, SolverType >::LinSolveContext |
Definition at line 21 of file linear_solver.h.
| typedef std::shared_ptr<LinSolveContext> chi_math::LinearSolver< MatType, VecType, SolverType >::LinSolveContextPtr |
Definition at line 22 of file linear_solver.h.
|
inlineexplicit |
Definition at line 57 of file linear_solver.h.
|
inlineexplicit |
Definition at line 65 of file linear_solver.h.
|
virtual |
| chi_math::LinearSolver< Mat, Vec, KSP >::~LinearSolver | ( | ) |
Definition at line 9 of file linear_solver_petsc.cc.
| void chi_math::LinearSolver< MatType, VecType, SolverType >::ApplyToleranceOptions | ( | ) |
| void chi_math::LinearSolver< Mat, Vec, KSP >::ApplyToleranceOptions | ( | ) |
Definition at line 17 of file linear_solver_petsc.cc.
|
inline |
Definition at line 79 of file linear_solver.h.
|
inline |
Definition at line 83 of file linear_solver.h.
|
inlineprotected |
Definition at line 54 of file linear_solver.h.
|
protectedvirtual |
|
protected |
Definition at line 55 of file linear_solver_petsc.cc.
|
protectedvirtual |
|
protected |
Definition at line 100 of file linear_solver_petsc.cc.
|
protectedvirtual |
|
protected |
Definition at line 27 of file linear_solver_petsc.cc.
|
protectedvirtual |
|
protected |
Definition at line 96 of file linear_solver_petsc.cc.
|
protectedvirtual |
|
protected |
Definition at line 41 of file linear_solver_petsc.cc.
|
protectedpure virtual |
|
inline |
Sets a flag to suppress the KSPSolve() method from being called.
Definition at line 82 of file linear_solver.h.
|
protectedvirtual |
|
protected |
Definition at line 47 of file linear_solver_petsc.cc.
|
protectedvirtual |
|
protected |
Definition at line 31 of file linear_solver_petsc.cc.
|
protectedvirtual |
|
protected |
Definition at line 51 of file linear_solver_petsc.cc.
|
protectedpure virtual |
|
protectedvirtual |
|
protected |
Definition at line 35 of file linear_solver_petsc.cc.
|
protectedpure virtual |
|
protectedpure virtual |
|
virtual |
| void chi_math::LinearSolver< Mat, Vec, KSP >::Setup | ( | ) |
Definition at line 60 of file linear_solver_petsc.cc.
|
virtual |
| void chi_math::LinearSolver< Mat, Vec, KSP >::Solve | ( | ) |
Definition at line 104 of file linear_solver_petsc.cc.
|
inline |
Definition at line 76 of file linear_solver.h.
|
protected |
Definition at line 30 of file linear_solver.h.
|
protected |
Definition at line 31 of file linear_solver.h.
|
protected |
Definition at line 28 of file linear_solver.h.
|
protected |
Definition at line 26 of file linear_solver.h.
|
protected |
Definition at line 41 of file linear_solver.h.
|
protected |
Definition at line 40 of file linear_solver.h.
|
protected |
Definition at line 33 of file linear_solver.h.
|
protected |
Definition at line 25 of file linear_solver.h.
|
private |
Definition at line 37 of file linear_solver.h.
|
private |
Definition at line 36 of file linear_solver.h.
|
protected |
|
protected |
Definition at line 32 of file linear_solver.h.