oomph::RectangularTetMeshFacetedSurface Class Reference

RectangularTetMeshFacetedSurface from (+/- half x width) x +/- half y length. More...

#include <tetmesh_faceted_surfaces.h>

+ Inheritance diagram for oomph::RectangularTetMeshFacetedSurface:

Public Member Functions

 RectangularTetMeshFacetedSurface (const double &half_x_width, const double &half_y_length, const Vector< double > &offset, const unsigned &one_based_boundary_id)
 
- Public Member Functions inherited from oomph::TetMeshFacetedSurface
 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...
 
TetMeshFacetfacet_pt (const unsigned &j) const
 Pointer to j-th facet. More...
 
TetMeshVertexvertex_pt (const unsigned &j) const
 Pointer to j-th vertex. More...
 
DiskLikeGeomObjectWithBoundariesgeom_object_with_boundaries_pt ()
 
void output (std::ostream &outfile) const
 Output. More...
 
void output (const std::string &filename) const
 Output. More...
 
virtual void boundary_zeta01 (const unsigned &facet_id, const double &zeta_boundary, Vector< double > &zeta)
 
virtual void boundary_zeta12 (const unsigned &facet_id, const double &zeta_boundary, Vector< double > &zeta)
 
virtual void boundary_zeta20 (const unsigned &facet_id, const double &zeta_boundary, Vector< double > &zeta)
 
Vector< unsignedvertex_index_in_tetgen (const unsigned &f)
 

Private Member Functions

void build_it (const double &half_x_width, const double &half_y_length, const Vector< double > &offset, const unsigned &one_based_boundary_id)
 Build the thing. More...
 

Additional Inherited Members

- Protected Attributes inherited from oomph::TetMeshFacetedSurface
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
 
Vector< Vector< unsigned > > Facet_vertex_index_in_tetgen
 
DiskLikeGeomObjectWithBoundariesGeom_object_with_boundaries_pt
 GeomObject with boundaries associated with this surface. More...
 

Detailed Description

RectangularTetMeshFacetedSurface from (+/- half x width) x +/- half y length.

//////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////

Constructor & Destructor Documentation

◆ RectangularTetMeshFacetedSurface()

oomph::RectangularTetMeshFacetedSurface::RectangularTetMeshFacetedSurface ( const double half_x_width,
const double half_y_length,
const Vector< double > &  offset,
const unsigned one_based_boundary_id 
)
inline

Constructor: Specify dimension, offset vector and (one-based!) boundary_id.

296  {
297  build_it(half_x_width,
298  half_y_length,
299  offset,
300  one_based_boundary_id);
301  }
void build_it(const double &half_x_width, const double &half_y_length, const Vector< double > &offset, const unsigned &one_based_boundary_id)
Build the thing.
Definition: tetmesh_faceted_surfaces.h:308

References build_it().

Member Function Documentation

◆ build_it()

void oomph::RectangularTetMeshFacetedSurface::build_it ( const double half_x_width,
const double half_y_length,
const Vector< double > &  offset,
const unsigned one_based_boundary_id 
)
inlineprivate

Build the thing.

312  {
313  // Make vertices
314  unsigned n_vertex=4;
315  Vertex_pt.resize(n_vertex);
316  Vector<double> box_point(3);
317 
318  box_point[0] = offset[0]-half_x_width;
319  box_point[1] = offset[1]-half_y_length;
320  box_point[2] = offset[2];
321  Vertex_pt[0]=new TetMeshVertex(box_point);
322 
323  box_point[0] = offset[0]+half_x_width;
324  box_point[1] = offset[1]-half_y_length;
325  box_point[2] = offset[2];
326  Vertex_pt[1]=new TetMeshVertex(box_point);
327 
328  box_point[0] = offset[0]+half_x_width;
329  box_point[1] = offset[1]+half_y_length;
330  box_point[2] = offset[2];
331  Vertex_pt[2]=new TetMeshVertex(box_point);
332 
333  box_point[0] = offset[0]-half_x_width;
334  box_point[1] = offset[1]+half_y_length;
335  box_point[2] = offset[2];
336  Vertex_pt[3]=new TetMeshVertex(box_point);
337 
338 
339  // Make facets
340  unsigned n_facet=1;
341  Facet_pt.resize(n_facet);
342 
343  unsigned n_vertex_on_facet=4;
344  Facet_pt[0]=new TetMeshFacet(n_vertex_on_facet);
345  Facet_pt[0]->set_one_based_boundary_id(one_based_boundary_id);
346  Facet_pt[0]->set_vertex_pt(0,Vertex_pt[0]);
347  Facet_pt[0]->set_vertex_pt(1,Vertex_pt[1]);
348  Facet_pt[0]->set_vertex_pt(2,Vertex_pt[2]);
349  Facet_pt[0]->set_vertex_pt(3,Vertex_pt[3]);
350 
351  }
Vector< TetMeshVertex * > Vertex_pt
Vector pointers to vertices.
Definition: tet_mesh.h:483
Vector< TetMeshFacet * > Facet_pt
Vector of pointers to facets.
Definition: tet_mesh.h:486

References oomph::TetMeshFacetedSurface::Facet_pt, and oomph::TetMeshFacetedSurface::Vertex_pt.

Referenced by RectangularTetMeshFacetedSurface().


The documentation for this class was generated from the following file: