35 #ifndef UTILITIES_NEKMESH_PROCESSVAROPTI
36 #define UTILITIES_NEKMESH_PROCESSVAROPTI
100 typedef std::map<int, std::vector<ElUtilSharedPtr> >
NodeElMap;
102 std::map<LibUtilities::ShapeType, DerivUtilSharedPtr>
BuildDerivUtil(
int o);
104 int o, std::map<LibUtilities::ShapeType, DerivUtilSharedPtr> derMap);
107 std::vector<NodeSharedPtr> remain);
109 std::vector<ElUtilSharedPtr> elLock);
static std::shared_ptr< DataType > AllocateSharedPtr(const Args &...args)
Allocate a shared pointer from the memory pool.
Abstract base class for processing modules.
void GetElementMap(int o, std::map< LibUtilities::ShapeType, DerivUtilSharedPtr > derMap)
std::vector< std::vector< NodeSharedPtr > > GetColouredNodes(std::vector< ElUtilSharedPtr > elLock)
virtual ~ProcessVarOpti()
static ModuleKey className
std::vector< ElUtilSharedPtr > GetLockedElements(NekDouble thres)
static std::shared_ptr< Module > create(MeshSharedPtr m)
Creates an instance of this class.
void RemoveLinearCurvature()
ProcessVarOpti(MeshSharedPtr m)
std::vector< std::vector< NodeSharedPtr > > CreateColoursets(std::vector< NodeSharedPtr > remain)
std::vector< ElUtilSharedPtr > m_dataSet
std::map< int, std::vector< ElUtilSharedPtr > > NodeElMap
std::map< LibUtilities::ShapeType, DerivUtilSharedPtr > BuildDerivUtil(int o)
std::pair< ModuleType, std::string > ModuleKey
std::shared_ptr< Mesh > MeshSharedPtr
Shared pointer to a mesh.
std::shared_ptr< DerivUtil > DerivUtilSharedPtr
std::shared_ptr< Residual > ResidualSharedPtr
std::vector< std::vector< NekDouble > > basisDeriv
NekVector< NekDouble > quadW
NekMatrix< NekDouble > VdmD[3]
NekMatrix< NekDouble > VdmDStd[3]