Public Member Functions | List of all members
oomph::SolidTetgenMesh< ELEMENT > Class Template Reference

/////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////// More...

#include <tetgen_mesh.template.h>

Inheritance diagram for oomph::SolidTetgenMesh< ELEMENT >:
oomph::TetgenMesh< ELEMENT >

Public Member Functions

 SolidTetgenMesh (const std::string &node_file_name, const std::string &element_file_name, const std::string &face_file_name, const bool &split_corner_elements, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper, const bool &use_attributes=false)
 Constructor. Boundary coordinates are setup automatically. More...
 
 SolidTetgenMesh (const std::string &node_file_name, const std::string &element_file_name, const std::string &face_file_name, const bool &split_corner_elements, const bool &switch_normal, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper, const bool &use_attributes=false)
 Constructor. Boundary coordinates are re-setup automatically, with the orientation of the outer unit normal determined by switch_normal. More...
 
virtual ~SolidTetgenMesh ()
 Empty Destructor. More...
 
- Public Member Functions inherited from oomph::TetgenMesh< ELEMENT >
 TetgenMesh ()
 Empty constructor. More...
 
 TetgenMesh (const std::string &node_file_name, const std::string &element_file_name, const std::string &face_file_name, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper, const bool &use_attributes=false)
 Constructor with the input files. More...
 
 TetgenMesh (tetgenio &tetgen_data, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper, const bool &use_attributes=false)
 Constructor with tetgenio data structure. More...
 
 TetgenMesh (const std::string &node_file_name, const std::string &element_file_name, const std::string &face_file_name, const bool &split_corner_elements, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper, const bool &use_attributes=false)
 Constructor with the input files. Setting the boolean flag to true splits "corner" elements, i.e. elements that that have at least three faces on a domain boundary. The relevant elements are split without introducing hanging nodes so the sons have a "worse" shape than their fathers. However, this step avoids otherwise-hard-to-diagnose problems in fluids problems where the application of boundary conditions at such "corner" elements can overconstrain the solution. More...
 
 TetgenMesh (tetgenio &tetgen_data, const bool &split_corner_elements, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper, const bool &use_attributes=false)
 Constructor with tetgen data structure Setting the boolean flag to true splits "corner" elements, i.e. elements that that have at least three faces on a domain boundary. The relevant elements are split without introducing hanging nodes so the sons have a "worse" shape than their fathers. However, this step avoids otherwise-hard-to-diagnose problems in fluids problems where the application of boundary conditions at such "corner" elements can overconstrain the solution. More...
 
 TetgenMesh (TetMeshFacetedClosedSurface *const &outer_boundary_pt, Vector< TetMeshFacetedSurface * > &internal_surface_pt, const double &element_volume, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper, const bool &use_attributes=false, const bool &split_corner_elements=false, Vector< double > *const &target_element_volume_in_region_pt=nullptr)
 Build mesh, based on a TetgenMeshFactedClosedSurface that specifies the outer boundary of the domain and any number of internal boundaries, specified by TetMeshFacetedSurfaces. Also specify target size for uniform element size. Optionally specify the target element volume in each region. More...
 
void build_tetgenio (TetMeshFacetedSurface *const &outer_boundary_pt, Vector< TetMeshFacetedSurface * > &internal_surface_pt, Vector< double > *const &target_element_volume_in_region_pt, tetgenio &tetgen_io)
 Build tetgenio object from the TetMeshFacetedSurfaces. More...
 
 ~TetgenMesh ()
 Empty destructor. More...
 
void set_mesh_level_time_stepper (TimeStepper *const &time_stepper_pt, const bool &preserve_existing_data)
 Overload set_mesh_level_time_stepper so that the stored time stepper now corresponds to the new timestepper. More...
 
bool tetgenio_exists () const
 Boolen defining whether tetgenio object has been built or not. More...
 
tetgenio *& tetgenio_pt ()
 Access to the triangulateio representation of the mesh. More...
 
void set_deep_copy_tetgenio_pt (tetgenio *const &tetgenio_pt)
 Set the tetgen pointer by a deep copy. More...
 
void deep_copy_of_tetgenio (tetgenio *const &input_pt, tetgenio *&output_pt)
 Transfer tetgenio data from the input to the output The output is assumed to have been constructed and "empty". More...
 

Additional Inherited Members

- Protected Member Functions inherited from oomph::TetgenMesh< ELEMENT >
void build_from_scaffold (TimeStepper *time_stepper_pt, const bool &use_attributes)
 Build mesh from scaffold. More...
 
void setup_reverse_lookup_schemes_for_faceted_surface (TetMeshFacetedSurface *const &faceted_surface_pt)
 Function to setup the reverse look-up schemes. More...
 
- Protected Attributes inherited from oomph::TetgenMesh< ELEMENT >
TetgenScaffoldMesh * Tmp_mesh_pt
 Temporary scaffold mesh. More...
 
bool Tetgenio_exists
 Boolean to indicate whether a tetgenio representation of the mesh exists. More...
 
tetgenio * Tetgenio_pt
 Tetgen representation of mesh. More...
 
bool Use_attributes
 Boolean flag to indicate whether to use attributes or not (required for multidomain meshes) More...
 

Detailed Description

template<class ELEMENT>
class oomph::SolidTetgenMesh< ELEMENT >

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

Tetgen-based mesh upgraded to become a solid mesh. Automatically enumerates all boundaries.

Definition at line 739 of file tetgen_mesh.template.h.

Constructor & Destructor Documentation

◆ SolidTetgenMesh() [1/2]

template<class ELEMENT >
oomph::SolidTetgenMesh< ELEMENT >::SolidTetgenMesh ( const std::string &  node_file_name,
const std::string &  element_file_name,
const std::string &  face_file_name,
const bool &  split_corner_elements,
TimeStepper *  time_stepper_pt = &Mesh::Default_TimeStepper,
const bool &  use_attributes = false 
)
inline

Constructor. Boundary coordinates are setup automatically.

Definition at line 745 of file tetgen_mesh.template.h.

◆ SolidTetgenMesh() [2/2]

template<class ELEMENT >
oomph::SolidTetgenMesh< ELEMENT >::SolidTetgenMesh ( const std::string &  node_file_name,
const std::string &  element_file_name,
const std::string &  face_file_name,
const bool &  split_corner_elements,
const bool &  switch_normal,
TimeStepper *  time_stepper_pt = &Mesh::Default_TimeStepper,
const bool &  use_attributes = false 
)
inline

Constructor. Boundary coordinates are re-setup automatically, with the orientation of the outer unit normal determined by switch_normal.

Definition at line 765 of file tetgen_mesh.template.h.

◆ ~SolidTetgenMesh()

template<class ELEMENT >
virtual oomph::SolidTetgenMesh< ELEMENT >::~SolidTetgenMesh ( )
inlinevirtual

Empty Destructor.

Definition at line 792 of file tetgen_mesh.template.h.


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