#include <channel_with_leaflet_domain.h>
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. More... | |
~ChannelWithLeafletDomain () | |
Destructor: Kill macro elements. More... | |
double | htot () |
Total height of domain (width of channel) More... | |
double | hleaflet () |
Height of leaflet. More... | |
double | lleft () |
Length of domain to the left of leaflet. More... | |
double | lright () |
Length of domain to the right of leaflet. More... | |
GeomObject *& | leaflet_pt () |
Pointer to the wall. More... | |
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. More... | |
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. More... | |
void | macro_bound_I_S (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | macro_bound_I_W (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | macro_bound_I_E (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | macro_bound_II_N (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | macro_bound_II_S (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | macro_bound_II_W (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | macro_bound_II_E (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | macro_bound_III_N (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | macro_bound_III_S (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | macro_bound_III_W (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | macro_bound_III_E (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | macro_bound_IV_N (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | macro_bound_IV_S (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | macro_bound_IV_W (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | macro_bound_IV_E (const unsigned &t, const Vector< double > &zeta, Vector< double > &r, const unsigned &i, const unsigned &j) |
Helper function. More... | |
void | slanted_bound_up (const unsigned &t, const Vector< double > &zeta, Vector< double > &r) |
Helper function. More... | |
Protected Attributes | |
double | Lright |
Length of the domain to the right of the leaflet. More... | |
double | Lleft |
Length of the domain to the left of the leaflet. More... | |
double | Hleaflet |
Lagrangian coordinate at end of leaflet. More... | |
double | Htot |
Total width of the channel. More... | |
unsigned | Nright |
Number of macro element columnns to the right of the leaflet. More... | |
unsigned | Nleft |
Number of macro element columns to the left of the leaflet. More... | |
unsigned | Ny1 |
Number of macro element rows up to the end of the leaflet. More... | |
unsigned | Ny2 |
Number of macro element rows above the leaflet. More... | |
double | X_0 |
Center of the domain : origin of the leaflet, extracted from GeomObject and stored for fast access. More... | |
GeomObject * | Leaflet_pt |
Pointer to leaflet. More... | |
Rectangular domain with a leaflet blocking the lower half
Definition at line 46 of file channel_with_leaflet_domain.h.
|
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 58 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.
|
inline |
|
inline |
Height of leaflet.
Definition at line 107 of file channel_with_leaflet_domain.h.
References Hleaflet.
Referenced by ChannelWithLeafletDomain(), and oomph::AlgebraicChannelWithLeafletMesh< ELEMENT >::setup_algebraic_node_update().
|
inline |
Total height of domain (width of channel)
Definition at line 104 of file channel_with_leaflet_domain.h.
References Htot.
Referenced by ChannelWithLeafletDomain(), oomph::AlgebraicChannelWithLeafletMesh< ELEMENT >::setup_algebraic_node_update(), and oomph::AlgebraicChannelWithLeafletMesh< ELEMENT >::slanted_bound_up().
|
inline |
Pointer to the wall.
Definition at line 116 of file channel_with_leaflet_domain.h.
References Leaflet_pt, macro_bound_I_E(), macro_bound_I_N(), macro_bound_I_S(), macro_bound_I_W(), macro_bound_II_E(), macro_bound_II_N(), macro_bound_II_S(), macro_bound_II_W(), macro_bound_III_E(), macro_bound_III_N(), macro_bound_III_S(), macro_bound_III_W(), macro_bound_IV_E(), macro_bound_IV_N(), macro_bound_IV_S(), macro_bound_IV_W(), macro_element_boundary(), and slanted_bound_up().
Referenced by ChannelWithLeafletDomain().
|
inline |
Length of domain to the left of leaflet.
Definition at line 110 of file channel_with_leaflet_domain.h.
References Lleft.
Referenced by ChannelWithLeafletDomain(), oomph::AlgebraicChannelWithLeafletMesh< ELEMENT >::node_update_I(), oomph::AlgebraicChannelWithLeafletMesh< ELEMENT >::node_update_III(), and oomph::AlgebraicChannelWithLeafletMesh< ELEMENT >::setup_algebraic_node_update().
|
inline |
Length of domain to the right of leaflet.
Definition at line 113 of file channel_with_leaflet_domain.h.
References Lright.
Referenced by ChannelWithLeafletDomain(), oomph::AlgebraicChannelWithLeafletMesh< ELEMENT >::node_update_II(), oomph::AlgebraicChannelWithLeafletMesh< ELEMENT >::node_update_IV(), and oomph::AlgebraicChannelWithLeafletMesh< ELEMENT >::setup_algebraic_node_update().
|
protected |
Helper function.
Helper function for eastern boundary in lower left region.
Final expression of r
Definition at line 375 of file channel_with_leaflet_domain.h.
References Hleaflet, Leaflet_pt, Lleft, Nleft, Ny1, and X_0.
Referenced by leaflet_pt(), macro_bound_I_N(), macro_bound_I_S(), and macro_element_boundary().
|
protected |
Helper function.
Helper function for northern boundary in lower left region.
Definition at line 464 of file channel_with_leaflet_domain.h.
References macro_bound_I_E(), and macro_bound_I_W().
Referenced by leaflet_pt(), and macro_element_boundary().
|
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 488 of file channel_with_leaflet_domain.h.
References macro_bound_I_E(), and macro_bound_I_W().
Referenced by leaflet_pt(), and macro_element_boundary().
|
protected |
Helper function.
Helper function for western boundary in lower left region.
Final expression of r
Definition at line 419 of file channel_with_leaflet_domain.h.
References Hleaflet, Leaflet_pt, Lleft, Nleft, Ny1, and X_0.
Referenced by leaflet_pt(), macro_bound_I_N(), macro_bound_I_S(), and macro_element_boundary().
|
protected |
Helper function.
Helper function for eastern boundary in lower right region.
Final expression of r
Definition at line 523 of file channel_with_leaflet_domain.h.
References Hleaflet, Leaflet_pt, Lright, Nright, Ny1, and X_0.
Referenced by leaflet_pt(), macro_bound_II_N(), macro_bound_II_S(), and macro_element_boundary().
|
protected |
Helper function.
Helper function for northern boundary in lower right region.
Definition at line 616 of file channel_with_leaflet_domain.h.
References macro_bound_II_E(), and macro_bound_II_W().
Referenced by leaflet_pt(), and macro_element_boundary().
|
protected |
Helper function.
Helper function for southern boundary in lower right region.
Definition at line 641 of file channel_with_leaflet_domain.h.
References macro_bound_II_E(), and macro_bound_II_W().
Referenced by leaflet_pt(), and macro_element_boundary().
|
protected |
Helper function.
Helper function for western boundary in lower right region.
Definition at line 569 of file channel_with_leaflet_domain.h.
References Hleaflet, Leaflet_pt, Lright, Nright, Ny1, and X_0.
Referenced by leaflet_pt(), macro_bound_II_N(), macro_bound_II_S(), and macro_element_boundary().
|
protected |
Helper function.
Helper function for eastern boundary in upper left region.
Final expression of r
Definition at line 700 of file channel_with_leaflet_domain.h.
References Hleaflet, Htot, Lleft, Nleft, Ny2, slanted_bound_up(), and X_0.
Referenced by leaflet_pt(), macro_bound_III_N(), macro_bound_III_S(), and macro_element_boundary().
|
protected |
Helper function.
Helper function for northern boundary in upper left region.
Definition at line 792 of file channel_with_leaflet_domain.h.
References macro_bound_III_E(), and macro_bound_III_W().
Referenced by leaflet_pt(), and macro_element_boundary().
|
protected |
Helper function.
Helper function for southern boundary in upper left region.
Definition at line 816 of file channel_with_leaflet_domain.h.
References macro_bound_III_E(), and macro_bound_III_W().
Referenced by leaflet_pt(), and macro_element_boundary().
|
protected |
Helper function.
Helper function for western boundary in upper left region.
Definition at line 746 of file channel_with_leaflet_domain.h.
References Hleaflet, Htot, Lleft, Nleft, Ny2, slanted_bound_up(), and X_0.
Referenced by leaflet_pt(), macro_bound_III_N(), macro_bound_III_S(), and macro_element_boundary().
|
protected |
Helper function.
Helper function for eastern boundary in upper right region.
Definition at line 851 of file channel_with_leaflet_domain.h.
References Hleaflet, Htot, Lright, Nright, Ny2, slanted_bound_up(), and X_0.
Referenced by leaflet_pt(), macro_bound_IV_N(), macro_bound_IV_S(), and macro_element_boundary().
|
protected |
Helper function.
Helper function for northern boundary in upper right region.
Definition at line 941 of file channel_with_leaflet_domain.h.
References macro_bound_IV_E(), and macro_bound_IV_W().
Referenced by leaflet_pt(), and macro_element_boundary().
|
protected |
Helper function.
Helper function for southern boundary in upper right region.
Definition at line 965 of file channel_with_leaflet_domain.h.
References macro_bound_IV_E(), and macro_bound_IV_W().
Referenced by leaflet_pt(), and macro_element_boundary().
|
protected |
Helper function.
Helper function for western boundary in upper right region.
Definition at line 896 of file channel_with_leaflet_domain.h.
References Hleaflet, Htot, Lright, Nright, Ny2, slanted_bound_up(), and X_0.
Referenced by leaflet_pt(), macro_bound_IV_N(), macro_bound_IV_S(), and 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 | ||
) |
Parametrisation of macro element boundaries.
Definition at line 242 of file channel_with_leaflet_domain.h.
References macro_bound_I_E(), macro_bound_I_N(), macro_bound_I_S(), macro_bound_I_W(), macro_bound_II_E(), macro_bound_II_N(), macro_bound_II_S(), macro_bound_II_W(), macro_bound_III_E(), macro_bound_III_N(), macro_bound_III_S(), macro_bound_III_W(), macro_bound_IV_E(), macro_bound_IV_N(), macro_bound_IV_S(), macro_bound_IV_W(), Nleft, Nright, and Ny1.
Referenced by leaflet_pt().
|
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 678 of file channel_with_leaflet_domain.h.
References Hleaflet, Htot, Leaflet_pt, and X_0.
Referenced by leaflet_pt(), macro_bound_III_E(), macro_bound_III_W(), macro_bound_IV_E(), and macro_bound_IV_W().
|
protected |
Lagrangian coordinate at end of leaflet.
Definition at line 211 of file channel_with_leaflet_domain.h.
Referenced by ChannelWithLeafletDomain(), hleaflet(), 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().
|
protected |
Total width of the channel.
Definition at line 214 of file channel_with_leaflet_domain.h.
Referenced by ChannelWithLeafletDomain(), htot(), macro_bound_III_E(), macro_bound_III_W(), macro_bound_IV_E(), macro_bound_IV_W(), and slanted_bound_up().
|
protected |
Pointer to leaflet.
Definition at line 233 of file channel_with_leaflet_domain.h.
Referenced by ChannelWithLeafletDomain(), leaflet_pt(), macro_bound_I_E(), macro_bound_I_W(), macro_bound_II_E(), macro_bound_II_W(), and slanted_bound_up().
|
protected |
Length of the domain to the left of the leaflet.
Definition at line 208 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().
|
protected |
Length of the domain to the right of the leaflet.
Definition at line 205 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().
|
protected |
Number of macro element columns to the left of the leaflet.
Definition at line 220 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(), macro_element_boundary(), and ~ChannelWithLeafletDomain().
|
protected |
Number of macro element columnns to the right of the leaflet.
Definition at line 217 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(), macro_element_boundary(), and ~ChannelWithLeafletDomain().
|
protected |
Number of macro element rows up to the end of the leaflet.
Definition at line 223 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_element_boundary(), and ~ChannelWithLeafletDomain().
|
protected |
Number of macro element rows above the leaflet.
Definition at line 226 of file channel_with_leaflet_domain.h.
Referenced by ChannelWithLeafletDomain(), macro_bound_III_E(), macro_bound_III_W(), macro_bound_IV_E(), macro_bound_IV_W(), and ~ChannelWithLeafletDomain().
|
protected |
Center of the domain : origin of the leaflet, extracted from GeomObject and stored for fast access.
Definition at line 230 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().