![]() |
v0.15.0 |
data structure for ksp (linear solver) context More...
#include "src/interfaces/LoopMethods.hpp"
Public Types | |
enum | KSPContext { CTX_SETFUNCTION , CTX_OPERATORS , CTX_KSPNONE } |
pass information about context of KSP/DM for with finite element is computed More... | |
![]() | |
enum | DataContext { CTX_SET_NONE = 0 , CTX_SET_F = 1 << 0 , CTX_SET_A = 1 << 1 , CTX_SET_B = 1 << 2 , CTX_SET_X = 1 << 3 , CTX_SET_DX = 1 << 4 , CTX_SET_X_T = 1 << 5 , CTX_SET_X_TT = 1 << 6 , CTX_SET_TIME = 1 << 7 } |
using | Switches = std::bitset<8> |
Public Member Functions | |
MoFEMErrorCode | query_interface (boost::typeindex::type_index type_index, UnknownInterface **iface) const |
KspMethod () | |
virtual | ~KspMethod ()=default |
MoFEMErrorCode | copyKsp (const KspMethod &ksp) |
copy data form another method | |
![]() | |
MoFEMErrorCode | query_interface (boost::typeindex::type_index type_index, UnknownInterface **iface) const |
PetscData () | |
virtual | ~PetscData ()=default |
MoFEMErrorCode | copyPetscData (const PetscData &petsc_data) |
![]() | |
template<class IFACE > | |
MoFEMErrorCode | registerInterface (bool error_if_registration_failed=true) |
Register interface. | |
template<class IFACE > | |
MoFEMErrorCode | getInterface (IFACE *&iface) const |
Get interface reference to pointer of interface. | |
template<class IFACE > | |
MoFEMErrorCode | getInterface (IFACE **const iface) const |
Get interface pointer to pointer of interface. | |
template<class IFACE , typename boost::enable_if< boost::is_pointer< IFACE >, int >::type = 0> | |
IFACE | getInterface () const |
Get interface pointer to pointer of interface. | |
template<class IFACE , typename boost::enable_if< boost::is_reference< IFACE >, int >::type = 0> | |
IFACE | getInterface () const |
Get reference to interface. | |
template<class IFACE > | |
IFACE * | getInterface () const |
Function returning pointer to interface. | |
virtual | ~UnknownInterface ()=default |
Public Attributes | |
KSPContext | ksp_ctx |
Context. | |
KSP | ksp |
KSP solver. | |
Vec & | ksp_f |
Mat & | ksp_A |
Mat & | ksp_B |
![]() | |
Switches | data_ctx |
Vec | f |
Mat | A |
Mat | B |
Vec | x |
Vec | dx |
Vec | x_t |
Vec | x_tt |
Additional Inherited Members | |
![]() | |
static MoFEMErrorCode | getLibVersion (Version &version) |
Get library version. | |
static MoFEMErrorCode | getFileVersion (moab::Interface &moab, Version &version) |
Get database major version. | |
static MoFEMErrorCode | setFileVersion (moab::Interface &moab, Version version=Version(MoFEM_VERSION_MAJOR, MoFEM_VERSION_MINOR, MoFEM_VERSION_BUILD)) |
Get database major version. | |
static MoFEMErrorCode | getInterfaceVersion (Version &version) |
Get database major version. | |
![]() | |
static constexpr Switches | CtxSetNone = PetscData::Switches(CTX_SET_NONE) |
static constexpr Switches | CtxSetF = PetscData::Switches(CTX_SET_F) |
static constexpr Switches | CtxSetA = PetscData::Switches(CTX_SET_A) |
static constexpr Switches | CtxSetB = PetscData::Switches(CTX_SET_B) |
static constexpr Switches | CtxSetX = PetscData::Switches(CTX_SET_X) |
static constexpr Switches | CtxSetDX = PetscData::Switches(CTX_SET_DX) |
static constexpr Switches | CtxSetX_T = PetscData::Switches(CTX_SET_X_T) |
static constexpr Switches | CtxSetX_TT = PetscData::Switches(CTX_SET_X_TT) |
static constexpr Switches | CtxSetTime = PetscData::Switches(CTX_SET_TIME) |
data structure for ksp (linear solver) context
Struture stores context data which are set in functions run by PETSc SNES functions.
Definition at line 68 of file LoopMethods.hpp.
pass information about context of KSP/DM for with finite element is computed
Enumerator | |
---|---|
CTX_SETFUNCTION | |
CTX_OPERATORS | |
CTX_KSPNONE |
Definition at line 77 of file LoopMethods.hpp.
MoFEM::KspMethod::KspMethod | ( | ) |
Definition at line 52 of file LoopMethods.cpp.
|
virtualdefault |
MoFEMErrorCode MoFEM::KspMethod::copyKsp | ( | const KspMethod & | ksp | ) |
copy data form another method
ksp | ksp method |
Definition at line 56 of file LoopMethods.cpp.
|
virtual |
Implements MoFEM::UnknownInterface.
Definition at line 46 of file LoopMethods.cpp.
KSP MoFEM::KspMethod::ksp |
KSP solver.
Definition at line 91 of file LoopMethods.hpp.
Mat& MoFEM::KspMethod::ksp_A |
Definition at line 94 of file LoopMethods.hpp.
Mat& MoFEM::KspMethod::ksp_B |
Definition at line 95 of file LoopMethods.hpp.
KSPContext MoFEM::KspMethod::ksp_ctx |
Context.
Definition at line 90 of file LoopMethods.hpp.
Vec& MoFEM::KspMethod::ksp_f |
Definition at line 93 of file LoopMethods.hpp.