Nektar++
|
Base class for No time integration schemes. More...
#include <NoSchemeTimeIntegrationScheme.h>
Public Member Functions | |
LUE | NoSchemeTimeIntegrationScheme (std::string variant, unsigned int order, std::vector< NekDouble > freeParams) |
~NoSchemeTimeIntegrationScheme () override | |
LUE std::string | v_GetName () const override |
LUE std::string | v_GetVariant () const override |
LUE size_t | v_GetOrder () const override |
LUE std::vector< NekDouble > | v_GetFreeParams () const override |
LUE NekDouble | v_GetTimeStability () const override |
LUE TimeIntegrationSchemeType | v_GetIntegrationSchemeType () const override |
LUE size_t | v_GetNumIntegrationPhases () const override |
const TripleArray & | v_GetSolutionVector () const override |
void | v_SetSolutionVector (const size_t Offset, const DoubleArray &y) override |
LUE void | v_InitializeScheme (const NekDouble deltaT, ConstDoubleArray &y_0, const NekDouble time, const TimeIntegrationSchemeOperators &op) override |
Worker method to initialize the integration scheme. More... | |
LUE ConstDoubleArray & | v_TimeIntegrate (const size_t timestep, const NekDouble delta_t) override |
Worker method that actually does the time integration. More... | |
LUE void | v_print (std::ostream &os) const override |
Worker method to print details on the integration scheme. More... | |
LUE void | v_printFull (std::ostream &os) const override |
LUE TripleArray & | v_UpdateSolutionVector () override |
Public Member Functions inherited from Nektar::LibUtilities::TimeIntegrationScheme | |
LUE std::string | GetFullName () const |
LUE std::string | GetName () const |
LUE std::string | GetVariant () const |
LUE size_t | GetOrder () const |
LUE std::vector< NekDouble > | GetFreeParams () |
LUE TimeIntegrationSchemeType | GetIntegrationSchemeType () |
LUE NekDouble | GetTimeStability () const |
LUE size_t | GetNumIntegrationPhases () |
LUE const TripleArray & | GetSolutionVector () const |
Gets the solution vector of the ODE. More... | |
LUE TripleArray & | UpdateSolutionVector () |
LUE void | SetSolutionVector (const size_t Offset, const DoubleArray &y) |
Sets the solution vector of the ODE. More... | |
LUE void | InitializeScheme (const NekDouble deltaT, ConstDoubleArray &y_0, const NekDouble time, const TimeIntegrationSchemeOperators &op) |
Explicit integration of an ODE. More... | |
LUE ConstDoubleArray & | TimeIntegrate (const size_t timestep, const NekDouble delta_t) |
LUE void | print (std::ostream &os) const |
LUE void | printFull (std::ostream &os) const |
Static Public Member Functions | |
static NoTimeIntegrationSchemeSharedPtr | create (std::string variant, unsigned int order, std::vector< NekDouble > freeParams) |
Static Public Attributes | |
static std::string | className |
Protected Attributes | |
DoubleArray | m_doubleArray |
Static Protected Attributes | |
static std::string | TimeIntegrationMethodLookupId |
Additional Inherited Members | |
Protected Member Functions inherited from Nektar::LibUtilities::TimeIntegrationScheme | |
virtual LUE std::string | v_GetFullName () const |
virtual LUE std::string | v_GetName () const =0 |
virtual LUE std::string | v_GetVariant () const =0 |
virtual LUE size_t | v_GetOrder () const =0 |
virtual LUE std::vector< NekDouble > | v_GetFreeParams () const =0 |
virtual LUE TimeIntegrationSchemeType | v_GetIntegrationSchemeType () const =0 |
virtual LUE NekDouble | v_GetTimeStability () const =0 |
virtual LUE size_t | v_GetNumIntegrationPhases () const =0 |
virtual LUE const TripleArray & | v_GetSolutionVector () const =0 |
virtual LUE TripleArray & | v_UpdateSolutionVector ()=0 |
virtual LUE void | v_SetSolutionVector (const size_t Offset, const DoubleArray &y)=0 |
virtual LUE void | v_InitializeScheme (const NekDouble deltaT, ConstDoubleArray &y_0, const NekDouble time, const TimeIntegrationSchemeOperators &op)=0 |
virtual LUE ConstDoubleArray & | v_TimeIntegrate (const size_t timestep, const NekDouble delta_t)=0 |
virtual LUE void | v_print (std::ostream &os) const =0 |
virtual LUE void | v_printFull (std::ostream &os) const =0 |
LUE | TimeIntegrationScheme (std::string variant, size_t order, std::vector< NekDouble > freeParams) |
LUE | TimeIntegrationScheme (const TimeIntegrationScheme &in)=delete |
virtual | ~TimeIntegrationScheme ()=default |
Base class for No time integration schemes.
Definition at line 49 of file NoSchemeTimeIntegrationScheme.h.
|
inline |
Definition at line 52 of file NoSchemeTimeIntegrationScheme.h.
|
inlineoverride |
Definition at line 57 of file NoSchemeTimeIntegrationScheme.h.
|
inlinestatic |
Definition at line 61 of file NoSchemeTimeIntegrationScheme.h.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), and CellMLToNektar.cellml_metadata::p.
|
overridevirtual |
Implements Nektar::LibUtilities::TimeIntegrationScheme.
Definition at line 59 of file NoSchemeTimeIntegrationScheme.cpp.
|
overridevirtual |
Implements Nektar::LibUtilities::TimeIntegrationScheme.
Definition at line 69 of file NoSchemeTimeIntegrationScheme.cpp.
References Nektar::LibUtilities::eNoTimeIntegrationSchemeType.
|
overridevirtual |
Implements Nektar::LibUtilities::TimeIntegrationScheme.
Definition at line 44 of file NoSchemeTimeIntegrationScheme.cpp.
|
overridevirtual |
Implements Nektar::LibUtilities::TimeIntegrationScheme.
Definition at line 75 of file NoSchemeTimeIntegrationScheme.cpp.
|
overridevirtual |
Implements Nektar::LibUtilities::TimeIntegrationScheme.
Definition at line 54 of file NoSchemeTimeIntegrationScheme.cpp.
|
inlineoverridevirtual |
Implements Nektar::LibUtilities::TimeIntegrationScheme.
Definition at line 85 of file NoSchemeTimeIntegrationScheme.h.
References Nektar::NullNekDoubleTensorOfArray3D.
|
overridevirtual |
Implements Nektar::LibUtilities::TimeIntegrationScheme.
Definition at line 64 of file NoSchemeTimeIntegrationScheme.cpp.
|
overridevirtual |
Implements Nektar::LibUtilities::TimeIntegrationScheme.
Definition at line 49 of file NoSchemeTimeIntegrationScheme.cpp.
|
overridevirtual |
Worker method to initialize the integration scheme.
Implements Nektar::LibUtilities::TimeIntegrationScheme.
Definition at line 83 of file NoSchemeTimeIntegrationScheme.cpp.
References m_doubleArray.
|
overridevirtual |
Worker method to print details on the integration scheme.
Implements Nektar::LibUtilities::TimeIntegrationScheme.
Definition at line 109 of file NoSchemeTimeIntegrationScheme.cpp.
References Nektar::LibUtilities::TimeIntegrationScheme::GetFullName().
|
overridevirtual |
Implements Nektar::LibUtilities::TimeIntegrationScheme.
Definition at line 114 of file NoSchemeTimeIntegrationScheme.cpp.
References Nektar::LibUtilities::TimeIntegrationScheme::GetFullName().
|
inlineoverridevirtual |
Implements Nektar::LibUtilities::TimeIntegrationScheme.
Definition at line 91 of file NoSchemeTimeIntegrationScheme.h.
|
overridevirtual |
Worker method that actually does the time integration.
Implements Nektar::LibUtilities::TimeIntegrationScheme.
Definition at line 94 of file NoSchemeTimeIntegrationScheme.cpp.
References m_doubleArray.
|
overridevirtual |
Implements Nektar::LibUtilities::TimeIntegrationScheme.
Definition at line 101 of file NoSchemeTimeIntegrationScheme.cpp.
References Nektar::NullNekDoubleTensorOfArray3D.
|
static |
Definition at line 109 of file NoSchemeTimeIntegrationScheme.h.
|
protected |
Definition at line 112 of file NoSchemeTimeIntegrationScheme.h.
Referenced by v_InitializeScheme(), and v_TimeIntegrate().
|
staticprotected |
Definition at line 114 of file NoSchemeTimeIntegrationScheme.h.