ug4
ug::FlexLagrangeLSFS< ReferenceQuadrilateral > Class Reference

#include <lagrange.h>

+ Inheritance diagram for ug::FlexLagrangeLSFS< ReferenceQuadrilateral >:

Public Member Functions

void check_index (size_t i) const
 checks in debug mode that index is valid More...
 
void check_multi_index (const MathVector< dim, int > &ind) const
 checks in debug mode that multi-index is valid More...
 
bool continuous () const
 returns if space constructs continuous functions More...
 
 FlexLagrangeLSFS ()
 default Constructor More...
 
 FlexLagrangeLSFS (size_t order)
 Constructor. More...
 
void grad (grad_type &g, const MathVector< dim, int > ind, const MathVector< dim > &x) const
 evaluates the gradient More...
 
void grad (grad_type &g, const size_t i, const MathVector< dim > &x) const
 evaluates the gradient of the shape function More...
 
size_t index (const MathVector< dim, int > &ind) const
 return the index for a multi_index More...
 
size_t mapped_index (const MathVector< dim, int > &ind) const
 return the index for a multi_index More...
 
MathVector< dim, int > mapped_multi_index (size_t i) const
 return the multi_index for an index More...
 
const MathVector< dim, int > & multi_index (size_t i) const
 return Multi index for index i More...
 
size_t num_sh () const
 
bool position (size_t i, MathVector< dim > &pos) const
 local position of DoF i More...
 
void set_order (size_t order)
 sets the order More...
 
number shape (const MathVector< dim, int > &ind, const MathVector< dim > &x) const
 shape value for a Multi Index More...
 
number shape (const size_t i, const MathVector< dim > &x) const
 evaluates the shape function More...
 
- Public Member Functions inherited from ug::LagrangeLDS< ReferenceQuadrilateral >
bool exact_position_available () const
 returns if the local dof position are exact More...
 
 LagrangeLDS (size_t order=1)
 constructor More...
 
const LocalDoFlocal_dof (size_t dof) const
 returns the dof storage More...
 
size_t num_dof () const
 returns the total number of DoFs on the finite element More...
 
size_t num_dof (ReferenceObjectID roid) const
 returns the number of DoFs on a sub-geometric object type More...
 
ReferenceObjectID roid () const
 returns the type of reference element More...
 
void set_order (size_t order)
 sets the order More...
 
- Public Member Functions inherited from ug::LocalDoFSet
int dim () const
 returns the reference dimension More...
 
size_t num_dof (int d, size_t id) const
 returns the number of DoFs on a sub-geometric object of dim and id More...
 
bool operator!= (const LocalDoFSet &v) const
 inequality check More...
 
bool operator== (const LocalDoFSet &v) const
 equality check More...
 
virtual ~LocalDoFSet ()
 virtual destructor More...
 
size_t num_dof () const
 
- Public Member Functions inherited from ug::BaseLSFS< FlexLagrangeLSFS< ReferenceQuadrilateral >, 2 >
void grad (grad_type &g, size_t i, const MathVector< dim > &x) const
 evaluates the gradient of the shape function More...
 
void grads (grad_type *vGrad, const MathVector< dim > &x) const
 returns all gradients evaluated at a point More...
 
void grads (std::vector< grad_type > &vGrad, const MathVector< dim > &x) const
 returns all gradients evaluated at a point More...
 
void grads (std::vector< std::vector< grad_type > > &vvGrad, const std::vector< MathVector< dim > > &vLocPos) const
 returns all gradients evaluated at a point More...
 
void shape (shape_type &sh, size_t i, const MathVector< dim > &x) const
 evaluates the shape function More...
 
shape_type shape (size_t i, const MathVector< dim > &x) const
 evaluates the shape function More...
 
void shapes (shape_type *vShape, const MathVector< dim > &x) const
 returns all shape functions evaluated at a point More...
 
void shapes (std::vector< shape_type > &vShape, const MathVector< dim > &x) const
 returns all shape functions evaluated at a point More...
 
void shapes (std::vector< std::vector< shape_type > > &vvShape, const std::vector< MathVector< dim > > &vLocPos) const
 returns all shape functions evaluated at a point More...
 

Static Public Attributes

static const int dim = ReferenceQuadrilateral::dim
 Dimension, where shape functions are defined. More...
 
- Static Public Attributes inherited from ug::BaseLSFS< FlexLagrangeLSFS< ReferenceQuadrilateral >, 2 >
static const int dim
 dimension of reference element More...
 

Private Attributes

std::vector< Polynomial1Dm_vDPolynom
 Derivative of Shape Polynomial. More...
 
std::vector< MathVector< dim, int > > m_vMultiIndex
 
std::vector< Polynomial1Dm_vPolynom
 Shape Polynomials. More...
 
size_t nsh
 Number of shape functions. More...
 
size_t p
 order More...
 

Additional Inherited Members

- Public Types inherited from ug::BaseLSFS< FlexLagrangeLSFS< ReferenceQuadrilateral >, 2 >
typedef MathVector< TDim > grad_type
 Gradient type. More...
 
typedef FlexLagrangeLSFS< ReferenceQuadrilateralImplType
 type of implementation More...
 
typedef number shape_type
 Shape type. More...
 
- Protected Member Functions inherited from ug::BaseLSFS< FlexLagrangeLSFS< ReferenceQuadrilateral >, 2 >
ImplTypegetImpl ()
 access to implementation More...
 
const ImplTypegetImpl () const
 const access to implementation More...
 
- Protected Attributes inherited from ug::LagrangeLDS< ReferenceQuadrilateral >
std::vector< LocalDoFm_vLocalDoF
 association to geom obj More...
 
size_t p
 order More...
 

Constructor & Destructor Documentation

◆ FlexLagrangeLSFS() [1/2]

default Constructor

◆ FlexLagrangeLSFS() [2/2]

Constructor.

Member Function Documentation

◆ check_index()

void ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::check_index ( size_t  i) const
inline

checks in debug mode that index is valid

References UG_ASSERT.

◆ check_multi_index()

void ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::check_multi_index ( const MathVector< dim, int > &  ind) const
inline

checks in debug mode that multi-index is valid

References p, and UG_ASSERT.

◆ continuous()

bool ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::continuous ( ) const
inline

returns if space constructs continuous functions

◆ grad() [1/2]

void ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::grad ( grad_type g,
const MathVector< dim, int >  ind,
const MathVector< dim > &  x 
) const
inline

evaluates the gradient

References dim.

◆ grad() [2/2]

void ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::grad ( grad_type g,
const size_t  i,
const MathVector< dim > &  x 
) const
inline

evaluates the gradient of the shape function

This function returns the gradient of Shape Function i at an element-local evaluation point.

Parameters
[in]inumber of DoF
[in]xPosition on reference element (evaluation point)
Returns
gradient at point

◆ index()

size_t ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::index ( const MathVector< dim, int > &  ind) const
inline

return the index for a multi_index

References UG_THROW.

Referenced by ug::ComputeMultiIndicesOfSubElement< 2 >().

◆ mapped_index()

size_t ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::mapped_index ( const MathVector< dim, int > &  ind) const
inline

return the index for a multi_index

References p.

◆ mapped_multi_index()

MathVector<dim,int> ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::mapped_multi_index ( size_t  i) const
inline

return the multi_index for an index

References p.

◆ multi_index()

const MathVector<dim,int>& ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::multi_index ( size_t  i) const
inline

return Multi index for index i

◆ num_sh()

size_t ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::num_sh ( ) const
inlinevirtual

returns the total number of dofs on the finite element

Reimplemented from ug::LocalDoFSet.

◆ position()

bool ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::position ( size_t  i,
MathVector< dim > &  pos 
) const
inline

local position of DoF i

This function returns the local position of a DoF if possible.

Parameters
[in]inumber of DoF
[out]posPosition of DoF
Return values
trueif position exists
falseif no meaningful position available

References dim, p, and ug::EquidistantLagrange1D::position().

◆ set_order()

◆ shape() [1/2]

number ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::shape ( const MathVector< dim, int > &  ind,
const MathVector< dim > &  x 
) const
inline

shape value for a Multi Index

◆ shape() [2/2]

number ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::shape ( const size_t  i,
const MathVector< dim > &  x 
) const
inline

evaluates the shape function

This function returns the value of Shape Function i at an element-local evaluation point.

Parameters
[in]inumber of DoF
[in]xPosition on reference element (evaluation point)
Returns
shape function value at point

Member Data Documentation

◆ dim

const int ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::dim = ReferenceQuadrilateral::dim
static

Dimension, where shape functions are defined.

◆ m_vDPolynom

std::vector<Polynomial1D> ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::m_vDPolynom
private

Derivative of Shape Polynomial.

◆ m_vMultiIndex

std::vector<MathVector<dim,int> > ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::m_vMultiIndex
private

◆ m_vPolynom

std::vector<Polynomial1D> ug::FlexLagrangeLSFS< ReferenceQuadrilateral >::m_vPolynom
private

Shape Polynomials.

◆ nsh

Number of shape functions.

◆ p

order


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