Circular sector as domain. Domain is bounded by curved boundary which is represented by a GeomObject. Domain is parametrised by three macro elements. More...
#include <quarter_circle_sector_domain.h>
Public Types | |
typedef double(* | BLSquashFctPt) (const double &s) |
Typedef for function pointer for function that squashes the outer two macro elements towards the wall by mapping the input value of the "radial" macro element coordinate to the return value. More... | |
Public Member Functions | |
QuarterCircleSectorDomain (GeomObject *boundary_geom_object_pt, const double &xi_lo, const double &fract_mid, const double &xi_hi) | |
Constructor: Pass boundary object and start and end coordinates and fraction along boundary object where outer ring is divided. More... | |
QuarterCircleSectorDomain (const QuarterCircleSectorDomain &) | |
Broken copy constructor. More... | |
void | operator= (const QuarterCircleSectorDomain &) |
Broken assignment operator. More... | |
~QuarterCircleSectorDomain () | |
Destructor: Kill macro elements. More... | |
BLSquashFctPt & | bl_squash_fct_pt () |
Function pointer for function that squashes the outer two macro elements towards the wall by mapping the input value of the "radial" macro element coordinate to the return value. More... | |
double | s_squashed (const double &s) |
Function that squashes the outer two macro elements towards the wall by mapping the input value of the "radial" macro element coordinate to the return value. More... | |
void | macro_element_boundary (const unsigned &t, const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f) |
Vector representation of the i_macro-th macro element boundary i_direct (N/S/W/E) at time level t (t=0: present; t>0: previous): f(s). Note that the local coordinate s is a 1D Vector rather than a scalar – this is unavoidable because this function implements the pure virtual function in the Domain base class. More... | |
Private Member Functions | |
void | r_top_left_N (const unsigned &t, const Vector< double > &zeta, Vector< double > &f) |
Boundary of top left macro element zeta ![]() | |
void | r_top_left_W (const unsigned &t, const Vector< double > &zeta, Vector< double > &f) |
Boundary of top left macro element zeta ![]() | |
void | r_top_left_S (const unsigned &t, const Vector< double > &zeta, Vector< double > &f) |
Boundary of top left macro element zeta ![]() | |
void | r_top_left_E (const unsigned &t, const Vector< double > &zeta, Vector< double > &f) |
Boundary of top left macro element zeta ![]() | |
void | r_bot_right_N (const unsigned &t, const Vector< double > &zeta, Vector< double > &f) |
Boundary of bottom right macro element zeta ![]() | |
void | r_bot_right_W (const unsigned &t, const Vector< double > &zeta, Vector< double > &f) |
Boundary of bottom right macro element zeta ![]() | |
void | r_bot_right_S (const unsigned &t, const Vector< double > &zeta, Vector< double > &f) |
Boundary of bottom right macro element zeta ![]() | |
void | r_bot_right_E (const unsigned &t, const Vector< double > &zeta, Vector< double > &f) |
Boundary of bottom right macro element zeta ![]() | |
void | r_centr_N (const unsigned &t, const Vector< double > &zeta, Vector< double > &f) |
Boundary of central box macro element zeta ![]() | |
void | r_centr_E (const unsigned &t, const Vector< double > &zeta, Vector< double > &f) |
Boundary of central box macro element zeta ![]() | |
void | r_centr_S (const unsigned &t, const Vector< double > &zeta, Vector< double > &f) |
Boundary of central box macro element zeta ![]() | |
void | r_centr_W (const unsigned &t, const Vector< double > &zeta, Vector< double > &f) |
Boundary of central box macro element zeta ![]() | |
Static Private Member Functions | |
static double | default_BL_squash_fct (const double &s) |
Default for function that squashes the outer two macro elements towards the wall by mapping the input value of the "radial" macro element coordinate to the return value: Identity. More... | |
Private Attributes | |
double | Xi_lo |
Lower limit for the (1D) coordinates along the wall. More... | |
double | Fract_mid |
Fraction along wall where outer ring is to be divided. More... | |
double | Xi_hi |
Upper limit for the (1D) coordinates along the wall. More... | |
GeomObject * | Wall_pt |
Pointer to geometric object that represents the curved wall. More... | |
BLSquashFctPt | BL_squash_fct_pt |
Function pointer for function that squashes the outer two macro elements towards the wall by mapping the input value of the "radial" macro element coordinate to the return value. More... | |
Circular sector as domain. Domain is bounded by curved boundary which is represented by a GeomObject. Domain is parametrised by three macro elements.
Definition at line 50 of file quarter_circle_sector_domain.h.
typedef double(* oomph::QuarterCircleSectorDomain::BLSquashFctPt) (const double &s) |
Typedef for function pointer for function that squashes the outer two macro elements towards the wall by mapping the input value of the "radial" macro element coordinate to the return value.
Definition at line 106 of file quarter_circle_sector_domain.h.
|
inline |
Constructor: Pass boundary object and start and end coordinates and fraction along boundary object where outer ring is divided.
Definition at line 59 of file quarter_circle_sector_domain.h.
|
inline |
Broken copy constructor.
Definition at line 81 of file quarter_circle_sector_domain.h.
|
inline |
Destructor: Kill macro elements.
Definition at line 94 of file quarter_circle_sector_domain.h.
|
inline |
Function pointer for function that squashes the outer two macro elements towards the wall by mapping the input value of the "radial" macro element coordinate to the return value.
Definition at line 113 of file quarter_circle_sector_domain.h.
References BL_squash_fct_pt.
Referenced by oomph::QuarterCircleSectorMesh< ELEMENT >::bl_squash_fct_pt().
|
inlinestaticprivate |
Default for function that squashes the outer two macro elements towards the wall by mapping the input value of the "radial" macro element coordinate to the return value: Identity.
Definition at line 165 of file quarter_circle_sector_domain.h.
References r_bot_right_E(), r_bot_right_N(), r_bot_right_S(), r_bot_right_W(), r_centr_E(), r_centr_N(), r_centr_S(), r_centr_W(), r_top_left_E(), r_top_left_N(), r_top_left_S(), and r_top_left_W().
void oomph::QuarterCircleSectorDomain::macro_element_boundary | ( | const unsigned & | t, |
const unsigned & | imacro, | ||
const unsigned & | idirect, | ||
const Vector< double > & | s, | ||
Vector< double > & | f | ||
) |
Vector representation of the i_macro-th macro element boundary i_direct (N/S/W/E) at time level t (t=0: present; t>0: previous): f(s). Note that the local coordinate s is a 1D Vector rather than a scalar – this is unavoidable because this function implements the pure virtual function in the Domain base class.
Vector representation of the imacro-th macro element boundary idirect (N/S/W/E) at time level t (t=0: present; t>0: previous): f(s)
Definition at line 233 of file quarter_circle_sector_domain.h.
References r_bot_right_E(), r_bot_right_N(), r_bot_right_S(), r_bot_right_W(), r_centr_E(), r_centr_N(), r_centr_S(), r_centr_W(), r_top_left_E(), r_top_left_N(), r_top_left_S(), and r_top_left_W().
Referenced by s_squashed().
|
inline |
Broken assignment operator.
Definition at line 87 of file quarter_circle_sector_domain.h.
|
private |
Boundary of bottom right macro element zeta .
Eastern edge of bottom right macro element.
Definition at line 538 of file quarter_circle_sector_domain.h.
References Fract_mid, Wall_pt, Xi_hi, and Xi_lo.
Referenced by default_BL_squash_fct(), and macro_element_boundary().
|
private |
Boundary of bottom right macro element zeta .
Northern edge of bottom right macro element.
Definition at line 483 of file quarter_circle_sector_domain.h.
References r_top_left_E().
Referenced by default_BL_squash_fct(), and macro_element_boundary().
|
private |
Boundary of bottom right macro element zeta .
Southern edge of bottom right macro element.
Definition at line 518 of file quarter_circle_sector_domain.h.
References s_squashed(), Wall_pt, and Xi_lo.
Referenced by default_BL_squash_fct(), and macro_element_boundary().
|
private |
Boundary of bottom right macro element zeta .
Western edge of bottom right macro element.
Definition at line 493 of file quarter_circle_sector_domain.h.
References Wall_pt, Xi_hi, and Xi_lo.
Referenced by default_BL_squash_fct(), macro_element_boundary(), and r_centr_E().
|
private |
Boundary of central box macro element zeta .
Eastern edge of central box.
Definition at line 568 of file quarter_circle_sector_domain.h.
References r_bot_right_W().
Referenced by default_BL_squash_fct(), and macro_element_boundary().
|
private |
Boundary of central box macro element zeta .
Northern edge of central box.
Definition at line 555 of file quarter_circle_sector_domain.h.
References r_top_left_S().
Referenced by default_BL_squash_fct(), and macro_element_boundary().
|
private |
Boundary of central box macro element zeta .
Southern edge of central box.
Definition at line 581 of file quarter_circle_sector_domain.h.
References Wall_pt, and Xi_lo.
Referenced by default_BL_squash_fct(), and macro_element_boundary().
|
private |
Boundary of central box macro element zeta .
Western edge of central box.
Definition at line 602 of file quarter_circle_sector_domain.h.
References Wall_pt, and Xi_hi.
Referenced by default_BL_squash_fct(), and macro_element_boundary().
|
private |
Boundary of top left macro element zeta .
Eastern edge of top left macro element .
Definition at line 446 of file quarter_circle_sector_domain.h.
References Fract_mid, s_squashed(), Wall_pt, Xi_hi, and Xi_lo.
Referenced by default_BL_squash_fct(), macro_element_boundary(), and r_bot_right_N().
|
private |
Boundary of top left macro element zeta .
Northern edge of top left macro element .
Definition at line 378 of file quarter_circle_sector_domain.h.
References Fract_mid, Wall_pt, Xi_hi, and Xi_lo.
Referenced by default_BL_squash_fct(), and macro_element_boundary().
|
private |
Boundary of top left macro element zeta .
Southern edge of top left macro element .
Definition at line 417 of file quarter_circle_sector_domain.h.
References Wall_pt, and Xi_hi.
Referenced by default_BL_squash_fct(), macro_element_boundary(), and r_centr_N().
|
private |
Boundary of top left macro element zeta .
Western edge of top left macro element .
Definition at line 396 of file quarter_circle_sector_domain.h.
References s_squashed(), Wall_pt, and Xi_hi.
Referenced by default_BL_squash_fct(), and macro_element_boundary().
|
inline |
Function that squashes the outer two macro elements towards the wall by mapping the input value of the "radial" macro element coordinate to the return value.
Definition at line 122 of file quarter_circle_sector_domain.h.
References BL_squash_fct_pt, and macro_element_boundary().
Referenced by r_bot_right_S(), r_top_left_E(), and r_top_left_W().
|
private |
Function pointer for function that squashes the outer two macro elements towards the wall by mapping the input value of the "radial" macro element coordinate to the return value.
Definition at line 159 of file quarter_circle_sector_domain.h.
Referenced by bl_squash_fct_pt(), and s_squashed().
|
private |
Fraction along wall where outer ring is to be divided.
Definition at line 147 of file quarter_circle_sector_domain.h.
Referenced by r_bot_right_E(), r_top_left_E(), and r_top_left_N().
|
private |
Pointer to geometric object that represents the curved wall.
Definition at line 153 of file quarter_circle_sector_domain.h.
Referenced by r_bot_right_E(), r_bot_right_S(), r_bot_right_W(), r_centr_S(), r_centr_W(), r_top_left_E(), r_top_left_N(), r_top_left_S(), and r_top_left_W().
|
private |
Upper limit for the (1D) coordinates along the wall.
Definition at line 150 of file quarter_circle_sector_domain.h.
Referenced by r_bot_right_E(), r_bot_right_W(), r_centr_W(), r_top_left_E(), r_top_left_N(), r_top_left_S(), and r_top_left_W().
|
private |
Lower limit for the (1D) coordinates along the wall.
Definition at line 144 of file quarter_circle_sector_domain.h.
Referenced by r_bot_right_E(), r_bot_right_S(), r_bot_right_W(), r_centr_S(), r_top_left_E(), and r_top_left_N().