Nektar++
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Friends | List of all members
Nektar::LibUtilities::TimeIntegrationRungeKutta4 Class Reference

#include <TimeIntegrationWrapper.h>

Inheritance diagram for Nektar::LibUtilities::TimeIntegrationRungeKutta4:
[legend]

Public Member Functions

virtual ~TimeIntegrationRungeKutta4 ()
 
- Public Member Functions inherited from Nektar::LibUtilities::TimeIntegrationWrapper
virtual ~TimeIntegrationWrapper ()
 
void InitObject ()
 
TimeIntegrationSolutionSharedPtr InitializeScheme (const NekDouble timestep, TimeIntegrationScheme::ConstDoubleArray &y_0, const NekDouble time, const TimeIntegrationSchemeOperators &op)
 
TimeIntegrationScheme::ConstDoubleArrayTimeIntegrate (const int timestep, const NekDouble delta_t, TimeIntegrationSolutionSharedPtr &solvector, const TimeIntegrationSchemeOperators &op)
 
TimeIntegrationMethod GetIntegrationMethod ()
 
TimeIntegrationSchemeType GetIntegrationSchemeType () const
 
unsigned int GetIntegrationSteps ()
 

Static Public Member Functions

static TimeIntegrationWrapperSharedPtr create ()
 Creates an instance of this class. More...
 

Static Public Attributes

static std::string className
 Name of class. More...
 

Protected Member Functions

virtual void v_InitObject ()
 
- Protected Member Functions inherited from Nektar::LibUtilities::TimeIntegrationWrapper
 TimeIntegrationWrapper ()
 Constructor. More...
 

Friends

class MemoryManager< TimeIntegrationRungeKutta4 >
 

Additional Inherited Members

- Protected Attributes inherited from Nektar::LibUtilities::TimeIntegrationWrapper
TimeIntegrationMethod m_method
 
int m_intSteps
 
std::vector< TimeIntegrationSchemeSharedPtrm_intScheme
 

Detailed Description

Definition at line 640 of file TimeIntegrationWrapper.h.

Constructor & Destructor Documentation

◆ ~TimeIntegrationRungeKutta4()

virtual Nektar::LibUtilities::TimeIntegrationRungeKutta4::~TimeIntegrationRungeKutta4 ( )
inlinevirtual

Member Function Documentation

◆ create()

static TimeIntegrationWrapperSharedPtr Nektar::LibUtilities::TimeIntegrationRungeKutta4::create ( )
inlinestatic

Creates an instance of this class.

Definition at line 646 of file TimeIntegrationWrapper.h.

References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), and CellMLToNektar.cellml_metadata::p.

Referenced by Nektar::LibUtilities::TimeIntegrationClassicalRungeKutta4::v_InitObject().

647  {
651  p->InitObject();
652  return p;
653  }
std::shared_ptr< TimeIntegrationWrapper > TimeIntegrationWrapperSharedPtr
static std::shared_ptr< DataType > AllocateSharedPtr(const Args &...args)
Allocate a shared pointer from the memory pool.

◆ v_InitObject()

void Nektar::LibUtilities::TimeIntegrationRungeKutta4::v_InitObject ( )
protectedvirtual

Reimplemented from Nektar::LibUtilities::TimeIntegrationWrapper.

Definition at line 441 of file TimeIntegrationWrapper.cpp.

References Nektar::LibUtilities::TimeIntegrationRungeKutta5::className, Nektar::LibUtilities::TimeIntegrationRungeKutta5::create(), Nektar::LibUtilities::eRungeKutta4, Nektar::LibUtilities::GetTimeIntegrationWrapperFactory(), Nektar::LibUtilities::TimeIntegrationWrapper::m_intScheme, Nektar::LibUtilities::TimeIntegrationWrapper::m_intSteps, Nektar::LibUtilities::TimeIntegrationWrapper::m_method, Nektar::LibUtilities::NekFactory< tKey, tBase, tParam >::RegisterCreatorFunction(), and Nektar::LibUtilities::TimeIntegrationSchemeManager().

442  {
443  TimeIntegrationSchemeKey IntKey0(eRungeKutta4);
445  m_intSteps = 1;
446  m_intScheme = std::vector<TimeIntegrationSchemeSharedPtr>(m_intSteps);
448  }
Classical RungeKutta4 method (new name for eClassicalRungeKutta4)
TimeIntegrationSchemeManagerT & TimeIntegrationSchemeManager(void)
std::vector< TimeIntegrationSchemeSharedPtr > m_intScheme

Friends And Related Function Documentation

◆ MemoryManager< TimeIntegrationRungeKutta4 >

friend class MemoryManager< TimeIntegrationRungeKutta4 >
friend

Definition at line 643 of file TimeIntegrationWrapper.h.

Member Data Documentation

◆ className

std::string Nektar::LibUtilities::TimeIntegrationRungeKutta4::className
static