35 #ifndef NEKTAR_MESHUTILS_SURFACEMESHING_CURVEMESH_H
36 #define NEKTAR_MESHUTILS_SURFACEMESHING_CURVEMESH_H
48 namespace NekMeshUtils
81 void Mesh(
bool forceThree =
false);
175 std::vector<std::vector<NekDouble> >
m_dst;
177 std::vector<std::vector<NekDouble> >
m_ps;
Interpreter class for the evaluation of mathematical expressions.
int DefineFunction(const std::string &vlist, const std::string &expr)
Defines a function for the purposes of evaluation.
General purpose memory allocation routines with the ability to allocate from thread specific memory p...
class for meshing individual curves (1d meshing)
LibUtilities::Interpreter m_bl
CurveMesh(int id, MeshSharedPtr m, std::vector< NodeSharedPtr > ns)
int m_numSamplePoints
number of sampling points used in algorithm
Array< OneD, NekDouble > m_bounds
coords of the ends of the parametric curve
std::vector< std::vector< NekDouble > > m_dst
array of function ds evaluations
NekDouble GetLength()
get the length of the curve
void PeriodicOverwrite(CurveMeshSharedPtr from)
int Ne
number of edges to be made in the curve as defined by the spacing funtion
NekDouble EvaluateDS(NekDouble s)
evaluate paramter ds at curve location s
std::vector< NodeSharedPtr > m_meshpoints
ids of the mesh nodes
int m_id
id of the curvemesh
void SetOffset(unsigned i, NekDouble offset)
void GetPhiFunction()
get node spacing phi function
std::map< unsigned, NekDouble > m_endoffset
offset of second point at each end
void GetSampleFunction()
get node spacing sampling function
CurveMesh(int id, MeshSharedPtr m, std::string expr="0.0")
default constructor
CADCurveSharedPtr m_cadcurve
CAD curve.
NekDouble Ae
spacing function evaluation
std::vector< EdgeSharedPtr > GetMeshEdges()
std::vector< NekDouble > meshsvalue
paramteric coordiates of the mesh nodes
NodeSharedPtr GetFirstPoint()
get id of first node
std::vector< NodeSharedPtr > GetMeshPoints()
get list of mesh nodes
NekDouble m_curvelength
length of the curve in real space
NekDouble EvaluatePS(NekDouble s)
evaluate paramter ps at curve location s
NodeSharedPtr GetLastPoint()
get id of last node
void ReMesh()
Delete old mesh and mesh with forceThree on.
int GetNumPoints()
get the number of points in the curve
std::vector< EdgeSharedPtr > m_meshedges
list of mesh edges in the curvemesh
std::vector< std::vector< NekDouble > > m_ps
array of function ps evaluations
void Mesh(bool forceThree=false)
execute meshing
std::shared_ptr< Mesh > MeshSharedPtr
Shared pointer to a mesh.
std::shared_ptr< CurveMesh > CurveMeshSharedPtr
std::shared_ptr< CADCurve > CADCurveSharedPtr
std::shared_ptr< Node > NodeSharedPtr