27 #ifndef OOMPH_QUARTER_PIPE_MESH_TEMPLATE_HEADER
28 #define OOMPH_QUARTER_PIPE_MESH_TEMPLATE_HEADER
31 #include "../generic/mesh.h"
32 #include "../generic/brick_mesh.h"
33 #include "../generic/refineable_brick_mesh.h"
38 #include "../generic/macro_element.h"
39 #include "../generic/domain.h"
51 template<
class ELEMENT>
117 template<
class ELEMENT>
125 const unsigned& ntheta,
130 const double& length,
133 ntheta, nr,
nz, 1.0, 1.0, 1.0, time_stepper_pt),
135 ntheta, nr,
nz,
rmin,
rmax, length, time_stepper_pt)
140 for (
unsigned iel = 0; iel < (nr * ntheta *
nz); iel++)
143 ELEMENT* ref_el_pt =
dynamic_cast<ELEMENT*
>(el_pt);
145 trees_pt.push_back(octree_root_pt);
170 template<
class ELEMENT>
180 const unsigned& ntheta,
185 const double& length,
188 ntheta, nr,
nz, 1.0, 1.0, 1.0, time_stepper_pt),
190 ntheta, nr,
nz,
rmin,
rmax, length, time_stepper_pt)
208 template<
class ELEMENT>
219 const unsigned& ntheta,
224 const double& length,
227 ntheta, nr,
nz, 1.0, 1.0, 1.0, time_stepper_pt),
229 ntheta, nr,
nz,
rmin,
rmax, length, time_stepper_pt),
231 ntheta, nr,
nz,
rmin,
rmax, length, time_stepper_pt)
236 for (
unsigned iel = 0; iel < (nr * ntheta *
nz); iel++)
239 ELEMENT* ref_el_pt =
dynamic_cast<ELEMENT*
>(el_pt);
241 trees_pt.push_back(octree_root_pt);
246 unsigned n_element = this->
nelement();
247 for (
unsigned e = 0;
e < n_element;
e++)
250 ELEMENT* el_pt =
dynamic_cast<ELEMENT*
>(this->
element_pt(
e));
255 el_pt->set_undeformed_macro_elem_pt(
262 ->enable_use_of_undeformed_macro_element_for_new_lagrangian_coords();
Array< double, 1, 3 > e(1./3., 0.5, 2.)
MacroElement * macro_element_pt(const unsigned &i)
Access to i-th macro element.
Definition: domain.h:116
Definition: quarter_pipe_mesh.template.h:173
ElasticQuarterPipeMesh(const unsigned &ntheta, const unsigned &nr, const unsigned &nz, const double &rmin, const double &rmax, const double &length, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper)
Definition: quarter_pipe_mesh.template.h:179
Refineable elastic quarter pipe mesh class.
Definition: quarter_pipe_mesh.template.h:212
ElasticRefineableQuarterPipeMesh(const unsigned &ntheta, const unsigned &nr, const unsigned &nz, const double &rmin, const double &rmax, const double &length, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper)
Definition: quarter_pipe_mesh.template.h:218
Definition: elements.h:1313
static Steady< 0 > Default_TimeStepper
The Steady Timestepper.
Definition: mesh.h:75
FiniteElement * finite_element_pt(const unsigned &e) const
Definition: mesh.h:473
const Vector< GeneralisedElement * > & element_pt() const
Return reference to the Vector of elements.
Definition: mesh.h:460
unsigned long nelement() const
Return number of elements in the mesh.
Definition: mesh.h:590
Domain representing a quarter pipe.
Definition: quarter_pipe_domain.h:41
Definition: quarter_pipe_mesh.template.h:53
double Length
Length.
Definition: quarter_pipe_mesh.template.h:101
QuarterPipeDomain * Domain_pt
Pointer to domain.
Definition: quarter_pipe_mesh.template.h:104
unsigned Nz
Number of elements axial direction.
Definition: quarter_pipe_mesh.template.h:92
QuarterPipeMesh(const unsigned &ntheta, const unsigned &nr, const unsigned &nz, const double &rmin, const double &rmax, const double &length, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper)
Definition: quarter_pipe_mesh.template.cc:39
virtual ~QuarterPipeMesh()
Empty Destructor.
Definition: quarter_pipe_mesh.template.h:67
unsigned Nr
Number of elements radial direction.
Definition: quarter_pipe_mesh.template.h:89
QuarterPipeDomain * domain_pt()
Access function to domain.
Definition: quarter_pipe_mesh.template.h:73
double Rmin
Inner radius.
Definition: quarter_pipe_mesh.template.h:95
unsigned Ntheta
Number of elements azimuthal direction.
Definition: quarter_pipe_mesh.template.h:86
double Rmax
Outer radius.
Definition: quarter_pipe_mesh.template.h:98
QuarterPipeDomain * domain_pt() const
Access function to underlying domain.
Definition: quarter_pipe_mesh.template.h:79
Definition: refineable_brick_mesh.h:61
Refineable quarter pipe mesh class.
Definition: quarter_pipe_mesh.template.h:120
RefineableQuarterPipeMesh(const unsigned &ntheta, const unsigned &nr, const unsigned &nz, const double &rmin, const double &rmax, const double &length, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper)
Definition: quarter_pipe_mesh.template.h:124
virtual ~RefineableQuarterPipeMesh()
Destructor – delete forest.
Definition: quarter_pipe_mesh.template.h:153
Simple cubic 3D Brick mesh class.
Definition: simple_cubic_mesh.template.h:47
const unsigned & nz() const
Access function for number of elements in y directions.
Definition: simple_cubic_mesh.template.h:120
void set_lagrangian_nodal_coordinates()
Definition: mesh.cc:9564
Definition: timesteppers.h:231
TreeForest * Forest_pt
Forest representation of the mesh.
Definition: refineable_mesh.h:768
double rmax
Definition: time_harmonic_fourier_decomposed_linear_elasticity/cylinder/cylinder.cc:70
double rmin
Definition: time_harmonic_fourier_decomposed_linear_elasticity/cylinder/cylinder.cc:68
DRAIG: Change all instances of (SPATIAL_DIM) to (DIM-1).
Definition: AnisotropicHookean.h:10