///////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////// More...
#include <tet_mesh.h>
Public Member Functions | |
TetMeshFacetedSurface () | |
Constructor: More... | |
virtual | ~TetMeshFacetedSurface () |
Empty destructor. More... | |
unsigned | nvertex () const |
Number of vertices. More... | |
unsigned | nfacet () const |
Number of facets. More... | |
unsigned | one_based_facet_boundary_id (const unsigned &j) const |
One-based boundary id of j-th facet. More... | |
unsigned | one_based_vertex_boundary_id (const unsigned &j) const |
First (of possibly multiple) one-based boundary id of j-th vertex. More... | |
double | vertex_coordinate (const unsigned &j, const unsigned &i) const |
i-th coordinate of j-th vertex More... | |
unsigned | nvertex_on_facet (const unsigned &j) const |
Number of vertices defining the j-th facet. More... | |
bool | boundaries_can_be_split_in_tetgen () |
Test whether boundary can be split in tetgen. More... | |
void | enable_boundaries_can_be_split_in_tetgen () |
Test whether boundaries can be split in tetgen. More... | |
void | disable_boundaries_can_be_split_in_tetgen () |
Test whether boundaries can be split in tetgen. More... | |
TetMeshFacet * | facet_pt (const unsigned &j) const |
Pointer to j-th facet. More... | |
TetMeshVertex * | vertex_pt (const unsigned &j) const |
Pointer to j-th vertex. More... | |
DiskLikeGeomObjectWithBoundaries * | geom_object_with_boundaries_pt () |
Access to GeomObject with boundaries associated with this surface (Null if there isn't one!) More... | |
void | output (std::ostream &outfile) const |
Output. More... | |
void | output (const std::string &filename) const |
Output. More... | |
void | output_paraview (std::ostream &outfile) const |
Outputs the faceted surface into a specified file in the Paraview format for viewing in Paraview. Make sure to output the file with a .vtu extension. (Not particularly optimised) More... | |
void | output_paraview (const std::string &filename) const |
Outputs the faceted surface into a file with the specified name in the Paraview format. (Not particularly optimised) More... | |
virtual void | boundary_zeta01 (const unsigned &facet_id, const double &zeta_boundary, Vector< double > &zeta) |
Virtual function that specifies the variation of the zeta coordinates in the GeomObject along the boundary connecting vertices 0 and 1 in facet facet_id. Default implementation: Linear interpolation between edges. zeta_boundary=0.0: we're on vertex 0; zeta_boundary=1.0: we're on vertex 1. More... | |
virtual void | boundary_zeta12 (const unsigned &facet_id, const double &zeta_boundary, Vector< double > &zeta) |
Virtual function that specifies the variation of the zeta coordinates in the GeomObject along the boundary connecting vertices 1 and 2 in facet facet_id. Default implementation: Linear interpolation between edges. zeta_boundary=0.0: we're on vertex 1; zeta_boundary=1.0: we're on vertex 2. More... | |
virtual void | boundary_zeta20 (const unsigned &facet_id, const double &zeta_boundary, Vector< double > &zeta) |
Virtual function that specifies the variation of the zeta coordinates in the GeomObject along the boundary connecting vertices 2 and 0 in facet facet_id. Default implementation: Linear interpolation between edges. zeta_boundary=0.0: we're on vertex 2; zeta_boundary=1.0: we're on vertex 0. More... | |
Vector< unsigned > | vertex_index_in_tetgen (const unsigned &f) |
Facet connectivity: vertex_index[j] is the index of the j-th vertex (in the Vertex_pt vector) in facet f. Bit of an obscure functionality that's only needed for setup tetgen_io. More... | |
Protected Attributes | |
Vector< TetMeshVertex * > | Vertex_pt |
Vector pointers to vertices. More... | |
Vector< TetMeshFacet * > | Facet_pt |
Vector of pointers to facets. More... | |
bool | Boundaries_can_be_split_in_tetgen |
Boolean to indicate whether extra vertices can be added on the boundary in tetgen. More... | |
Vector< Vector< unsigned > > | Facet_vertex_index_in_tetgen |
Facet connectivity: Facet_vertex_index[f][j] is the index of the j-th vertex (in the Vertex_pt vector) in facet f. More... | |
DiskLikeGeomObjectWithBoundaries * | Geom_object_with_boundaries_pt |
GeomObject with boundaries associated with this surface. More... | |
Private Member Functions | |
void | setup_facet_connectivity_for_tetgen () |
Setup facet connectivity for tetgen. More... | |
///////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////
Base class for tet mesh boundary defined by polygonal planar facets
Definition at line 305 of file tet_mesh.h.
|
inline |
Constructor:
Definition at line 309 of file tet_mesh.h.
|
inlinevirtual |
Empty destructor.
Definition at line 316 of file tet_mesh.h.
|
inline |
Test whether boundary can be split in tetgen.
Definition at line 355 of file tet_mesh.h.
References Boundaries_can_be_split_in_tetgen.
Referenced by oomph::TetgenMesh< ELEMENT >::TetgenMesh().
|
inlinevirtual |
Virtual function that specifies the variation of the zeta coordinates in the GeomObject along the boundary connecting vertices 0 and 1 in facet facet_id. Default implementation: Linear interpolation between edges. zeta_boundary=0.0: we're on vertex 0; zeta_boundary=1.0: we're on vertex 1.
Definition at line 603 of file tet_mesh.h.
References Facet_pt.
Referenced by oomph::TetMeshBase::snap_nodes_onto_geometric_objects().
|
inlinevirtual |
Virtual function that specifies the variation of the zeta coordinates in the GeomObject along the boundary connecting vertices 1 and 2 in facet facet_id. Default implementation: Linear interpolation between edges. zeta_boundary=0.0: we're on vertex 1; zeta_boundary=1.0: we're on vertex 2.
Definition at line 622 of file tet_mesh.h.
References Facet_pt.
Referenced by oomph::TetMeshBase::snap_nodes_onto_geometric_objects().
|
inlinevirtual |
Virtual function that specifies the variation of the zeta coordinates in the GeomObject along the boundary connecting vertices 2 and 0 in facet facet_id. Default implementation: Linear interpolation between edges. zeta_boundary=0.0: we're on vertex 2; zeta_boundary=1.0: we're on vertex 0.
Definition at line 641 of file tet_mesh.h.
References Facet_pt.
Referenced by oomph::TetMeshBase::snap_nodes_onto_geometric_objects().
|
inline |
Test whether boundaries can be split in tetgen.
Definition at line 367 of file tet_mesh.h.
References Boundaries_can_be_split_in_tetgen.
|
inline |
Test whether boundaries can be split in tetgen.
Definition at line 361 of file tet_mesh.h.
References Boundaries_can_be_split_in_tetgen.
|
inline |
Pointer to j-th facet.
Definition at line 373 of file tet_mesh.h.
References Facet_pt.
Referenced by oomph::GmshTetMesh< ELEMENT >::build_it(), oomph::TetgenMesh< ELEMENT >::setup_reverse_lookup_schemes_for_faceted_surface(), oomph::TetMeshBase::snap_nodes_onto_geometric_objects(), and oomph::GmshTetScaffoldMesh::write_geo_file().
|
inline |
Access to GeomObject with boundaries associated with this surface (Null if there isn't one!)
Definition at line 386 of file tet_mesh.h.
References Geom_object_with_boundaries_pt.
Referenced by oomph::TetMeshBase::snap_nodes_onto_geometric_objects().
|
inline |
Number of facets.
Definition at line 325 of file tet_mesh.h.
References Facet_pt.
Referenced by oomph::GmshTetMesh< ELEMENT >::build_it(), oomph::TetgenMesh< ELEMENT >::build_tetgenio(), setup_facet_connectivity_for_tetgen(), oomph::TetgenMesh< ELEMENT >::setup_reverse_lookup_schemes_for_faceted_surface(), oomph::TetMeshBase::snap_nodes_onto_geometric_objects(), oomph::RefineableTetgenMesh< ELEMENT >::update_faceted_surface_using_face_mesh(), vertex_index_in_tetgen(), oomph::GmshTetScaffoldMesh::write_geo_file(), and oomph::TetMeshFacetedClosedSurfaceForRemesh::~TetMeshFacetedClosedSurfaceForRemesh().
|
inline |
Number of vertices.
Definition at line 319 of file tet_mesh.h.
References Vertex_pt.
Referenced by oomph::TetgenMesh< ELEMENT >::build_tetgenio(), oomph::GmshTetScaffoldMesh::write_geo_file(), and oomph::TetMeshFacetedClosedSurfaceForRemesh::~TetMeshFacetedClosedSurfaceForRemesh().
|
inline |
Number of vertices defining the j-th facet.
Definition at line 349 of file tet_mesh.h.
References Facet_pt.
|
inline |
One-based boundary id of j-th facet.
Definition at line 331 of file tet_mesh.h.
References Facet_pt.
Referenced by oomph::GmshTetMesh< ELEMENT >::build_it(), oomph::TetgenMesh< ELEMENT >::build_tetgenio(), oomph::TetgenMesh< ELEMENT >::setup_reverse_lookup_schemes_for_faceted_surface(), oomph::TetMeshBase::snap_nodes_onto_geometric_objects(), oomph::RefineableTetgenMesh< ELEMENT >::update_faceted_surface_using_face_mesh(), and oomph::GmshTetScaffoldMesh::write_geo_file().
|
inline |
First (of possibly multiple) one-based boundary id of j-th vertex.
Definition at line 337 of file tet_mesh.h.
References Vertex_pt.
Referenced by oomph::TetgenMesh< ELEMENT >::build_tetgenio().
|
inline |
|
inline |
|
inline |
Outputs the faceted surface into a file with the specified name in the Paraview format. (Not particularly optimised)
Definition at line 589 of file tet_mesh.h.
References output_paraview().
|
inline |
Outputs the faceted surface into a specified file in the Paraview format for viewing in Paraview. Make sure to output the file with a .vtu extension. (Not particularly optimised)
Definition at line 418 of file tet_mesh.h.
References Facet_pt, i, and vertex_pt().
Referenced by output_paraview().
|
inlineprivate |
Setup facet connectivity for tetgen.
Definition at line 688 of file tet_mesh.h.
References Facet_pt, Facet_vertex_index_in_tetgen, nfacet(), and Vertex_pt.
Referenced by vertex_index_in_tetgen().
|
inline |
i-th coordinate of j-th vertex
Definition at line 343 of file tet_mesh.h.
Referenced by oomph::TetgenMesh< ELEMENT >::build_tetgenio().
|
inline |
Facet connectivity: vertex_index[j] is the index of the j-th vertex (in the Vertex_pt vector) in facet f. Bit of an obscure functionality that's only needed for setup tetgen_io.
Definition at line 658 of file tet_mesh.h.
References Facet_vertex_index_in_tetgen, nfacet(), and setup_facet_connectivity_for_tetgen().
Referenced by oomph::TetgenMesh< ELEMENT >::build_tetgenio().
|
inline |
Pointer to j-th vertex.
Definition at line 379 of file tet_mesh.h.
References Vertex_pt.
Referenced by output_paraview(), and oomph::GmshTetScaffoldMesh::write_geo_file().
|
protected |
Boolean to indicate whether extra vertices can be added on the boundary in tetgen.
Definition at line 676 of file tet_mesh.h.
Referenced by boundaries_can_be_split_in_tetgen(), disable_boundaries_can_be_split_in_tetgen(), and enable_boundaries_can_be_split_in_tetgen().
|
protected |
Vector of pointers to facets.
Definition at line 672 of file tet_mesh.h.
Referenced by boundary_zeta01(), boundary_zeta12(), boundary_zeta20(), facet_pt(), nfacet(), nvertex_on_facet(), one_based_facet_boundary_id(), output(), output_paraview(), setup_facet_connectivity_for_tetgen(), oomph::TetMeshFacetedClosedSurfaceForRemesh::TetMeshFacetedClosedSurfaceForRemesh(), and oomph::TetMeshFacetedClosedSurfaceForRemesh::~TetMeshFacetedClosedSurfaceForRemesh().
Facet connectivity: Facet_vertex_index[f][j] is the index of the j-th vertex (in the Vertex_pt vector) in facet f.
Definition at line 680 of file tet_mesh.h.
Referenced by setup_facet_connectivity_for_tetgen(), and vertex_index_in_tetgen().
|
protected |
GeomObject with boundaries associated with this surface.
Definition at line 683 of file tet_mesh.h.
Referenced by geom_object_with_boundaries_pt().
|
protected |
Vector pointers to vertices.
Definition at line 669 of file tet_mesh.h.
Referenced by nvertex(), one_based_vertex_boundary_id(), setup_facet_connectivity_for_tetgen(), oomph::TetMeshFacetedClosedSurfaceForRemesh::TetMeshFacetedClosedSurfaceForRemesh(), vertex_coordinate(), vertex_pt(), and oomph::TetMeshFacetedClosedSurfaceForRemesh::~TetMeshFacetedClosedSurfaceForRemesh().