v0.14.0 |
data structure for snes (nonlinear solver) context More...
#include <src/interfaces/LoopMethods.hpp>
Public Types | |
enum | SNESContext { CTX_SNESSETFUNCTION, CTX_SNESSETJACOBIAN, CTX_SNESNONE } |
Public Member Functions | |
MoFEMErrorCode | query_interface (boost::typeindex::type_index type_index, UnknownInterface **iface) const |
SnesMethod () | |
virtual | ~SnesMethod ()=default |
MoFEMErrorCode | copySnes (const SnesMethod &snes) |
Copy snes data. More... | |
Public Attributes | |
SNESContext | snes_ctx |
SNES | snes |
snes solver More... | |
Vec & | snes_x |
state vector More... | |
Vec & | snes_f |
residual More... | |
Mat & | snes_A |
jacobian matrix More... | |
Mat & | snes_B |
preconditioner of jacobian matrix More... | |
Additional Inherited Members | |
Protected Types inherited from MoFEM::PetscData | |
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_X_T = 1 << 4, CTX_SET_X_TT = 1 << 6, CTX_SET_TIME = 1 << 7 } |
using | Switches = std::bitset< 8 > |
Protected Member Functions inherited from MoFEM::PetscData | |
PetscData () | |
virtual | ~PetscData ()=default |
MoFEMErrorCode | copyPetscData (const PetscData &petsc_data) |
Protected Member Functions inherited from MoFEM::UnknownInterface | |
template<class IFACE > | |
MoFEMErrorCode | registerInterface (bool error_if_registration_failed=true) |
Register interface. More... | |
template<class IFACE > | |
MoFEMErrorCode | getInterface (IFACE *&iface) const |
Get interface reference to pointer of interface. More... | |
template<class IFACE > | |
MoFEMErrorCode | getInterface (IFACE **const iface) const |
Get interface pointer to pointer of interface. More... | |
template<class IFACE , typename boost::enable_if< boost::is_pointer< IFACE >, int >::type = 0> | |
IFACE | getInterface () const |
Get interface pointer to pointer of interface. More... | |
template<class IFACE , typename boost::enable_if< boost::is_reference< IFACE >, int >::type = 0> | |
IFACE | getInterface () const |
Get reference to interface. More... | |
template<class IFACE > | |
IFACE * | getInterface () const |
Function returning pointer to interface. More... | |
virtual | ~UnknownInterface ()=default |
Static Protected Member Functions inherited from MoFEM::UnknownInterface | |
static MoFEMErrorCode | getLibVersion (Version &version) |
Get library version. More... | |
static MoFEMErrorCode | getFileVersion (moab::Interface &moab, Version &version) |
Get database major version. More... | |
static MoFEMErrorCode | setFileVersion (moab::Interface &moab, Version version=Version(MoFEM_VERSION_MAJOR, MoFEM_VERSION_MINOR, MoFEM_VERSION_BUILD)) |
Get database major version. More... | |
static MoFEMErrorCode | getInterfaceVersion (Version &version) |
Get database major version. More... | |
Protected Attributes inherited from MoFEM::PetscData | |
Switches | data_ctx |
Vec | f |
Mat | A |
Mat | B |
Vec | x |
Vec | x_t |
Vec | x_tt |
Static Protected Attributes inherited from MoFEM::PetscData | |
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 | 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 snes (nonlinear solver) context
Structure stores context data which are set in functions run by PETSc SNES functions.
Definition at line 102 of file LoopMethods.hpp.
Enumerator | |
---|---|
CTX_SNESSETFUNCTION | |
CTX_SNESSETJACOBIAN | |
CTX_SNESNONE |
Definition at line 107 of file LoopMethods.hpp.
MoFEM::SnesMethod::SnesMethod | ( | ) |
Definition at line 71 of file LoopMethods.cpp.
|
virtualdefault |
MoFEMErrorCode MoFEM::SnesMethod::copySnes | ( | const SnesMethod & | snes | ) |
|
virtual |
Reimplemented from MoFEM::PetscData.
Reimplemented in MoFEM::DofMethod, MoFEM::EntityMethod, MoFEM::FEMethod, and MoFEM::BasicMethod.
Definition at line 65 of file LoopMethods.cpp.
SNES MoFEM::SnesMethod::snes |
snes solver
Definition at line 120 of file LoopMethods.hpp.
Mat& MoFEM::SnesMethod::snes_A |
jacobian matrix
Definition at line 123 of file LoopMethods.hpp.
Mat& MoFEM::SnesMethod::snes_B |
preconditioner of jacobian matrix
Definition at line 124 of file LoopMethods.hpp.
SNESContext MoFEM::SnesMethod::snes_ctx |
Definition at line 118 of file LoopMethods.hpp.
Vec& MoFEM::SnesMethod::snes_f |
residual
Definition at line 122 of file LoopMethods.hpp.
Vec& MoFEM::SnesMethod::snes_x |
state vector
Definition at line 121 of file LoopMethods.hpp.