ug4
ug::FlexLagrangeLSFS< ReferenceEdge > Class Reference

specialization for Edges More...

#include <lagrange.h>

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

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, 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 Multi index for index i 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...
 
shape_type shape (size_t i, const MathVector< dim > &x) const
 evaluates the shape function More...
 
- Public Member Functions inherited from ug::LagrangeLDS< ReferenceEdge >
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< ReferenceEdge >, 1 >
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 = ReferenceEdge::dim
 Dimension, where shape functions are defined. More...
 
- Static Public Attributes inherited from ug::BaseLSFS< FlexLagrangeLSFS< ReferenceEdge >, 1 >
static const int dim
 dimension of reference element More...
 

Protected 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...
 
- Protected Attributes inherited from ug::LagrangeLDS< ReferenceEdge >
std::vector< LocalDoFm_vLocalDoF
 association to geom obj More...
 
size_t p
 order More...
 

Additional Inherited Members

- Public Types inherited from ug::BaseLSFS< FlexLagrangeLSFS< ReferenceEdge >, 1 >
typedef MathVector< TDim > grad_type
 Gradient type. More...
 
typedef FlexLagrangeLSFS< ReferenceEdgeImplType
 type of implementation More...
 
typedef number shape_type
 Shape type. More...
 
- Protected Member Functions inherited from ug::BaseLSFS< FlexLagrangeLSFS< ReferenceEdge >, 1 >
ImplTypegetImpl ()
 access to implementation More...
 
const ImplTypegetImpl () const
 const access to implementation More...
 

Detailed Description

specialization for Edges

Lagrange shape function of any order for the Reference Edge

Constructor & Destructor Documentation

◆ FlexLagrangeLSFS() [1/2]

default Constructor

◆ FlexLagrangeLSFS() [2/2]

ug::FlexLagrangeLSFS< ReferenceEdge >::FlexLagrangeLSFS ( size_t  order)
inline

Constructor.

Member Function Documentation

◆ check_index()

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

checks in debug mode that index is valid

References UG_ASSERT.

◆ check_multi_index()

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

checks in debug mode that multi-index is valid

References UG_ASSERT.

◆ continuous()

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

returns if space constructs continuous functions

◆ grad()

void ug::FlexLagrangeLSFS< ReferenceEdge >::grad ( grad_type g,
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< ReferenceEdge >::index ( const MathVector< dim, int > &  ind) const
inline

return the index for a multi_index

References UG_THROW.

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

◆ mapped_index()

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

return the index for a multi_index

◆ mapped_multi_index()

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

return Multi index for index i

◆ multi_index()

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

return Multi index for index i

◆ num_sh()

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

returns the total number of dofs on the finite element

Reimplemented from ug::LocalDoFSet.

◆ position()

bool ug::FlexLagrangeLSFS< ReferenceEdge >::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 p, and ug::EquidistantLagrange1D::position().

◆ set_order()

◆ shape()

shape_type ug::FlexLagrangeLSFS< ReferenceEdge >::shape ( 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< ReferenceEdge >::dim = ReferenceEdge::dim
static

Dimension, where shape functions are defined.

◆ m_vDPolynom

std::vector<Polynomial1D> ug::FlexLagrangeLSFS< ReferenceEdge >::m_vDPolynom
protected

Derivative of Shape Polynomial.

◆ m_vMultiIndex

std::vector<MathVector<dim,int> > ug::FlexLagrangeLSFS< ReferenceEdge >::m_vMultiIndex
protected

◆ m_vPolynom

std::vector<Polynomial1D> ug::FlexLagrangeLSFS< ReferenceEdge >::m_vPolynom
protected

Shape Polynomials.

◆ nsh

size_t ug::FlexLagrangeLSFS< ReferenceEdge >::nsh
protected

Number of shape functions.

◆ p

size_t ug::FlexLagrangeLSFS< ReferenceEdge >::p
protected

order


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