oomph::TBubbleEnrichedElement< DIM, 3 > Class Template Reference

#include <Telements.h>

+ Inheritance diagram for oomph::TBubbleEnrichedElement< DIM, 3 >:

Public Member Functions

 TBubbleEnrichedElement ()
 Constructor. More...
 
 TBubbleEnrichedElement (const TBubbleEnrichedElement &)=delete
 Broken copy constructor. More...
 
 ~TBubbleEnrichedElement ()
 Broken assignment operator. More...
 
void shape (const Vector< double > &s, Shape &psi) const
 Calculate the geometric shape functions at local coordinate s. More...
 
void dshape_local (const Vector< double > &s, Shape &psi, DShape &dpsids) const
 
void d2shape_local (const Vector< double > &s, Shape &psi, DShape &dpsids, DShape &d2psids) const
 
void local_coordinate_of_node (const unsigned &j, Vector< double > &s) const
 Return local coordinates of node j. More...
 
void build_face_element (const int &face_index, FaceElement *face_element_pt)
 Build the lower-dimensional FaceElement. More...
 
- Public Member Functions inherited from oomph::TElement< DIM, 3 >
const unsigned Node_on_face [3][2]
 Assign the nodal translation schemes. More...
 
const unsigned Node_on_face [3][3]
 
const unsigned Node_on_face [3][4]
 
const unsigned Node_on_face [4][3]
 Assign the nodal translation scheme for linear elements. More...
 
const unsigned Node_on_face [4][6]
 Assign the nodal translation scheme for quadratic elements. More...
 

Static Private Attributes

static TBubbleEnrichedGauss< DIM, 3 > Default_enriched_integration_scheme
 
static const unsigned Central_node_on_face [DIM+1]
 

Detailed Description

template<unsigned DIM>
class oomph::TBubbleEnrichedElement< DIM, 3 >

Enriched TElement class specialised to two spatial dimensions and three nodes per side (quadratic element) Ordering of nodes as in Zienkiwizc sketches: vertex nodes 0 - 1 - 2 anticlockwise. Midside nodes filled in progressing along the consecutive edges. Central node(s) come(s) last. The idea is that we inherit from the existing TElement<2,3>, add the single extra node at the centroid and overload the shape functions to be those corresponding to the enriched element.

Constructor & Destructor Documentation

◆ TBubbleEnrichedElement() [1/2]

template<unsigned DIM>
oomph::TBubbleEnrichedElement< DIM, 3 >::TBubbleEnrichedElement ( )
inline

Constructor.

3635  : TElement<DIM, 3>(), TBubbleEnrichedElementShape<DIM, 3>()
3636  {
3637  // Add the additional enrichment nodes
3638  unsigned n_node = this->nnode();
3639  this->set_n_node(n_node +
3640  TBubbleEnrichedElementShape<DIM, 3>::n_enriched_nodes());
3641  // Set the new integration scheme
3642  this->set_integration_scheme(&Default_enriched_integration_scheme);
3643  }
static TBubbleEnrichedGauss< DIM, 3 > Default_enriched_integration_scheme
Definition: Telements.h:3627

◆ TBubbleEnrichedElement() [2/2]

template<unsigned DIM>
oomph::TBubbleEnrichedElement< DIM, 3 >::TBubbleEnrichedElement ( const TBubbleEnrichedElement< DIM, 3 > &  )
delete

Broken copy constructor.

◆ ~TBubbleEnrichedElement()

template<unsigned DIM>
oomph::TBubbleEnrichedElement< DIM, 3 >::~TBubbleEnrichedElement ( )
inline

Broken assignment operator.

Destructor

3652 {}

Member Function Documentation

◆ build_face_element()

template<unsigned DIM>
void oomph::TBubbleEnrichedElement< DIM, 3 >::build_face_element ( const int face_index,
FaceElement face_element_pt 
)

Build the lower-dimensional FaceElement.

◆ d2shape_local()

template<unsigned DIM>
void oomph::TBubbleEnrichedElement< DIM, 3 >::d2shape_local ( const Vector< double > &  s,
Shape psi,
DShape dpsids,
DShape d2psids 
) const
inline

Compute the geometric shape functions, derivatives and second derivatives w.r.t local coordinates at local coordinate s d2psids(i,0) = \( \partial^2 \psi_j / \partial s_0^2 \) d2psids(i,1) = \( \partial^2 \psi_j / \partial s_1^2 \) d2psids(i,2) = \( \partial^2 \psi_j / \partial s_0 \partial s_1 \)

3679  {
3680  TBubbleEnrichedElementShape<DIM, 3>::d2shape_local(
3681  s, psi, dpsids, d2psids);
3682  }
RealScalar s
Definition: level1_cplx_impl.h:130

References s.

◆ dshape_local()

template<unsigned DIM>
void oomph::TBubbleEnrichedElement< DIM, 3 >::dshape_local ( const Vector< double > &  s,
Shape psi,
DShape dpsids 
) const
inline

Compute the geometric shape functions and derivatives w.r.t. local coordinates at local coordinate s

3665  {
3666  TBubbleEnrichedElementShape<DIM, 3>::dshape_local(s, psi, dpsids);
3667  }

References s.

◆ local_coordinate_of_node()

template<unsigned DIM>
void oomph::TBubbleEnrichedElement< DIM, 3 >::local_coordinate_of_node ( const unsigned j,
Vector< double > &  s 
) const
inline

Return local coordinates of node j.

3687  {
3688  TBubbleEnrichedElementShape<DIM, 3>::local_coordinate_of_node(j, s);
3689  }
std::ptrdiff_t j
Definition: tut_arithmetic_redux_minmax.cpp:2

References j, and s.

◆ shape()

template<unsigned DIM>
void oomph::TBubbleEnrichedElement< DIM, 3 >::shape ( const Vector< double > &  s,
Shape psi 
) const
inline

Calculate the geometric shape functions at local coordinate s.

3656  {
3658  }
void shape(const double &s, double *Psi)
Definition: shape.h:564

References s, and oomph::OneDimLagrange::shape().

Member Data Documentation

◆ Central_node_on_face

template<unsigned DIM>
const unsigned oomph::TBubbleEnrichedElement< DIM, 3 >::Central_node_on_face[DIM+1]
staticprivate

◆ Default_enriched_integration_scheme

template<unsigned DIM>
TBubbleEnrichedGauss< DIM, 3 > oomph::TBubbleEnrichedElement< DIM, 3 >::Default_enriched_integration_scheme
staticprivate

The documentation for this class was generated from the following files: