36 #ifndef UTILITIES_NEKMESH_PROCESSJAC
37 #define UTILITIES_NEKMESH_PROCESSJAC
41 #include "../InputModules/InputPly.h"
72 std::vector<NekMeshUtils::Node> &Q,
74 std::vector<NekDouble> &blend);
77 std::map<int,NekMeshUtils::NodeSharedPtr> &surfverts);
void UnitCrossProd(NekMeshUtils::Node &a, NekMeshUtils::Node &b, NekMeshUtils::Node &c)
NekDouble CrossProdMag(NekMeshUtils::Node &a, NekMeshUtils::Node &b)
Calculate the magnitude of the cross product .
void FindNormalFromPlyFile(NekMeshUtils::MeshSharedPtr &plymesh, std::map< int, NekMeshUtils::NodeSharedPtr > &surfverts)
static boost::shared_ptr< DataType > AllocateSharedPtr()
Allocate a shared pointer from the memory pool.
virtual ~ProcessSpherigon()
Destructor.
ProcessSpherigon(NekMeshUtils::MeshSharedPtr m)
Default constructor.
void SuperBlend(std::vector< NekDouble > &r, std::vector< NekMeshUtils::Node > &Q, NekMeshUtils::Node &P, std::vector< NekDouble > &blend)
Calculate the blending function for spherigon implementation.
void GenerateNormals(std::vector< NekMeshUtils::ElementSharedPtr > &el, NekMeshUtils::MeshSharedPtr &mesh)
Generate a set of approximate vertex normals to a surface represented by line segments in 2D and a hy...
Represents a point in the domain.
virtual void Process()
Write mesh to output file.
static NekMeshUtils::ModuleKey className
boost::shared_ptr< Mesh > MeshSharedPtr
Shared pointer to a mesh.
Abstract base class for processing modules.
NekDouble Blend(NekDouble r)
Calculate the blending function for spherigon implementation.
static boost::shared_ptr< Module > create(NekMeshUtils::MeshSharedPtr m)
Creates an instance of this class.
std::pair< ModuleType, std::string > ModuleKey