Nektar++
|
class containing all surface meshing routines methods and classes More...
#include <2DGenerator.h>
Public Member Functions | |
Generator2D (MeshSharedPtr m) | |
virtual | ~Generator2D () |
virtual void | Process () |
![]() | |
NEKMESHUTILS_EXPORT | ProcessModule (MeshSharedPtr p_m) |
![]() | |
NEKMESHUTILS_EXPORT | Module (MeshSharedPtr p_m) |
NEKMESHUTILS_EXPORT void | RegisterConfig (std::string key, std::string value=std::string()) |
Register a configuration option with a module. More... | |
NEKMESHUTILS_EXPORT void | PrintConfig () |
Print out all configuration options for a module. More... | |
NEKMESHUTILS_EXPORT void | SetDefaults () |
Sets default configuration options for those which have not been set. More... | |
NEKMESHUTILS_EXPORT MeshSharedPtr | GetMesh () |
virtual NEKMESHUTILS_EXPORT void | ProcessVertices () |
Extract element vertices. More... | |
virtual NEKMESHUTILS_EXPORT void | ProcessEdges (bool ReprocessEdges=true) |
Extract element edges. More... | |
virtual NEKMESHUTILS_EXPORT void | ProcessFaces (bool ReprocessFaces=true) |
Extract element faces. More... | |
virtual NEKMESHUTILS_EXPORT void | ProcessElements () |
Generate element IDs. More... | |
virtual NEKMESHUTILS_EXPORT void | ProcessComposites () |
Generate composites. More... | |
virtual NEKMESHUTILS_EXPORT void | ClearElementLinks () |
Static Public Member Functions | |
static std::shared_ptr< Module > | create (MeshSharedPtr m) |
Creates an instance of this class. More... | |
Static Public Attributes | |
static ModuleKey | className |
Private Member Functions | |
void | FindBLEnds () |
void | MakeBLPrep () |
void | PeriodicPrep () |
void | MakePeriodic () |
void | MakeBL (int faceid) |
void | Report () |
Private Attributes | |
std::map< int, FaceMeshSharedPtr > | m_facemeshes |
map of individual surface meshes from parametric surfaces More... | |
std::map< int, CurveMeshSharedPtr > | m_curvemeshes |
map of individual curve meshes of the curves in the domain More... | |
std::map< unsigned, unsigned > | m_periodicPairs |
map of periodic curve pairs More... | |
std::vector< unsigned int > | m_blCurves |
list of curves needing a BL More... | |
std::map< unsigned, unsigned > | m_blends |
map of curves and Bl ends: 0, 1 or 2 (for both) More... | |
std::vector< EdgeSharedPtr > | m_blEdges |
list of BL edges More... | |
LibUtilities::Interpreter | m_thickness |
BL thickness expression. More... | |
int | m_thickness_ID |
BL thickness expression ID. More... | |
std::map< NodeSharedPtr, std::vector< EdgeSharedPtr > > | m_nodesToEdge |
map of BL curve nodes to adjacent edges More... | |
Additional Inherited Members | |
![]() | |
NEKMESHUTILS_EXPORT void | ReorderPrisms (PerMap &perFaces) |
Reorder node IDs so that prisms and tetrahedra are aligned correctly. More... | |
NEKMESHUTILS_EXPORT void | PrismLines (int prism, PerMap &perFaces, std::set< int > &prismsDone, std::vector< ElementSharedPtr > &line) |
![]() | |
MeshSharedPtr | m_mesh |
Mesh object. More... | |
std::map< std::string, ConfigOption > | m_config |
List of configuration values. More... | |
class containing all surface meshing routines methods and classes
Definition at line 52 of file 2DGenerator.h.
Nektar::NekMeshUtils::Generator2D::Generator2D | ( | MeshSharedPtr | m | ) |
Definition at line 56 of file 2DGenerator.cpp.
References Nektar::NekMeshUtils::Module::m_config.
|
virtual |
Definition at line 77 of file 2DGenerator.cpp.
|
inlinestatic |
Creates an instance of this class.
Definition at line 56 of file 2DGenerator.h.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr().
|
private |
Definition at line 244 of file 2DGenerator.cpp.
References Nektar::StdRegions::find(), m_blCurves, m_blends, and Nektar::NekMeshUtils::Module::m_mesh.
Referenced by Process().
|
private |
Definition at line 326 of file 2DGenerator.cpp.
References Nektar::NekMeshUtils::Node::abs2(), Nektar::MemoryManager< DataType >::AllocateSharedPtr(), ASSERTL0, Nektar::LibUtilities::NekFactory< tKey, tBase, tParam >::CreateInstance(), Nektar::NekMeshUtils::Node::curl(), Nektar::NekMeshUtils::CADOrientation::eBackwards, Nektar::LibUtilities::eQuadrilateral, Nektar::LibUtilities::Interpreter::Evaluate(), Nektar::StdRegions::find(), Nektar::ParseUtils::GenerateSeqVector(), Nektar::NekMeshUtils::GetElementFactory(), CG_Iterations::loc, m_blCurves, m_blEdges, Nektar::NekMeshUtils::Module::m_config, m_curvemeshes, Nektar::NekMeshUtils::Module::m_mesh, m_nodesToEdge, m_thickness, m_thickness_ID, Nektar::NekMeshUtils::Node::m_x, Nektar::NekMeshUtils::Node::m_y, Nektar::NekMeshUtils::Node::m_z, class_topology::Node, CellMLToNektar.cellml_metadata::p, and WARNINGL0.
Referenced by Process().
|
private |
Definition at line 305 of file 2DGenerator.cpp.
References m_blCurves, m_blEdges, m_curvemeshes, Nektar::NekMeshUtils::Module::m_mesh, and m_nodesToEdge.
Referenced by Process().
|
private |
Definition at line 883 of file 2DGenerator.cpp.
References m_curvemeshes, Nektar::NekMeshUtils::Module::m_mesh, and m_periodicPairs.
Referenced by Process().
|
private |
Definition at line 852 of file 2DGenerator.cpp.
References ASSERTL0, Nektar::NekMeshUtils::Module::m_config, and m_periodicPairs.
Referenced by Process().
|
virtual |
Implements Nektar::NekMeshUtils::Module.
Definition at line 81 of file 2DGenerator.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), ASSERTL0, Nektar::LibUtilities::NekFactory< tKey, tBase, tParam >::CreateInstance(), Nektar::LibUtilities::Interpreter::DefineFunction(), Nektar::LibUtilities::eSegment, Nektar::LibUtilities::Interpreter::Evaluate(), Nektar::StdRegions::find(), FindBLEnds(), Nektar::ParseUtils::GenerateSeqVector(), Nektar::NekMeshUtils::GetElementFactory(), CG_Iterations::loc, m_blCurves, m_blends, Nektar::NekMeshUtils::Module::m_config, m_curvemeshes, m_facemeshes, Nektar::NekMeshUtils::Module::m_mesh, m_thickness, m_thickness_ID, MakeBL(), MakeBLPrep(), MakePeriodic(), PeriodicPrep(), Nektar::LibUtilities::PrintProgressbar(), Nektar::NekMeshUtils::Module::ProcessComposites(), Nektar::NekMeshUtils::Module::ProcessEdges(), Nektar::NekMeshUtils::Module::ProcessElements(), Nektar::NekMeshUtils::Module::ProcessFaces(), Nektar::NekMeshUtils::Module::ProcessVertices(), and Report().
|
private |
Definition at line 903 of file 2DGenerator.cpp.
References Nektar::NekMeshUtils::Module::m_mesh.
Referenced by Process().
|
static |
Definition at line 60 of file 2DGenerator.h.
|
private |
list of curves needing a BL
Definition at line 87 of file 2DGenerator.h.
Referenced by FindBLEnds(), MakeBL(), MakeBLPrep(), and Process().
|
private |
list of BL edges
Definition at line 91 of file 2DGenerator.h.
Referenced by MakeBL(), and MakeBLPrep().
|
private |
map of curves and Bl ends: 0, 1 or 2 (for both)
Definition at line 89 of file 2DGenerator.h.
Referenced by FindBLEnds(), and Process().
|
private |
map of individual curve meshes of the curves in the domain
Definition at line 83 of file 2DGenerator.h.
Referenced by MakeBL(), MakeBLPrep(), MakePeriodic(), and Process().
|
private |
map of individual surface meshes from parametric surfaces
Definition at line 81 of file 2DGenerator.h.
Referenced by Process().
|
private |
map of BL curve nodes to adjacent edges
Definition at line 97 of file 2DGenerator.h.
Referenced by MakeBL(), and MakeBLPrep().
|
private |
map of periodic curve pairs
Definition at line 85 of file 2DGenerator.h.
Referenced by MakePeriodic(), and PeriodicPrep().
|
private |
BL thickness expression.
Definition at line 93 of file 2DGenerator.h.
|
private |
BL thickness expression ID.
Definition at line 95 of file 2DGenerator.h.