Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
oomph::ChannelWithLeafletDomain Class Reference

Rectangular domain with a leaflet blocking the lower half. More...

#include <channel_with_leaflet_domain.h>

Inheritance diagram for oomph::ChannelWithLeafletDomain:

Public Member Functions

 ChannelWithLeafletDomain (GeomObject *leaflet_pt, const double &lleft, const double &lright, const double &hleaflet, const double &htot, const unsigned &nleft, const unsigned &nright, const unsigned &ny1, const unsigned &ny2)
 Constructor: Pass pointer to GeomObject that represents the leaflet, the length of the domain to left and right of the leaflet, the height of the leaflet and the overall height of the channel, the number of element columns to the left and right of the leaflet, the number of rows of elements from the bottom of the channel to the end of the leaflet, the number of rows of elements above the end of the leaflet.
 
 ~ChannelWithLeafletDomain ()
 Destructor: Empty; cleanup done in base class.
 
double htot ()
 Total height of domain (width of channel)
 
double hleaflet ()
 Height of leaflet.
 
double lleft ()
 Length of domain to the left of leaflet.
 
double lright ()
 Length of domain to the right of leaflet.
 
GeomObject *& leaflet_pt ()
 Pointer to the wall.
 
void macro_element_boundary (const unsigned &t, const unsigned &imacro, const unsigned &idirect, const Vector< double > &zeta, Vector< double > &r)
 Parametrisation of macro element boundaries.
 

Protected Member Functions

void macro_bound_I_N (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_I_S (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_I_W (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_I_E (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_II_N (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_II_S (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_II_W (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_II_E (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_III_N (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_III_S (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_III_W (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_III_E (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_IV_N (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_IV_S (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_IV_W (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void macro_bound_IV_E (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j)
 Helper function.
 
void slanted_bound_up (const unsigned &t, const Vector< double > &zeta, Vector< double > &r)
 Helper function.
 

Protected Attributes

double Lright
 Length of the domain to the right of the leaflet.
 
double Lleft
 Length of the domain to the left of the leaflet.
 
double Hleaflet
 Lagrangian coordinate at end of leaflet.
 
double Htot
 Total width of the channel.
 
unsigned Nright
 Number of macro element columnns to the right of the leaflet.
 
unsigned Nleft
 Number of macro element columns to the left of the leaflet.
 
unsigned Ny1
 Number of macro element rows up to the end of the leaflet.
 
unsigned Ny2
 Number of macro element rows above the leaflet.
 
double X_0
 Center of the domain : origin of the leaflet, extracted from GeomObject and stored for fast access.
 
GeomObjectLeaflet_pt
 Pointer to leaflet.
 

Detailed Description

Rectangular domain with a leaflet blocking the lower half.

Definition at line 40 of file channel_with_leaflet_domain.h.

Constructor & Destructor Documentation

◆ ChannelWithLeafletDomain()

oomph::ChannelWithLeafletDomain::ChannelWithLeafletDomain ( GeomObject leaflet_pt,
const double lleft,
const double lright,
const double hleaflet,
const double htot,
const unsigned nleft,
const unsigned nright,
const unsigned ny1,
const unsigned ny2 
)
inline

Constructor: Pass pointer to GeomObject that represents the leaflet, the length of the domain to left and right of the leaflet, the height of the leaflet and the overall height of the channel, the number of element columns to the left and right of the leaflet, the number of rows of elements from the bottom of the channel to the end of the leaflet, the number of rows of elements above the end of the leaflet.

Definition at line 51 of file channel_with_leaflet_domain.h.

References hleaflet(), Hleaflet, htot(), Htot, leaflet_pt(), Leaflet_pt, lleft(), Lleft, lright(), Lright, Nleft, Nright, Ny1, Ny2, and X_0.

◆ ~ChannelWithLeafletDomain()

oomph::ChannelWithLeafletDomain::~ChannelWithLeafletDomain ( )
inline

Destructor: Empty; cleanup done in base class.

Definition at line 91 of file channel_with_leaflet_domain.h.

Member Function Documentation

◆ hleaflet()

double oomph::ChannelWithLeafletDomain::hleaflet ( )
inline

Height of leaflet.

Definition at line 100 of file channel_with_leaflet_domain.h.

References Hleaflet.

Referenced by ChannelWithLeafletDomain().

◆ htot()

double oomph::ChannelWithLeafletDomain::htot ( )
inline

Total height of domain (width of channel)

Definition at line 94 of file channel_with_leaflet_domain.h.

References Htot.

Referenced by ChannelWithLeafletDomain().

◆ leaflet_pt()

GeomObject *& oomph::ChannelWithLeafletDomain::leaflet_pt ( )
inline

Pointer to the wall.

Definition at line 118 of file channel_with_leaflet_domain.h.

References Leaflet_pt.

Referenced by ChannelWithLeafletDomain().

◆ lleft()

double oomph::ChannelWithLeafletDomain::lleft ( )
inline

Length of domain to the left of leaflet.

Definition at line 106 of file channel_with_leaflet_domain.h.

References Lleft.

Referenced by ChannelWithLeafletDomain().

◆ lright()

double oomph::ChannelWithLeafletDomain::lright ( )
inline

Length of domain to the right of leaflet.

Definition at line 112 of file channel_with_leaflet_domain.h.

References Lright.

Referenced by ChannelWithLeafletDomain().

◆ macro_bound_I_E()

void oomph::ChannelWithLeafletDomain::macro_bound_I_E ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for eastern boundary in lower left region.

Final expression of r

Definition at line 411 of file channel_with_leaflet_domain.h.

References Hleaflet, Leaflet_pt, Lleft, Nleft, Ny1, and X_0.

Referenced by macro_bound_I_N(), macro_bound_I_S(), and macro_element_boundary().

◆ macro_bound_I_N()

void oomph::ChannelWithLeafletDomain::macro_bound_I_N ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for northern boundary in lower left region.

Definition at line 495 of file channel_with_leaflet_domain.h.

References macro_bound_I_E(), and macro_bound_I_W().

Referenced by macro_element_boundary().

◆ macro_bound_I_S()

void oomph::ChannelWithLeafletDomain::macro_bound_I_S ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for southern boundary in lower left region.

Find the coordinates of the two corners of the south boundary

Definition at line 517 of file channel_with_leaflet_domain.h.

References macro_bound_I_E(), and macro_bound_I_W().

Referenced by macro_element_boundary().

◆ macro_bound_I_W()

void oomph::ChannelWithLeafletDomain::macro_bound_I_W ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for western boundary in lower left region.

Final expression of r

Definition at line 453 of file channel_with_leaflet_domain.h.

References Hleaflet, Leaflet_pt, Lleft, Nleft, Ny1, and X_0.

Referenced by macro_bound_I_N(), macro_bound_I_S(), and macro_element_boundary().

◆ macro_bound_II_E()

void oomph::ChannelWithLeafletDomain::macro_bound_II_E ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for eastern boundary in lower right region.

Final expression of r

Definition at line 546 of file channel_with_leaflet_domain.h.

References Hleaflet, Leaflet_pt, Lright, Nright, Ny1, and X_0.

Referenced by macro_bound_II_N(), macro_bound_II_S(), and macro_element_boundary().

◆ macro_bound_II_N()

void oomph::ChannelWithLeafletDomain::macro_bound_II_N ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for northern boundary in lower right region.

Definition at line 633 of file channel_with_leaflet_domain.h.

References macro_bound_II_E(), and macro_bound_II_W().

Referenced by macro_element_boundary().

◆ macro_bound_II_S()

void oomph::ChannelWithLeafletDomain::macro_bound_II_S ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for southern boundary in lower right region.

Definition at line 655 of file channel_with_leaflet_domain.h.

References macro_bound_II_E(), and macro_bound_II_W().

Referenced by macro_element_boundary().

◆ macro_bound_II_W()

void oomph::ChannelWithLeafletDomain::macro_bound_II_W ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for western boundary in lower right region.

Definition at line 589 of file channel_with_leaflet_domain.h.

References Hleaflet, Leaflet_pt, Lright, Nright, Ny1, and X_0.

Referenced by macro_bound_II_N(), macro_bound_II_S(), and macro_element_boundary().

◆ macro_bound_III_E()

void oomph::ChannelWithLeafletDomain::macro_bound_III_E ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for eastern boundary in upper left region.

Final expression of r

Definition at line 705 of file channel_with_leaflet_domain.h.

References Hleaflet, Htot, Lleft, Nleft, Ny2, slanted_bound_up(), and X_0.

Referenced by macro_bound_III_N(), macro_bound_III_S(), and macro_element_boundary().

◆ macro_bound_III_N()

void oomph::ChannelWithLeafletDomain::macro_bound_III_N ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for northern boundary in upper left region.

Definition at line 793 of file channel_with_leaflet_domain.h.

References macro_bound_III_E(), and macro_bound_III_W().

Referenced by macro_element_boundary().

◆ macro_bound_III_S()

void oomph::ChannelWithLeafletDomain::macro_bound_III_S ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for southern boundary in upper left region.

Definition at line 815 of file channel_with_leaflet_domain.h.

References macro_bound_III_E(), and macro_bound_III_W().

Referenced by macro_element_boundary().

◆ macro_bound_III_W()

void oomph::ChannelWithLeafletDomain::macro_bound_III_W ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for western boundary in upper left region.

Definition at line 749 of file channel_with_leaflet_domain.h.

References Hleaflet, Htot, Lleft, Nleft, Ny2, slanted_bound_up(), and X_0.

Referenced by macro_bound_III_N(), macro_bound_III_S(), and macro_element_boundary().

◆ macro_bound_IV_E()

void oomph::ChannelWithLeafletDomain::macro_bound_IV_E ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for eastern boundary in upper right region.

Definition at line 844 of file channel_with_leaflet_domain.h.

References Hleaflet, Htot, Lright, Nright, Ny2, slanted_bound_up(), and X_0.

Referenced by macro_bound_IV_N(), macro_bound_IV_S(), and macro_element_boundary().

◆ macro_bound_IV_N()

void oomph::ChannelWithLeafletDomain::macro_bound_IV_N ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for northern boundary in upper right region.

Definition at line 932 of file channel_with_leaflet_domain.h.

References macro_bound_IV_E(), and macro_bound_IV_W().

Referenced by macro_element_boundary().

◆ macro_bound_IV_S()

void oomph::ChannelWithLeafletDomain::macro_bound_IV_S ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for southern boundary in upper right region.

Definition at line 954 of file channel_with_leaflet_domain.h.

References macro_bound_IV_E(), and macro_bound_IV_W().

Referenced by macro_element_boundary().

◆ macro_bound_IV_W()

void oomph::ChannelWithLeafletDomain::macro_bound_IV_W ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r,
const unsigned i,
const unsigned j 
)
protected

Helper function.

Helper function for western boundary in upper right region.

Definition at line 888 of file channel_with_leaflet_domain.h.

References Hleaflet, Htot, Lright, Nright, Ny2, slanted_bound_up(), and X_0.

Referenced by macro_bound_IV_N(), macro_bound_IV_S(), and macro_element_boundary().

◆ macro_element_boundary()

void oomph::ChannelWithLeafletDomain::macro_element_boundary ( const unsigned t,
const unsigned imacro,
const unsigned idirect,
const Vector< double > &  zeta,
Vector< double > &  r 
)

◆ slanted_bound_up()

void oomph::ChannelWithLeafletDomain::slanted_bound_up ( const unsigned t,
const Vector< double > &  zeta,
Vector< double > &  r 
)
protected

Helper function.

Describe the line between the boundary north of the domain (at x=X_0) and the top of the wall, when zeta goes from 0 to 1.

Definition at line 685 of file channel_with_leaflet_domain.h.

References Hleaflet, Htot, Leaflet_pt, and X_0.

Referenced by macro_bound_III_E(), macro_bound_III_W(), macro_bound_IV_E(), and macro_bound_IV_W().

Member Data Documentation

◆ Hleaflet

double oomph::ChannelWithLeafletDomain::Hleaflet
protected

◆ Htot

double oomph::ChannelWithLeafletDomain::Htot
protected

◆ Leaflet_pt

GeomObject* oomph::ChannelWithLeafletDomain::Leaflet_pt
protected

◆ Lleft

double oomph::ChannelWithLeafletDomain::Lleft
protected

Length of the domain to the left of the leaflet.

Definition at line 251 of file channel_with_leaflet_domain.h.

Referenced by ChannelWithLeafletDomain(), lleft(), macro_bound_I_E(), macro_bound_I_W(), macro_bound_III_E(), and macro_bound_III_W().

◆ Lright

double oomph::ChannelWithLeafletDomain::Lright
protected

Length of the domain to the right of the leaflet.

Definition at line 248 of file channel_with_leaflet_domain.h.

Referenced by ChannelWithLeafletDomain(), lright(), macro_bound_II_E(), macro_bound_II_W(), macro_bound_IV_E(), and macro_bound_IV_W().

◆ Nleft

unsigned oomph::ChannelWithLeafletDomain::Nleft
protected

Number of macro element columns to the left of the leaflet.

Definition at line 263 of file channel_with_leaflet_domain.h.

Referenced by ChannelWithLeafletDomain(), macro_bound_I_E(), macro_bound_I_W(), macro_bound_III_E(), macro_bound_III_W(), and macro_element_boundary().

◆ Nright

unsigned oomph::ChannelWithLeafletDomain::Nright
protected

Number of macro element columnns to the right of the leaflet.

Definition at line 260 of file channel_with_leaflet_domain.h.

Referenced by ChannelWithLeafletDomain(), macro_bound_II_E(), macro_bound_II_W(), macro_bound_IV_E(), macro_bound_IV_W(), and macro_element_boundary().

◆ Ny1

unsigned oomph::ChannelWithLeafletDomain::Ny1
protected

Number of macro element rows up to the end of the leaflet.

Definition at line 266 of file channel_with_leaflet_domain.h.

Referenced by ChannelWithLeafletDomain(), macro_bound_I_E(), macro_bound_I_W(), macro_bound_II_E(), macro_bound_II_W(), and macro_element_boundary().

◆ Ny2

unsigned oomph::ChannelWithLeafletDomain::Ny2
protected

Number of macro element rows above the leaflet.

Definition at line 269 of file channel_with_leaflet_domain.h.

Referenced by ChannelWithLeafletDomain(), macro_bound_III_E(), macro_bound_III_W(), macro_bound_IV_E(), and macro_bound_IV_W().

◆ X_0

double oomph::ChannelWithLeafletDomain::X_0
protected

Center of the domain : origin of the leaflet, extracted from GeomObject and stored for fast access.

Definition at line 273 of file channel_with_leaflet_domain.h.

Referenced by ChannelWithLeafletDomain(), macro_bound_I_E(), macro_bound_I_W(), macro_bound_II_E(), macro_bound_II_W(), macro_bound_III_E(), macro_bound_III_W(), macro_bound_IV_E(), macro_bound_IV_W(), and slanted_bound_up().


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