3D quarter tube mesh class. The domain is specified by the GeomObject that identifies boundary 3. Non-refineable base version! More...
#include <quarter_tube_mesh.template.h>
Public Member Functions | |
QuarterTubeMesh (GeomObject *wall_pt, const Vector< double > &xi_lo, const double &fract_mid, const Vector< double > &xi_hi, const unsigned &nlayer, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper) | |
Constructor: Pass pointer to geometric object that specifies the wall, start and end coordinates on the geometric object, and the fraction along which the dividing line is to be placed, and the timestepper. Timestepper defaults to Steady dummy timestepper. More... | |
virtual | ~QuarterTubeMesh () |
Destructor: empty. More... | |
GeomObject *& | wall_pt () |
Access function to GeomObject representing wall. More... | |
QuarterTubeDomain * | domain_pt () |
Access function to domain. More... | |
QuarterTubeDomain::BLSquashFctPt & | bl_squash_fct_pt () |
Function pointer for function that squashes the outer macro elements towards the wall by mapping the input value of the "radial" macro element coordinate to the return value (defined in the underlying Domain object) More... | |
virtual QuarterTubeDomain::AxialSpacingFctPt & | axial_spacing_fct_pt () |
Function pointer for function for axial spacing. More... | |
QuarterTubeDomain * | domain_pt () const |
Access function to underlying domain. More... | |
Protected Attributes | |
QuarterTubeDomain * | Domain_pt |
Pointer to domain. More... | |
GeomObject * | Wall_pt |
Pointer to the geometric object that represents the curved wall. More... | |
Vector< double > | Xi_lo |
Lower limits for the coordinates along the wall. More... | |
double | Fract_mid |
Fraction along wall where outer ring is to be divided. More... | |
Vector< double > | Xi_hi |
Upper limits for the coordinates along the wall. More... | |
3D quarter tube mesh class. The domain is specified by the GeomObject that identifies boundary 3. Non-refineable base version!
The mesh boundaries are numbered as follows:
IMPORTANT NOTE: The interface looks more general than it should. The toplogy must remain that of a quarter tube, or the mesh generation will break.
Definition at line 70 of file quarter_tube_mesh.template.h.
oomph::QuarterTubeMesh< ELEMENT >::QuarterTubeMesh | ( | GeomObject * | wall_pt, |
const Vector< double > & | xi_lo, | ||
const double & | fract_mid, | ||
const Vector< double > & | xi_hi, | ||
const unsigned & | nlayer, | ||
TimeStepper * | time_stepper_pt = &Mesh::Default_TimeStepper |
||
) |
Constructor: Pass pointer to geometric object that specifies the wall, start and end coordinates on the geometric object, and the fraction along which the dividing line is to be placed, and the timestepper. Timestepper defaults to Steady dummy timestepper.
Constructor for deformable quarter tube mesh class. The domain is specified by the GeomObject that identifies boundary 3. Pass pointer to geometric object that specifies the wall, start and end coordinates on the geometric object, and the fraction along which the dividing line is to be placed, and the timestepper. Timestepper defaults to Static dummy timestepper.
Definition at line 50 of file quarter_tube_mesh.template.cc.
References oomph::QuarterTubeMesh< ELEMENT >::Domain_pt, oomph::AlgebraicRefineableQuarterTubeMesh< ELEMENT >::setup_algebraic_node_update(), oomph::QuarterTubeMesh< ELEMENT >::Xi_hi, and oomph::QuarterTubeMesh< ELEMENT >::Xi_lo.
|
inlinevirtual |
Destructor: empty.
Definition at line 89 of file quarter_tube_mesh.template.h.
References oomph::QuarterTubeMesh< ELEMENT >::Domain_pt.
|
inlinevirtual |
Function pointer for function for axial spacing.
Reimplemented in oomph::AlgebraicRefineableQuarterTubeMesh< ELEMENT >.
Definition at line 111 of file quarter_tube_mesh.template.h.
References oomph::QuarterTubeDomain::axial_spacing_fct_pt(), and oomph::QuarterTubeMesh< ELEMENT >::Domain_pt.
|
inline |
Function pointer for function that squashes the outer macro elements towards the wall by mapping the input value of the "radial" macro element coordinate to the return value (defined in the underlying Domain object)
Definition at line 104 of file quarter_tube_mesh.template.h.
References oomph::QuarterTubeDomain::bl_squash_fct_pt(), and oomph::QuarterTubeMesh< ELEMENT >::Domain_pt.
|
inline |
Access function to domain.
Definition at line 98 of file quarter_tube_mesh.template.h.
References oomph::QuarterTubeMesh< ELEMENT >::Domain_pt.
Referenced by oomph::MacroElementNodeUpdateRefineableQuarterTubeMesh< ELEMENT >::setup_macro_element_node_update().
|
inline |
Access function to underlying domain.
Definition at line 117 of file quarter_tube_mesh.template.h.
References oomph::QuarterTubeMesh< ELEMENT >::Domain_pt.
|
inline |
Access function to GeomObject representing wall.
Definition at line 95 of file quarter_tube_mesh.template.h.
References oomph::QuarterTubeMesh< ELEMENT >::Wall_pt.
|
protected |
Pointer to domain.
Definition at line 122 of file quarter_tube_mesh.template.h.
Referenced by oomph::QuarterTubeMesh< ELEMENT >::axial_spacing_fct_pt(), oomph::AlgebraicRefineableQuarterTubeMesh< ELEMENT >::axial_spacing_fct_pt(), oomph::QuarterTubeMesh< ELEMENT >::bl_squash_fct_pt(), oomph::QuarterTubeMesh< ELEMENT >::domain_pt(), oomph::AlgebraicRefineableQuarterTubeMesh< ELEMENT >::node_update_lower_right_region(), oomph::AlgebraicRefineableQuarterTubeMesh< ELEMENT >::node_update_upper_left_region(), oomph::QuarterTubeMesh< ELEMENT >::QuarterTubeMesh(), oomph::RefineableQuarterTubeMesh< ELEMENT >::RefineableQuarterTubeMesh(), and oomph::QuarterTubeMesh< ELEMENT >::~QuarterTubeMesh().
|
protected |
Fraction along wall where outer ring is to be divided.
Definition at line 131 of file quarter_tube_mesh.template.h.
|
protected |
Pointer to the geometric object that represents the curved wall.
Definition at line 125 of file quarter_tube_mesh.template.h.
Referenced by oomph::AlgebraicRefineableQuarterTubeMesh< ELEMENT >::setup_algebraic_node_update(), oomph::MacroElementNodeUpdateRefineableQuarterTubeMesh< ELEMENT >::setup_macro_element_node_update(), oomph::AlgebraicRefineableQuarterTubeMesh< ELEMENT >::update_node_update_in_region(), and oomph::QuarterTubeMesh< ELEMENT >::wall_pt().
|
protected |
Upper limits for the coordinates along the wall.
Definition at line 134 of file quarter_tube_mesh.template.h.
Referenced by oomph::QuarterTubeMesh< ELEMENT >::QuarterTubeMesh().
|
protected |
Lower limits for the coordinates along the wall.
Definition at line 128 of file quarter_tube_mesh.template.h.
Referenced by oomph::QuarterTubeMesh< ELEMENT >::QuarterTubeMesh().