26 #ifndef OOMPH_TUBE_MESH_HEADER
27 #define OOMPH_TUBE_MESH_HEADER
30 #include "../generic/refineable_brick_mesh.h"
31 #include "../generic/macro_element.h"
32 #include "../generic/domain.h"
33 #include "../generic/algebraic_elements.h"
34 #include "../generic/brick_mesh.h"
35 #include "../generic/macro_element_node_update_element.h"
55 template<
class ELEMENT>
70 const unsigned& nlayer,
123 template<
class ELEMENT>
142 const unsigned& nlayer,
152 for (
unsigned ielem = 0; ielem < TubeMesh<ELEMENT>::nelement(); ielem++)
163 for (
unsigned iel = 0; iel < TubeMesh<ELEMENT>::nelement(); iel++)
166 ELEMENT* ref_el_pt =
dynamic_cast<ELEMENT*
>(el_pt);
168 trees_pt.push_back(octree_root_pt);
174 unsigned success_flag =
176 if (success_flag == 0)
178 oomph_info <<
"Successfully built octree forest " << std::endl;
Base class for brick meshes (meshes made of 3D brick elements).
Definition: brick_mesh.h:178
MacroElement * macro_element_pt(const unsigned &i)
Access to i-th macro element.
Definition: domain.h:116
Definition: elements.h:1313
Definition: geom_objects.h:101
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 self_test()
Self-test: Check elements and nodes. Return 0 for OK.
Definition: mesh.cc:778
Definition: oomph_definitions.h:222
Definition: refineable_brick_mesh.h:61
Definition: refineable_brick_element.h:68
Definition: tube_mesh.template.h:127
RefineableTubeMesh(GeomObject *wall_pt, const Vector< double > ¢reline_limits, const Vector< double > &theta_positions, const Vector< double > &radius_box, const unsigned &nlayer, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper)
Definition: tube_mesh.template.h:137
virtual ~RefineableTubeMesh()
Destructor: empty.
Definition: tube_mesh.template.h:190
Definition: timesteppers.h:231
TreeForest * Forest_pt
Forest representation of the mesh.
Definition: refineable_mesh.h:768
Definition: tube_domain.h:70
Definition: tube_mesh.template.h:57
GeomObject *& volume_pt()
Access function to GeomObject representing wall.
Definition: tube_mesh.template.h:80
TubeDomain * domain_pt() const
Access function to underlying domain.
Definition: tube_mesh.template.h:92
GeomObject * Volume_pt
Pointer to the geometric object that represents the curved wall.
Definition: tube_mesh.template.h:102
TubeMesh(GeomObject *wall_pt, const Vector< double > ¢reline_limits, const Vector< double > &theta_positions, const Vector< double > &radius_box, const unsigned &nlayer, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper)
Definition: tube_mesh.template.cc:40
TubeDomain * domain_pt()
Access function to domain.
Definition: tube_mesh.template.h:86
TubeDomain * Domain_pt
Pointer to domain.
Definition: tube_mesh.template.h:99
virtual ~TubeMesh()
Destructor: empty.
Definition: tube_mesh.template.h:74
DRAIG: Change all instances of (SPATIAL_DIM) to (DIM-1).
Definition: AnisotropicHookean.h:10
OomphInfo oomph_info
Definition: oomph_definitions.cc:319
#define OOMPH_EXCEPTION_LOCATION
Definition: oomph_definitions.h:61
#define OOMPH_CURRENT_FUNCTION
Definition: oomph_definitions.h:86