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

Basic collapsible channel mesh. The mesh is derived from the SimpleRectangularQuadMesh so it's node and element numbering scheme is the same as in that mesh. Only the boundaries are numbered differently to allow the easy identification of the "collapsible" segment. Boundary coordinates are set up for all nodes located on boundary 3 (the collapsible segment). The curvilinear ("collapsible") segment is defined by a GeomObject. More...

#include <collapsible_channel_mesh.template.h>

Inheritance diagram for oomph::CollapsibleChannelMesh< ELEMENT >:
oomph::SimpleRectangularQuadMesh< ELEMENT > ElasticCollapsibleChannelMesh< ELEMENT > oomph::AlgebraicCollapsibleChannelMesh< ELEMENT > oomph::MacroElementNodeUpdateCollapsibleChannelMesh< ELEMENT > oomph::RefineableCollapsibleChannelMesh< ELEMENT > oomph::RefineableAlgebraicCollapsibleChannelMesh< ELEMENT > oomph::MacroElementNodeUpdateRefineableCollapsibleChannelMesh< ELEMENT > ElasticRefineableCollapsibleChannelMesh< ELEMENT >

Public Member Functions

 CollapsibleChannelMesh (const unsigned &nup, const unsigned &ncollapsible, const unsigned &ndown, const unsigned &ny, const double &lup, const double &lcollapsible, const double &ldown, const double &ly, GeomObject *wall_pt, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper)
 Constructor: Pass number of elements in upstream/collapsible/ downstream segment and across the channel; lengths of upstream/ collapsible/downstream segments and width of channel, pointer to GeomObject that defines the collapsible segment and pointer to TimeStepper (defaults to the default timestepper, Steady). More...
 
 ~CollapsibleChannelMesh ()
 destructor More...
 
GeomObject *& wall_pt ()
 Access function to GeomObject representing wall. More...
 
CollapsibleChannelDomaindomain_pt ()
 Access function to domain. More...
 
virtual
CollapsibleChannelDomain::BLSquashFctPt
bl_squash_fct_pt ()
 Function pointer for function that squashes the mesh near the walls. Default trivial mapping (the identity) leaves vertical nodal positions unchanged. Mapping is used in underlying CollapsibleChannelDomain. Virtual so we can break it in derived classes (e.g. the Algebraic versions of this mesh where it doesn't make any sense to provide the bl_squash_fct after the mesh has been built). More...
 
CollapsibleChannelDomain::BLSquashFctPt bl_squash_fct_pt () const
 Function pointer for function that squashes the mesh near the walls. Default trivial mapping (the identity) leaves vertical nodal positions unchanged. Mapping is used in underlying CollapsibleChannelDomain. Const version. More...
 
virtual
CollapsibleChannelDomain::AxialSpacingFctPt
axial_spacing_fct_pt ()
 Function pointer for function that redistributes the elements in the axial direction. Virtual so we can break it in derived classes (e.g. the Algebraic versions of this mesh where it doesn't make any sense to provide the bl_squash_fct after the mesh has been built). More...
 
virtual
CollapsibleChannelDomain::AxialSpacingFctPt
axial_spacing_fct_pt () const
 Function pointer for function that redistributes the elements in the axial direction. Const version. More...
 
- Public Member Functions inherited from oomph::SimpleRectangularQuadMesh< ELEMENT >
 SimpleRectangularQuadMesh (const unsigned &Nx, const unsigned &Ny, const double &Lx, const double &Ly, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper)
 Constructor: Pass number of elements in the horizontal and vertical directions, and the corresponding dimensions. Timestepper defaults to Steady. More...
 
const unsigned & nx () const
 Access function for number of elements in x directions. More...
 
const unsigned & ny () const
 Access function for number of elements in y directions. More...
 

Protected Attributes

CollapsibleChannelDomainDomain_pt
 Pointer to domain. More...
 
unsigned Nup
 Number of element columns in upstream part. More...
 
unsigned Ncollapsible
 Number of element columns in collapsible part. More...
 
unsigned Ndown
 Number of element columns in downstream part. More...
 
unsigned Ny
 Number of element rows across channel. More...
 
GeomObject * Wall_pt
 Pointer to geometric object that represents the moving wall. More...
 

Detailed Description

template<class ELEMENT>
class oomph::CollapsibleChannelMesh< ELEMENT >

Basic collapsible channel mesh. The mesh is derived from the SimpleRectangularQuadMesh so it's node and element numbering scheme is the same as in that mesh. Only the boundaries are numbered differently to allow the easy identification of the "collapsible" segment. Boundary coordinates are set up for all nodes located on boundary 3 (the collapsible segment). The curvilinear ("collapsible") segment is defined by a GeomObject.

Definition at line 70 of file collapsible_channel_mesh.template.h.

Constructor & Destructor Documentation

template<class ELEMENT >
oomph::CollapsibleChannelMesh< ELEMENT >::CollapsibleChannelMesh ( const unsigned &  nup,
const unsigned &  ncollapsible,
const unsigned &  ndown,
const unsigned &  ny,
const double &  lup,
const double &  lcollapsible,
const double &  ldown,
const double &  ly,
GeomObject *  wall_pt,
TimeStepper *  time_stepper_pt = &Mesh::Default_TimeStepper 
)

Constructor: Pass number of elements in upstream/collapsible/ downstream segment and across the channel; lengths of upstream/ collapsible/downstream segments and width of channel, pointer to GeomObject that defines the collapsible segment and pointer to TimeStepper (defaults to the default timestepper, Steady).

Constructor: Pass number of elements in upstream/collapsible/downstream segment and across the channel; lengths of upstream/collapsible/downstream segments and width of channel, pointer to GeomObject that defines the collapsible segment and pointer to TimeStepper (defaults to the default timestepper, Steady).

Definition at line 48 of file collapsible_channel_mesh.template.cc.

References oomph::CollapsibleChannelMesh< ELEMENT >::Domain_pt.

template<class ELEMENT >
oomph::CollapsibleChannelMesh< ELEMENT >::~CollapsibleChannelMesh ( )
inline

Member Function Documentation

template<class ELEMENT >
virtual CollapsibleChannelDomain::AxialSpacingFctPt& oomph::CollapsibleChannelMesh< ELEMENT >::axial_spacing_fct_pt ( )
inlinevirtual

Function pointer for function that redistributes the elements in the axial direction. Virtual so we can break it in derived classes (e.g. the Algebraic versions of this mesh where it doesn't make any sense to provide the bl_squash_fct after the mesh has been built).

Reimplemented in oomph::AlgebraicCollapsibleChannelMesh< ELEMENT >.

Definition at line 132 of file collapsible_channel_mesh.template.h.

References oomph::CollapsibleChannelDomain::axial_spacing_fct_pt(), and oomph::CollapsibleChannelMesh< ELEMENT >::Domain_pt.

template<class ELEMENT >
virtual CollapsibleChannelDomain::AxialSpacingFctPt& oomph::CollapsibleChannelMesh< ELEMENT >::axial_spacing_fct_pt ( ) const
inlinevirtual

Function pointer for function that redistributes the elements in the axial direction. Const version.

Definition at line 140 of file collapsible_channel_mesh.template.h.

References oomph::CollapsibleChannelDomain::axial_spacing_fct_pt(), and oomph::CollapsibleChannelMesh< ELEMENT >::Domain_pt.

template<class ELEMENT >
virtual CollapsibleChannelDomain::BLSquashFctPt& oomph::CollapsibleChannelMesh< ELEMENT >::bl_squash_fct_pt ( )
inlinevirtual

Function pointer for function that squashes the mesh near the walls. Default trivial mapping (the identity) leaves vertical nodal positions unchanged. Mapping is used in underlying CollapsibleChannelDomain. Virtual so we can break it in derived classes (e.g. the Algebraic versions of this mesh where it doesn't make any sense to provide the bl_squash_fct after the mesh has been built).

Reimplemented in oomph::AlgebraicCollapsibleChannelMesh< ELEMENT >.

Definition at line 111 of file collapsible_channel_mesh.template.h.

References oomph::CollapsibleChannelDomain::bl_squash_fct_pt(), and oomph::CollapsibleChannelMesh< ELEMENT >::Domain_pt.

Referenced by FSICollapsibleChannelProblem< ELEMENT >::FSICollapsibleChannelProblem().

template<class ELEMENT >
CollapsibleChannelDomain::BLSquashFctPt oomph::CollapsibleChannelMesh< ELEMENT >::bl_squash_fct_pt ( ) const
inline

Function pointer for function that squashes the mesh near the walls. Default trivial mapping (the identity) leaves vertical nodal positions unchanged. Mapping is used in underlying CollapsibleChannelDomain. Const version.

Definition at line 121 of file collapsible_channel_mesh.template.h.

References oomph::CollapsibleChannelDomain::bl_squash_fct_pt(), and oomph::CollapsibleChannelMesh< ELEMENT >::Domain_pt.

template<class ELEMENT >
CollapsibleChannelDomain* oomph::CollapsibleChannelMesh< ELEMENT >::domain_pt ( )
inline
template<class ELEMENT >
GeomObject*& oomph::CollapsibleChannelMesh< ELEMENT >::wall_pt ( )
inline

Access function to GeomObject representing wall.

Definition at line 99 of file collapsible_channel_mesh.template.h.

References oomph::CollapsibleChannelMesh< ELEMENT >::Wall_pt.

Member Data Documentation

template<class ELEMENT >
CollapsibleChannelDomain* oomph::CollapsibleChannelMesh< ELEMENT >::Domain_pt
protected
template<class ELEMENT >
unsigned oomph::CollapsibleChannelMesh< ELEMENT >::Ncollapsible
protected

Number of element columns in collapsible part.

Definition at line 156 of file collapsible_channel_mesh.template.h.

template<class ELEMENT >
unsigned oomph::CollapsibleChannelMesh< ELEMENT >::Ndown
protected

Number of element columns in downstream part.

Definition at line 159 of file collapsible_channel_mesh.template.h.

template<class ELEMENT >
unsigned oomph::CollapsibleChannelMesh< ELEMENT >::Nup
protected

Number of element columns in upstream part.

Definition at line 153 of file collapsible_channel_mesh.template.h.

template<class ELEMENT >
unsigned oomph::CollapsibleChannelMesh< ELEMENT >::Ny
protected

Number of element rows across channel.

Definition at line 162 of file collapsible_channel_mesh.template.h.

template<class ELEMENT >
GeomObject* oomph::CollapsibleChannelMesh< ELEMENT >::Wall_pt
protected

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