Nektar++
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Member Functions | Protected Attributes | List of all members
Nektar::Collections::Operator Class Referenceabstract

Base class for operators on a collection of elements. More...

#include <Operator.h>

Inheritance diagram for Nektar::Collections::Operator:
Inheritance graph
[legend]

Public Member Functions

 Operator (std::vector< StdRegions::StdExpansionSharedPtr > pCollExp, boost::shared_ptr< CoalescedGeomData > GeomData)
 Constructor. More...
 
virtual COLLECTIONS_EXPORT void operator() (const Array< OneD, const NekDouble > &input, Array< OneD, NekDouble > &output0, Array< OneD, NekDouble > &output1, Array< OneD, NekDouble > &output2, Array< OneD, NekDouble > &wsp=NullNekDouble1DArray)=0
 Perform operation. More...
 
virtual COLLECTIONS_EXPORT void operator() (int dir, const Array< OneD, const NekDouble > &input, Array< OneD, NekDouble > &output, Array< OneD, NekDouble > &wsp=NullNekDouble1DArray)=0
 
virtual COLLECTIONS_EXPORT ~Operator ()
 
int GetWspSize ()
 Get the size of the required workspace. More...
 

Protected Attributes

StdRegions::StdExpansionSharedPtr m_stdExp
 
unsigned int m_numElmt
 
unsigned int m_wspSize
 

Detailed Description

Base class for operators on a collection of elements.

Definition at line 108 of file Operator.h.

Constructor & Destructor Documentation

Nektar::Collections::Operator::Operator ( std::vector< StdRegions::StdExpansionSharedPtr pCollExp,
boost::shared_ptr< CoalescedGeomData GeomData 
)
inline

Constructor.

Definition at line 112 of file Operator.h.

115  : m_stdExp(pCollExp[0]->GetStdExp()),
116  m_numElmt(pCollExp.size()),
117  m_wspSize(0)
118  {
119  }
StdRegions::StdExpansionSharedPtr GetStdExp(StdRegions::StdExpansionSharedPtr exp)
Definition: ExpList.cpp:3081
StdRegions::StdExpansionSharedPtr m_stdExp
Definition: Operator.h:146
Nektar::Collections::Operator::~Operator ( )
virtual

Definition at line 102 of file Operator.cpp.

103 {
104 }

Member Function Documentation

int Nektar::Collections::Operator::GetWspSize ( )
inline

Get the size of the required workspace.

Definition at line 140 of file Operator.h.

References m_wspSize.

141  {
142  return m_wspSize;
143  }
virtual COLLECTIONS_EXPORT void Nektar::Collections::Operator::operator() ( const Array< OneD, const NekDouble > &  input,
Array< OneD, NekDouble > &  output0,
Array< OneD, NekDouble > &  output1,
Array< OneD, NekDouble > &  output2,
Array< OneD, NekDouble > &  wsp = NullNekDouble1DArray 
)
pure virtual

Perform operation.

Implemented in Nektar::Collections::PhysDeriv_SumFac_Prism, Nektar::Collections::IProductWRTDerivBase_SumFac_Prism, Nektar::Collections::PhysDeriv_SumFac_Tet, Nektar::Collections::IProductWRTDerivBase_SumFac_Tet, Nektar::Collections::PhysDeriv_SumFac_Hex, Nektar::Collections::BwdTrans_SumFac_Prism, Nektar::Collections::IProductWRTDerivBase_SumFac_Hex, Nektar::Collections::IProductWRTBase_SumFac_Prism, Nektar::Collections::PhysDeriv_SumFac_Tri, Nektar::Collections::BwdTrans_SumFac_Tet, Nektar::Collections::IProductWRTDerivBase_SumFac_Tri, Nektar::Collections::IProductWRTBase_SumFac_Tet, Nektar::Collections::PhysDeriv_SumFac_Quad, Nektar::Collections::BwdTrans_SumFac_Hex, Nektar::Collections::IProductWRTBase_SumFac_Hex, Nektar::Collections::IProductWRTDerivBase_SumFac_Quad, Nektar::Collections::IProductWRTBase_SumFac_Tri, Nektar::Collections::PhysDeriv_SumFac_Seg, Nektar::Collections::IProductWRTDerivBase_SumFac_Seg, Nektar::Collections::BwdTrans_SumFac_Tri, Nektar::Collections::IProductWRTBase_SumFac_Quad, Nektar::Collections::BwdTrans_SumFac_Quad, Nektar::Collections::PhysDeriv_NoCollection, Nektar::Collections::IProductWRTDerivBase_NoCollection, Nektar::Collections::IProductWRTBase_SumFac_Seg, Nektar::Collections::BwdTrans_SumFac_Seg, Nektar::Collections::IProductWRTBase_NoCollection, Nektar::Collections::PhysDeriv_IterPerExp, Nektar::Collections::IProductWRTDerivBase_IterPerExp, Nektar::Collections::BwdTrans_NoCollection, Nektar::Collections::IProductWRTBase_IterPerExp, Nektar::Collections::BwdTrans_IterPerExp, Nektar::Collections::IProductWRTBase_StdMat, Nektar::Collections::IProductWRTDerivBase_StdMat, Nektar::Collections::BwdTrans_StdMat, and Nektar::Collections::PhysDeriv_StdMat.

virtual COLLECTIONS_EXPORT void Nektar::Collections::Operator::operator() ( int  dir,
const Array< OneD, const NekDouble > &  input,
Array< OneD, NekDouble > &  output,
Array< OneD, NekDouble > &  wsp = NullNekDouble1DArray 
)
pure virtual

Implemented in Nektar::Collections::PhysDeriv_SumFac_Prism, Nektar::Collections::IProductWRTDerivBase_SumFac_Prism, Nektar::Collections::PhysDeriv_SumFac_Tet, Nektar::Collections::IProductWRTDerivBase_SumFac_Tet, Nektar::Collections::PhysDeriv_SumFac_Hex, Nektar::Collections::BwdTrans_SumFac_Prism, Nektar::Collections::IProductWRTDerivBase_SumFac_Hex, Nektar::Collections::BwdTrans_SumFac_Tet, Nektar::Collections::PhysDeriv_SumFac_Tri, Nektar::Collections::IProductWRTBase_SumFac_Prism, Nektar::Collections::IProductWRTDerivBase_SumFac_Tri, Nektar::Collections::IProductWRTBase_SumFac_Tet, Nektar::Collections::PhysDeriv_SumFac_Quad, Nektar::Collections::BwdTrans_SumFac_Hex, Nektar::Collections::IProductWRTDerivBase_SumFac_Quad, Nektar::Collections::IProductWRTBase_SumFac_Hex, Nektar::Collections::PhysDeriv_SumFac_Seg, Nektar::Collections::BwdTrans_SumFac_Tri, Nektar::Collections::IProductWRTBase_SumFac_Tri, Nektar::Collections::IProductWRTDerivBase_SumFac_Seg, Nektar::Collections::IProductWRTBase_SumFac_Quad, Nektar::Collections::BwdTrans_SumFac_Quad, Nektar::Collections::PhysDeriv_NoCollection, Nektar::Collections::IProductWRTDerivBase_NoCollection, Nektar::Collections::IProductWRTBase_SumFac_Seg, Nektar::Collections::BwdTrans_SumFac_Seg, Nektar::Collections::IProductWRTDerivBase_IterPerExp, Nektar::Collections::IProductWRTBase_NoCollection, Nektar::Collections::PhysDeriv_IterPerExp, Nektar::Collections::BwdTrans_NoCollection, Nektar::Collections::IProductWRTBase_IterPerExp, Nektar::Collections::BwdTrans_IterPerExp, Nektar::Collections::IProductWRTDerivBase_StdMat, Nektar::Collections::PhysDeriv_StdMat, Nektar::Collections::IProductWRTBase_StdMat, and Nektar::Collections::BwdTrans_StdMat.

Member Data Documentation

unsigned int Nektar::Collections::Operator::m_numElmt
protected

Definition at line 147 of file Operator.h.

StdRegions::StdExpansionSharedPtr Nektar::Collections::Operator::m_stdExp
protected

Definition at line 146 of file Operator.h.

unsigned int Nektar::Collections::Operator::m_wspSize
protected

Definition at line 148 of file Operator.h.

Referenced by GetWspSize().