![]() |
|
Rectangular domain with circular whole. More...
Public Member Functions | |
double | centre_x () |
double | centre_y () |
RectangleWithHoleDomain (GeomObject *cylinder_pt, const double &length, const double &height) | |
~RectangleWithHoleDomain () | |
Destructor: Empty; cleanup done in base class. More... | |
void | linear_interpolate (Vector< double > left, Vector< double > right, const double &s, Vector< double > &f) |
void | macro_element_boundary (const unsigned &time, const unsigned &m, const unsigned &direction, const Vector< double > &s, Vector< double > &f) |
double | centre_x () |
double | centre_y () |
RectangleWithHoleDomain (GeomObject *cylinder_pt, const double &length, const double &height) | |
~RectangleWithHoleDomain () | |
Destructor: Empty; cleanup done in base class. More... | |
void | linear_interpolate (Vector< double > left, Vector< double > right, const double &s, Vector< double > &f) |
void | macro_element_boundary (const unsigned &time, const unsigned &m, const unsigned &direction, const Vector< double > &s, Vector< double > &f) |
GeomObject *const & | cylinder_pt () |
RectangleWithHoleDomain (GeomObject *cylinder_pt, const double &length, const double &height) | |
~RectangleWithHoleDomain () | |
Destructor: Empty; cleanup done in base class. More... | |
void | linear_interpolate (Vector< double > left, Vector< double > right, const double &s, Vector< double > &f) |
void | macro_element_boundary (const unsigned &time, const unsigned &m, const unsigned &direction, const Vector< double > &s, Vector< double > &f) |
![]() | |
Domain () | |
Constructor. More... | |
Domain (const Domain &)=delete | |
Broken copy constructor. More... | |
void | operator= (const Domain &)=delete |
Broken assignment operator. More... | |
virtual | ~Domain () |
MacroElement * | macro_element_pt (const unsigned &i) |
Access to i-th macro element. More... | |
unsigned | nmacro_element () |
Number of macro elements in domain. More... | |
void | output (const std::string &filename, const unsigned &nplot) |
Output macro elements. More... | |
void | output (std::ostream &outfile, const unsigned &nplot) |
Output macro elements. More... | |
virtual void | macro_element_boundary (const double &t, const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f) |
void | macro_element_boundary (const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f) |
void | output_macro_element_boundaries (const std::string &filename, const unsigned &nplot) |
Output all macro element boundaries as tecplot zones. More... | |
void | output_macro_element_boundaries (std::ostream &outfile, const unsigned &nplot) |
Output all macro element boundaries as tecplot zones. More... | |
virtual void | dmacro_element_boundary (const unsigned &t, const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f) |
virtual void | dmacro_element_boundary (const double &t, const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f) |
void | dmacro_element_boundary (const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f) |
virtual void | d2macro_element_boundary (const unsigned &t, const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f) |
virtual void | d2macro_element_boundary (const double &t, const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f) |
void | d2macro_element_boundary (const unsigned &i_macro, const unsigned &i_direct, const Vector< double > &s, Vector< double > &f) |
Private Attributes | |
Vector< double > | Lower_left |
Lower left corner of rectangle. More... | |
Vector< double > | Lower_right |
Lower right corner of rectangle. More... | |
Vector< double > | Lower_mid_left |
Where the "radial" line from circle meets lower boundary on left. More... | |
Vector< double > | Lower_mid_right |
Where the "radial" line from circle meets lower boundary on right. More... | |
Vector< double > | Upper_left |
Upper left corner of rectangle. More... | |
Vector< double > | Upper_right |
Upper right corner of rectangle. More... | |
Vector< double > | Upper_mid_left |
Where the "radial" line from circle meets upper boundary on left. More... | |
Vector< double > | Upper_mid_right |
Where the "radial" line from circle meets upper boundary on right. More... | |
Vector< double > | Upper_1 |
Coordinate of internal point in the boundaries of the domain. More... | |
Vector< double > | Upper_2 |
Coordinate of internal point in the boundaries of the domain. More... | |
Vector< double > | Upper_3 |
Coordinate of internal point in the boundaries of the domain. More... | |
Vector< double > | Lower_1 |
Coordinate of internal point in the boundaries of the domain. More... | |
Vector< double > | Lower_2 |
Coordinate of internal point in the boundaries of the domain. More... | |
Vector< double > | Lower_3 |
Coordinate of internal point in the boundaries of the domain. More... | |
double | Centre_x |
x-coordinate of circle centre More... | |
double | Centre_y |
y-coordinate of circle centre More... | |
GeomObject * | Cylinder_pt |
Pointer to geometric object that represents the central cylinder. More... | |
Additional Inherited Members | |
![]() | |
Vector< MacroElement * > | Macro_element_pt |
Vector of pointers to macro elements. More... | |
Rectangular domain with circular whole.
///////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
|
inline |
Constructor, Pass pointer to geometric object that represents the cylinder, the length and height of the domain. The GeomObject must be parametrised such that \(\zeta \in [0,2\pi]\) sweeps around the circumference in anticlockwise direction.
References Global_Parameters::Centre_x, Global_Parameters::Centre_y, Global_Physical_Variables::height(), compute_granudrum_aor::help, and i.
|
inline |
|
inline |
Constructor, Pass pointer to geometric object that represents the cylinder, the length and height of the domain. The GeomObject must be parametrised such that \(\zeta \in [0,2\pi]\) sweeps around the circumference in anticlockwise direction.
References Global_Parameters::Centre_x, Global_Parameters::Centre_y, Global_Physical_Variables::height(), compute_granudrum_aor::help, and i.
|
inline |
|
inline |
Constructor, Pass pointer to geometric object that represents the cylinder, the length and height of the domain. The GeomObject must be parametrised such that \(\zeta \in [0,2\pi]\) sweeps around the circumference in anticlockwise direction.
References Global_Physical_Variables::height(), compute_granudrum_aor::help, and i.
|
inline |
|
inline |
References Global_Parameters::Centre_x.
|
inline |
References Global_Parameters::Centre_x.
|
inline |
References Global_Parameters::Centre_y.
|
inline |
References Global_Parameters::Centre_y.
|
inline |
References GlobalParameters::Cylinder_pt.
|
inline |
Helper function to interpolate linearly between the "right" and "left" points; \( s \in [-1,1] \)
|
inlinevirtual |
Parametrisation of macro element boundaries: f(s) is the position vector to macro-element m's boundary in the specified direction [N/S/E/W] at the specfied discrete time level (time=0: present; time>0: previous)
Implements oomph::Domain.
References Eigen::bfloat16_impl::atan(), GlobalParameters::Cylinder_pt, oomph::QuadTreeNames::E, f(), m, oomph::QuadTreeNames::N, OOMPH_CURRENT_FUNCTION, OOMPH_EXCEPTION_LOCATION, OscillatingCylinder::position(), s, oomph::QuadTreeNames::S, and oomph::QuadTreeNames::W.
|
inlinevirtual |
Parametrisation of macro element boundaries: f(s) is the position vector to macro-element m's boundary in the specified direction [N/S/E/W] at the specfied discrete time level (time=0: present; time>0: previous)
Implements oomph::Domain.
References Eigen::bfloat16_impl::atan(), GlobalParameters::Cylinder_pt, oomph::QuadTreeNames::E, f(), m, oomph::QuadTreeNames::N, OOMPH_CURRENT_FUNCTION, OOMPH_EXCEPTION_LOCATION, OscillatingCylinder::position(), s, oomph::QuadTreeNames::S, and oomph::QuadTreeNames::W.
|
inlinevirtual |
Parametrisation of macro element boundaries: f(s) is the position vector to macro-element m's boundary in the specified direction [N/S/E/W] at the specfied discrete time level (time=0: present; time>0: previous)
Implements oomph::Domain.
References Eigen::bfloat16_impl::atan(), GlobalParameters::Cylinder_pt, Global_Physical_Variables::E, f(), m, N, OOMPH_CURRENT_FUNCTION, OOMPH_EXCEPTION_LOCATION, OscillatingCylinder::position(), s, oomph::QuadTreeNames::S, and oomph::QuadTreeNames::W.
|
private |
x-coordinate of circle centre
|
private |
y-coordinate of circle centre
|
private |
Pointer to geometric object that represents the central cylinder.
Coordinate of internal point in the boundaries of the domain.
Coordinate of internal point in the boundaries of the domain.
Coordinate of internal point in the boundaries of the domain.
Where the "radial" line from circle meets lower boundary on left.
Where the "radial" line from circle meets lower boundary on right.
Coordinate of internal point in the boundaries of the domain.
Coordinate of internal point in the boundaries of the domain.
Coordinate of internal point in the boundaries of the domain.
Where the "radial" line from circle meets upper boundary on left.
Where the "radial" line from circle meets upper boundary on right.