MAST
|
uses a Gauss-Siedel method to solve the complex system of equations for a system. More...
#include <complex_solver_base.h>
Public Member Functions | |
ComplexSolverBase () | |
default constructor More... | |
virtual | ~ComplexSolverBase () |
destructor More... | |
void | set_assembly (MAST::ComplexAssemblyBase &assemble) |
sets the assembly object for this solver More... | |
void | clear_assembly () |
clears the assembly object from this solver More... | |
virtual void | solve_pc_fieldsplit () |
solves the complex system of equations using PCFieldSplit More... | |
virtual void | solve_block_matrix (MAST::Parameter *p=nullptr) |
solves the complex system of equations using block matrices. More... | |
libMesh::NumericVector< Real > & | real_solution (bool if_sens=false) |
const libMesh::NumericVector< Real > & | real_solution (bool if_sens=false) const |
libMesh::NumericVector< Real > & | imag_solution (bool if_sens=false) |
const libMesh::NumericVector< Real > & | imag_solution (bool if_sens=false) const |
Public Attributes | |
Real | tol |
unsigned int | max_iters |
Protected Attributes | |
MAST::ComplexAssemblyBase * | _assembly |
Associated ComplexAssembly object that provides the element level quantities. More... | |
uses a Gauss-Siedel method to solve the complex system of equations for a system.
Definition at line 42 of file complex_solver_base.h.
MAST::ComplexSolverBase::ComplexSolverBase | ( | ) |
default constructor
Definition at line 39 of file complex_solver_base.cpp.
|
virtual |
destructor
Definition at line 48 of file complex_solver_base.cpp.
void MAST::ComplexSolverBase::clear_assembly | ( | ) |
clears the assembly object from this solver
Definition at line 65 of file complex_solver_base.cpp.
libMesh::NumericVector< Real > & MAST::ComplexSolverBase::imag_solution | ( | bool | if_sens = false | ) |
if_sens
is true, the the sensitivity vector is returned. Note, that the sensitivity can be requested only after a sensitivity solve. Definition at line 144 of file complex_solver_base.cpp.
const libMesh::NumericVector< Real > & MAST::ComplexSolverBase::imag_solution | ( | bool | if_sens = false | ) | const |
if_sens
is true, the the sensitivity vector is returned. Note, that the sensitivity can be requested only after a sensitivity solve. Definition at line 164 of file complex_solver_base.cpp.
libMesh::NumericVector< Real > & MAST::ComplexSolverBase::real_solution | ( | bool | if_sens = false | ) |
if_sens
is true, the the sensitivity vector is returned. Note, that the sensitivity can be requested only after a sensitivity solve. Definition at line 103 of file complex_solver_base.cpp.
const libMesh::NumericVector< Real > & MAST::ComplexSolverBase::real_solution | ( | bool | if_sens = false | ) | const |
if_sens
is true, the the sensitivity vector is returned. Note, that the sensitivity can be requested only after a sensitivity solve. Definition at line 124 of file complex_solver_base.cpp.
void MAST::ComplexSolverBase::set_assembly | ( | MAST::ComplexAssemblyBase & | assemble | ) |
sets the assembly object for this solver
Definition at line 55 of file complex_solver_base.cpp.
|
virtual |
solves the complex system of equations using block matrices.
If no argument is specified for p
, then the system is solved. Otherwise, the sensitivity of the system is solved with respect to the parameter p
Definition at line 333 of file complex_solver_base.cpp.
|
virtual |
solves the complex system of equations using PCFieldSplit
Definition at line 187 of file complex_solver_base.cpp.
|
protected |
Associated ComplexAssembly object that provides the element level quantities.
Definition at line 132 of file complex_solver_base.h.
unsigned int MAST::ComplexSolverBase::max_iters |
Definition at line 123 of file complex_solver_base.h.
Real MAST::ComplexSolverBase::tol |
Definition at line 121 of file complex_solver_base.h.