![]() |
v0.14.0 |
data structure for TS (time stepping) context More...
#include <src/interfaces/LoopMethods.hpp>
Public Types | |
| enum | TSContext { CTX_TSSETRHSFUNCTION, CTX_TSSETRHSJACOBIAN, CTX_TSSETIFUNCTION, CTX_TSSETIJACOBIAN, CTX_TSTSMONITORSET, CTX_TSNONE } |
Public Member Functions | |
| MoFEMErrorCode | query_interface (boost::typeindex::type_index type_index, UnknownInterface **iface) const |
| TSMethod () | |
| virtual | ~TSMethod ()=default |
| MoFEMErrorCode | copyTs (const TSMethod &ts) |
| Copy TS solver data. More... | |
Public Attributes | |
| TS | ts |
| time solver More... | |
| TSContext | ts_ctx |
| PetscInt | ts_step |
| time step number More... | |
| PetscReal | ts_a |
| shift for U_t (see PETSc Time Solver) More... | |
| PetscReal | ts_aa |
| shift for U_tt shift for U_tt More... | |
| PetscReal | ts_t |
| time More... | |
| PetscReal | ts_dt |
| time step size More... | |
| Vec & | ts_u |
| state vector More... | |
| Vec & | ts_u_t |
| time derivative of state vector More... | |
| Vec & | ts_u_tt |
| second time derivative of state vector More... | |
| Vec & | ts_F |
| residual vector More... | |
| Mat & | ts_A |
| Mat & | ts_B |
| Preconditioner for ts_A. 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 TS (time stepping) context
Structure stores context data which are set in functions run by PETSc Time Stepping functions.
Definition at line 134 of file LoopMethods.hpp.
| Enumerator | |
|---|---|
| CTX_TSSETRHSFUNCTION | |
| CTX_TSSETRHSJACOBIAN | |
| CTX_TSSETIFUNCTION | |
| CTX_TSSETIJACOBIAN | |
| CTX_TSTSMONITORSET | |
| CTX_TSNONE | |
Definition at line 139 of file LoopMethods.hpp.
| MoFEM::TSMethod::TSMethod | ( | ) |
Definition at line 91 of file LoopMethods.cpp.
|
virtualdefault |
| MoFEMErrorCode MoFEM::TSMethod::copyTs | ( | const TSMethod & | ts | ) |
Copy TS solver data.
Definition at line 96 of file LoopMethods.cpp.
|
virtual |
Reimplemented from MoFEM::PetscData.
Reimplemented in MoFEM::DofMethod, MoFEM::EntityMethod, MoFEM::FEMethod, and MoFEM::BasicMethod.
Definition at line 85 of file LoopMethods.cpp.
| TS MoFEM::TSMethod::ts |
| PetscReal MoFEM::TSMethod::ts_a |
shift for U_t (see PETSc Time Solver)
Definition at line 160 of file LoopMethods.hpp.
| Mat& MoFEM::TSMethod::ts_A |
Jacobian of G(U) = F(t,U,W+v*U,W'+a*U), equivalent to dF/dU + v*dF/dU_t + a*dF/dU_tt
Definition at line 170 of file LoopMethods.hpp.
| PetscReal MoFEM::TSMethod::ts_aa |
shift for U_tt shift for U_tt
Definition at line 161 of file LoopMethods.hpp.
| Mat& MoFEM::TSMethod::ts_B |
Preconditioner for ts_A.
Definition at line 172 of file LoopMethods.hpp.
| TSContext MoFEM::TSMethod::ts_ctx |
Definition at line 157 of file LoopMethods.hpp.
| PetscReal MoFEM::TSMethod::ts_dt |
time step size
Definition at line 163 of file LoopMethods.hpp.
| Vec& MoFEM::TSMethod::ts_F |
| PetscInt MoFEM::TSMethod::ts_step |
| PetscReal MoFEM::TSMethod::ts_t |
time
Definition at line 162 of file LoopMethods.hpp.
| Vec& MoFEM::TSMethod::ts_u |
state vector
Definition at line 165 of file LoopMethods.hpp.
| Vec& MoFEM::TSMethod::ts_u_t |
time derivative of state vector
Definition at line 166 of file LoopMethods.hpp.
| Vec& MoFEM::TSMethod::ts_u_tt |
second time derivative of state vector
Definition at line 167 of file LoopMethods.hpp.