Nektar++
Public Types | Public Member Functions | Protected Attributes | List of all members
Nektar::LibUtilities::TimeIntegrationSchemeOperators Class Reference

Binds a set of functions for use by time integration schemes. More...

#include <TimeIntegrationSchemeOperators.h>

Public Types

typedef const Array< OneD, const Array< OneD, NekDouble > > InArrayType
 
typedef Array< OneD, Array< OneD, NekDouble > > OutArrayType
 
typedef std::function< void(InArrayType &, OutArrayType &, const NekDouble)> FunctorType1
 
typedef std::function< void(InArrayType &, OutArrayType &, const NekDouble, const NekDouble)> FunctorType2
 
typedef const FunctorType1ConstFunctorType1Ref
 
typedef const FunctorType2ConstFunctorType2Ref
 
typedef Array< OneD, FunctorType1FunctorType1Array
 
typedef Array< OneD, FunctorType2FunctorType2Array
 

Public Member Functions

 TimeIntegrationSchemeOperators (void)
 
template<typename FuncPointerT , typename ObjectPointerT >
void DefineOdeRhs (FuncPointerT func, ObjectPointerT obj)
 
template<typename FuncPointerT , typename ObjectPointerT >
void DefineProjection (FuncPointerT func, ObjectPointerT obj)
 
template<typename FuncPointerT , typename ObjectPointerT >
void DefineImplicitSolve (FuncPointerT func, ObjectPointerT obj)
 
void DoOdeRhs (InArrayType &inarray, OutArrayType &outarray, const NekDouble time) const
 
void DoProjection (InArrayType &inarray, OutArrayType &outarray, const NekDouble time) const
 
void DoImplicitSolve (InArrayType &inarray, OutArrayType &outarray, const NekDouble time, const NekDouble lambda) const
 

Protected Attributes

FunctorType1Array m_functors1
 
FunctorType2Array m_functors2
 

Detailed Description

Binds a set of functions for use by time integration schemes.

Definition at line 61 of file TimeIntegrationSchemeOperators.h.

Member Typedef Documentation

◆ ConstFunctorType1Ref

Definition at line 73 of file TimeIntegrationSchemeOperators.h.

◆ ConstFunctorType2Ref

Definition at line 74 of file TimeIntegrationSchemeOperators.h.

◆ FunctorType1

Definition at line 68 of file TimeIntegrationSchemeOperators.h.

◆ FunctorType1Array

Definition at line 76 of file TimeIntegrationSchemeOperators.h.

◆ FunctorType2

Definition at line 71 of file TimeIntegrationSchemeOperators.h.

◆ FunctorType2Array

Definition at line 77 of file TimeIntegrationSchemeOperators.h.

◆ InArrayType

Definition at line 64 of file TimeIntegrationSchemeOperators.h.

◆ OutArrayType

Definition at line 65 of file TimeIntegrationSchemeOperators.h.

Constructor & Destructor Documentation

◆ TimeIntegrationSchemeOperators()

Nektar::LibUtilities::TimeIntegrationSchemeOperators::TimeIntegrationSchemeOperators ( void  )
inline

Member Function Documentation

◆ DefineImplicitSolve()

template<typename FuncPointerT , typename ObjectPointerT >
void Nektar::LibUtilities::TimeIntegrationSchemeOperators::DefineImplicitSolve ( FuncPointerT  func,
ObjectPointerT  obj 
)
inline

◆ DefineOdeRhs()

template<typename FuncPointerT , typename ObjectPointerT >
void Nektar::LibUtilities::TimeIntegrationSchemeOperators::DefineOdeRhs ( FuncPointerT  func,
ObjectPointerT  obj 
)
inline

◆ DefineProjection()

template<typename FuncPointerT , typename ObjectPointerT >
void Nektar::LibUtilities::TimeIntegrationSchemeOperators::DefineProjection ( FuncPointerT  func,
ObjectPointerT  obj 
)
inline

◆ DoImplicitSolve()

void Nektar::LibUtilities::TimeIntegrationSchemeOperators::DoImplicitSolve ( InArrayType inarray,
OutArrayType outarray,
const NekDouble  time,
const NekDouble  lambda 
) const
inline

◆ DoOdeRhs()

void Nektar::LibUtilities::TimeIntegrationSchemeOperators::DoOdeRhs ( InArrayType inarray,
OutArrayType outarray,
const NekDouble  time 
) const
inline

◆ DoProjection()

void Nektar::LibUtilities::TimeIntegrationSchemeOperators::DoProjection ( InArrayType inarray,
OutArrayType outarray,
const NekDouble  time 
) const
inline

Member Data Documentation

◆ m_functors1

FunctorType1Array Nektar::LibUtilities::TimeIntegrationSchemeOperators::m_functors1
protected

◆ m_functors2

FunctorType2Array Nektar::LibUtilities::TimeIntegrationSchemeOperators::m_functors2
protected

Definition at line 134 of file TimeIntegrationSchemeOperators.h.

Referenced by DefineImplicitSolve(), and DoImplicitSolve().