v0.14.0 |
Interface for linear (KSP) solver. More...
#include <src/petsc/KspCtx.hpp>
Public Types | |
typedef MoFEM::PairNameFEMethodPtr | PairNameFEMethodPtr |
typedef MoFEM::FEMethodsSequence | FEMethodsSequence |
typedef MoFEM::BasicMethodsSequence | BasicMethodsSequence |
Public Member Functions | |
KspCtx (MoFEM::Interface &m_field, const std::string &_problem_name) | |
virtual | ~KspCtx ()=default |
FEMethodsSequence & | getSetOperators () |
FEMethodsSequence & | getComputeRhs () |
BasicMethodsSequence & | getPreProcComputeRhs () |
BasicMethodsSequence & | getPostProcComputeRhs () |
BasicMethodsSequence & | getPreProcSetOperators () |
BasicMethodsSequence & | getPostProcSetOperators () |
MoFEMErrorCode | clearLoops () |
Clear loops. More... | |
DEPRECATED FEMethodsSequence & | get_loops_to_do_Mat () |
DEPRECATED FEMethodsSequence & | get_loops_to_do_Rhs () |
DEPRECATED BasicMethodsSequence & | get_preProcess_to_do_Rhs () |
BasicMethodsSequence & | get_postProcess_to_do_Rhs () |
DEPRECATED BasicMethodsSequence & | get_preProcess_to_do_Mat () |
DEPRECATED BasicMethodsSequence & | get_postProcess_to_do_Mat () |
Public Attributes | |
MoFEM::Interface & | mField |
moab::Interface & | moab |
std::string | problemName |
Problem name. More... | |
MoFEMTypes | bH |
If set to MF_EXIST check if element exist. More... | |
FEMethodsSequence | loops_to_do_Mat |
FEMethodsSequence | loops_to_do_Rhs |
BasicMethodsSequence | preProcess_Mat |
BasicMethodsSequence | postProcess_Mat |
BasicMethodsSequence | preProcess_Rhs |
BasicMethodsSequence | postProcess_Rhs |
Private Attributes | |
PetscLogEvent | MOFEM_EVENT_KspRhs |
PetscLogEvent | MOFEM_EVENT_KspMat |
boost::movelib::unique_ptr< bool > | vecAssembleSwitch |
boost::movelib::unique_ptr< bool > | matAssembleSwitch |
Friends | |
PetscErrorCode | KspRhs (KSP ksp, Vec f, void *ctx) |
Run over elements in the lists. More... | |
PetscErrorCode | KspMat (KSP ksp, Mat A, Mat B, void *ctx) |
Run over elements in the list. More... | |
Interface for linear (KSP) solver.
Definition at line 13 of file KspCtx.hpp.
Definition at line 23 of file KspCtx.hpp.
Definition at line 22 of file KspCtx.hpp.
Definition at line 21 of file KspCtx.hpp.
|
inline |
Definition at line 38 of file KspCtx.hpp.
|
virtualdefault |
MoFEMErrorCode MoFEM::KspCtx::clearLoops | ( | ) |
|
inline |
Definition at line 99 of file KspCtx.hpp.
|
inline |
Definition at line 104 of file KspCtx.hpp.
|
inline |
Definition at line 124 of file KspCtx.hpp.
|
inline |
Definition at line 114 of file KspCtx.hpp.
|
inline |
Definition at line 119 of file KspCtx.hpp.
|
inline |
Definition at line 109 of file KspCtx.hpp.
|
inline |
|
inline |
The sequence of BasicMethod is executed after residual is calculated. It can be used to setup data structures, e.g. aggregate data from processors or to apply essential boundary conditions.
Definition at line 72 of file KspCtx.hpp.
|
inline |
The sequence of BasicMethod is executed after tangent matrix is calculated. It can be used to setup data structures, e.g. aggregate data from processors or to apply essential boundary conditions.
Definition at line 86 of file KspCtx.hpp.
|
inline |
The sequence of BasicMethod is executed before residual is calculated. It can be used to setup data structures, e.g. zero global variable which is integrated in domain, e.g. for calculation of strain energy.
Definition at line 63 of file KspCtx.hpp.
|
inline |
|
inline |
Definition at line 49 of file KspCtx.hpp.
|
friend |
Run over elements in the list.
ksp | KSP solver |
A | matrix |
B | Preconditioned matrix |
ctx | data context, i.e. KspCtx |
Definition at line 86 of file KspCtx.cpp.
|
friend |
Run over elements in the lists.
ksp | KSP solver |
f | the right hand side vector |
ctx | data context, i.e. KspCtx |
Definition at line 21 of file KspCtx.cpp.
MoFEMTypes MoFEM::KspCtx::bH |
If set to MF_EXIST check if element exist.
Definition at line 19 of file KspCtx.hpp.
FEMethodsSequence MoFEM::KspCtx::loops_to_do_Mat |
Sequence of finite elements instances assembling tangent matrix
Definition at line 25 of file KspCtx.hpp.
FEMethodsSequence MoFEM::KspCtx::loops_to_do_Rhs |
Sequence of finite elements instances assembling residual vector
Definition at line 27 of file KspCtx.hpp.
|
private |
Definition at line 133 of file KspCtx.hpp.
MoFEM::Interface& MoFEM::KspCtx::mField |
Definition at line 15 of file KspCtx.hpp.
moab::Interface& MoFEM::KspCtx::moab |
Definition at line 16 of file KspCtx.hpp.
|
private |
Definition at line 130 of file KspCtx.hpp.
|
private |
Definition at line 129 of file KspCtx.hpp.
BasicMethodsSequence MoFEM::KspCtx::postProcess_Mat |
Sequence of methods run after tangent matrix is assembled
Definition at line 31 of file KspCtx.hpp.
BasicMethodsSequence MoFEM::KspCtx::postProcess_Rhs |
Sequence of methods run after residual is assembled
Definition at line 35 of file KspCtx.hpp.
BasicMethodsSequence MoFEM::KspCtx::preProcess_Mat |
Sequence of methods run before tangent matrix is assembled
Definition at line 29 of file KspCtx.hpp.
BasicMethodsSequence MoFEM::KspCtx::preProcess_Rhs |
Sequence of methods run before residual is assembled
Definition at line 33 of file KspCtx.hpp.
std::string MoFEM::KspCtx::problemName |
Problem name.
Definition at line 18 of file KspCtx.hpp.
|
private |
Definition at line 132 of file KspCtx.hpp.