27#ifndef OOMPH_RECTANGLE_WITH_MOVING_CYLINDER_MESH_HEADER
28#define OOMPH_RECTANGLE_WITH_MOVING_CYLINDER_MESH_HEADER
32#include <oomph-lib-config.h>
35#include "../generic/domain.h"
36#include "../generic/geom_objects.h"
37#include "../generic/refineable_quad_mesh.h"
144 for (
unsigned i = 0;
i < 2;
i++)
214 template<
class ELEMENT>
267 template<
class ELEMENT>
270 public RefineableQuadMesh<ELEMENT>
301 this->setup_boundary_element_info();
318 template<
class ELEMENT>
320 :
public virtual RefineableQuadMesh<ELEMENT>
Rectangular domain with circular whole DRAIG: This looks like a redefinition of the RectangleWithHole...
Vector< double > Upper_mid_left
Where the "radial" line from circle meets upper boundary on left.
void linear_interpolate(const Vector< double > &left, const Vector< double > &right, const double &s, Vector< double > &f)
Helper function to interpolate linearly between the "right" and "left" points; .
Vector< double > Lower_right
Lower right corner of rectangle.
Vector< double > Upper_right
Upper right corner of rectangle.
void macro_element_boundary(const double &time, const unsigned &m, const unsigned &direction, const Vector< double > &s, Vector< double > &f)
Parametrisation of macro element boundaries: f(s) is the position vector to macro-element m's boundar...
~RectangleWithHoleAndAnnularRegionDomain()
Destructor: Empty; macro elements are deleted in base class destructor.
GeomObject * Cylinder_pt
Pointer to geometric object that represents the central cylinder.
void project_point_on_cylinder_to_annular_boundary(const unsigned &time, const Vector< double > &xi, Vector< double > &r)
Helper function that, given the Lagrangian coordinate, xi, (associated with a point on the cylinder),...
Vector< double > Lower_mid_left
Where the "radial" line from circle meets lower boundary on left.
Vector< double > Lower_mid_right
Where the "radial" line from circle meets lower boundary on right.
double Annular_region_radius
The radius of the outer boundary of the annular region whose inner boundary is described by Cylinder_...
Vector< double > Upper_mid_right
Where the "radial" line from circle meets upper boundary on right.
Vector< double > Lower_left
Lower left corner of rectangle.
Vector< double > Upper_left
Upper left corner of rectangle.
RectangleWithHoleAndAnnularRegionDomain(GeomObject *cylinder_pt, const double &annular_region_radius, const double &length)
Constructor. Pass pointer to geometric object that represents the cylinder, the length of the (square...
Domain-based mesh for rectangular mesh with circular hole.
RectangleWithHoleAndAnnularRegionDomain * Domain_pt
Pointer to the domain.
RectangleWithHoleAndAnnularRegionDomain * domain_pt()
Access function to the domain.
~RectangleWithHoleAndAnnularRegionMesh()
Destructor: We made the Domain object so we have a responsibility for deleting it!
RefineableRectangleWithHoleAndAnnularRegionMesh< ELEMENT > * Central_mesh_pt
Pointer to the part of the mesh which has a Domain representation. We have to store it because we can...
~RefineableQuadMeshWithMovingCylinder()
Destructor: Delete the part of the mesh which has a Domain representation.
Refineable version of RectangleWithHoleAndAnnularRegionMesh. Applies one uniform refinement immediate...
RefineableRectangleWithHoleAndAnnularRegionMesh(GeomObject *cylinder_pt, const double &annular_region_radius, const double &length, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper)
Constructor. Pass pointer to geometric object that represents the cylinder, the length and height of ...
virtual ~RefineableRectangleWithHoleAndAnnularRegionMesh()
Destructor: Empty.
Unstructured refineable Triangle Mesh.