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 > oomph::AlgebraicCollapsibleChannelMesh< ELEMENT > oomph::MacroElementNodeUpdateCollapsibleChannelMesh< ELEMENT > oomph::RefineableCollapsibleChannelMesh< ELEMENT > oomph::RefineableAlgebraicCollapsibleChannelMesh< ELEMENT > oomph::MacroElementNodeUpdateRefineableCollapsibleChannelMesh< 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::BLSquashFctPtbl_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::AxialSpacingFctPtaxial_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::AxialSpacingFctPtaxial_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 64 of file collapsible_channel_mesh.template.h.

Constructor & Destructor Documentation

◆ CollapsibleChannelMesh()

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 43 of file collapsible_channel_mesh.template.cc.

References oomph::CollapsibleChannelMesh< ELEMENT >::Domain_pt, oomph::SimpleRectangularQuadMesh< ELEMENT >::ny(), and oomph::CollapsibleChannelMesh< ELEMENT >::wall_pt().

◆ ~CollapsibleChannelMesh()

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

Member Function Documentation

◆ axial_spacing_fct_pt() [1/2]

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 130 of file collapsible_channel_mesh.template.h.

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

◆ axial_spacing_fct_pt() [2/2]

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 138 of file collapsible_channel_mesh.template.h.

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

◆ bl_squash_fct_pt() [1/2]

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 109 of file collapsible_channel_mesh.template.h.

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

◆ bl_squash_fct_pt() [2/2]

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 119 of file collapsible_channel_mesh.template.h.

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

◆ domain_pt()

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

◆ wall_pt()

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

Member Data Documentation

◆ Domain_pt

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

◆ Ncollapsible

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

Number of element columns in collapsible part.

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

◆ Ndown

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

Number of element columns in downstream part.

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

◆ Nup

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

Number of element columns in upstream part.

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

◆ Ny

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

Number of element rows across channel.

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

◆ Wall_pt

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

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