ug4
|
virtual base class for local shape function sets More...
#include <local_shape_function_set.h>
Public Types | |
typedef TGrad | grad_type |
Gradient type. More... | |
typedef MathVector< dim > | position_type |
Domain position type. More... | |
typedef TShape | shape_type |
Shape type. More... | |
Public Member Functions | |
virtual bool | continuous () const =0 |
returns if space constructs continuous functions More... | |
virtual void | grad (grad_type &g, size_t i, const MathVector< dim > &x) const =0 |
evaluates the gradient of the shape function More... | |
virtual void | grads (std::vector< std::vector< grad_type > > &vvGrad, const std::vector< MathVector< dim > > &vLocPos) const =0 |
returns all gradients evaluated at a several points More... | |
virtual void | shape (shape_type &shape, size_t i, const MathVector< dim > &x) const =0 |
evaluates the shape function More... | |
virtual shape_type | shape (size_t i, const MathVector< dim > &x) const =0 |
evaluates the shape function More... | |
virtual void | shapes (std::vector< std::vector< shape_type > > &vvShape, const std::vector< MathVector< dim > > &vLocPos) const =0 |
returns all shape functions evaluated at several point More... | |
virtual | ~LocalShapeFunctionSet () |
virtual destructor More... | |
virtual void | shapes (shape_type *vShape, const MathVector< dim > &x) const =0 |
returns all shape functions evaluated at a point More... | |
virtual void | shapes (std::vector< shape_type > &vShape, const MathVector< dim > &x) const =0 |
returns all shape functions evaluated at a point More... | |
virtual void | grads (grad_type *vGrad, const MathVector< dim > &x) const =0 |
returns all gradients evaluated at a point More... | |
virtual void | grads (std::vector< grad_type > &vGrad, const MathVector< dim > &x) const =0 |
returns all gradients evaluated at a point More... | |
Public Member Functions inherited from ug::DimLocalDoFSet< TDim > | |
DimLocalDoFSet () | |
constructor More... | |
virtual bool | exact_position_available () const =0 |
returns if the local dof position are exact More... | |
bool | operator!= (const DimLocalDoFSet< TDim > &v) const |
inequality check More... | |
bool | operator== (const DimLocalDoFSet< TDim > &v) const |
equality check More... | |
virtual bool | position (size_t i, MathVector< TDim > &pos) const =0 |
local position of DoF i More... | |
Public Member Functions inherited from ug::LocalDoFSet | |
int | dim () const |
returns the reference dimension More... | |
virtual const LocalDoF & | local_dof (size_t dof) const =0 |
returns the DoFs storage 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... | |
virtual size_t | num_dof (ReferenceObjectID roid) const =0 |
returns the number of DoFs on a sub-geometric object type More... | |
bool | operator!= (const LocalDoFSet &v) const |
inequality check More... | |
bool | operator== (const LocalDoFSet &v) const |
equality check More... | |
virtual ReferenceObjectID | roid () const =0 |
returns the Reference object id of the corresponding grid object More... | |
virtual | ~LocalDoFSet () |
virtual destructor More... | |
size_t | num_dof () const |
virtual size_t | num_sh () const |
Static Public Attributes | |
static const int | dim = TDim |
Dimension, where shape functions are defined. More... | |
virtual base class for local shape function sets
This class is a base class for the supply of local shape functions on finite elements. The class provides evaluation of the shape functions and the gradients at arbitrary points in the interior of a reference element.
TDim | Reference Element Dimension |
TShape | type of Range of Shape Functions |
TGrad | type of gradient of shape functions |
typedef TGrad ug::LocalShapeFunctionSet< TDim, TShape, TGrad >::grad_type |
Gradient type.
typedef MathVector<dim> ug::LocalShapeFunctionSet< TDim, TShape, TGrad >::position_type |
Domain position type.
typedef TShape ug::LocalShapeFunctionSet< TDim, TShape, TGrad >::shape_type |
Shape type.
|
inlinevirtual |
virtual destructor
|
pure virtual |
returns if space constructs continuous functions
Implemented in ug::LocalShapeFunctionSetWrapper< TImpl >.
|
pure virtual |
evaluates the gradient of the shape function
This function returns the gradient of Shape Function i at an element-local evaluation point.
[in] | i | number of DoF |
[in] | x | Position on reference element (evaluation point) |
|
pure virtual |
returns all gradients evaluated at a point
This function returns the gradients of all Shape Functions at an element-local evaluation point in an array.
[out] | vGrad | Vector of gradients |
[in] | x | Position on reference element (evaluation point) |
Referenced by ug::ComputeGradientCrouzeixRaviart(), ug::ComputeGradientLagrange1(), ug::GridFunctionGradientData< TGridFunction >::eval_and_deriv(), ug::GradientDataExport< dim >::eval_and_deriv(), ug::GridFunctionGradientComponentData< TGridFunction >::eval_and_deriv(), ug::GradientEvaluator_LagrangeP1< TFunction >::evaluate(), ug::GlobalGridFunctionGradientData< TGridFunction >::evaluate(), ug::ExplicitGridFunctionGradient< TGridFunction >::evaluate(), ug::H1SemiDistIntegrand< TGridFunction >::evaluate(), ug::H1EnergyDistIntegrand< TGridFunction >::evaluate(), ug::H1DistIntegrand< TGridFunction >::evaluate(), ug::H1ErrorIntegrand< TGridFunction >::evaluate(), ug::H1SemiIntegrand< TGridFunction >::evaluate(), ug::H1EnergyIntegrand< TGridFunction >::evaluate(), ug::H1NormIntegrand< TGridFunction >::evaluate(), ug::ConvectionShapesLinearProfileSkewedUpwind< TDim >::update(), ug::HFV1Geometry< TElem, TWorldDim >::update(), ug::DimHFV1Geometry< TDim, TWorldDim >::update(), ug::DimFV1Geometry< TDim, TWorldDim >::update_boundary_faces(), ug::DimFV1IBGeometry< TDim, TWorldDim >::update_boundary_faces(), ug::DimCRFVGeometry< TDim, TWorldDim >::update_boundary_faces(), ug::DimFVGeometry< TWorldDim, TDim >::update_boundary_faces(), ug::DimFEGeometry< TWorldDim, TRefDim >::update_boundary_faces(), ug::DimCRFVGeometry< TDim, TWorldDim >::update_hanging(), ug::DimFV1Geometry< TDim, TWorldDim >::update_local(), ug::DimFEGeometry< TWorldDim, TRefDim >::update_local(), ug::DimFVGeometry< TWorldDim, TDim >::update_local(), ug::DimFV1IBGeometry< TDim, TWorldDim >::update_local_data(), and ug::DimCRFVGeometry< TDim, TWorldDim >::update_local_data().
|
pure virtual |
returns all gradients evaluated at a point
This function returns the gradients of all Shape Functions at an element-local evaluation point in an array.
[out] | vGrad | Vector of gradients |
[in] | x | Position on reference element (evaluation point) |
|
pure virtual |
|
pure virtual |
evaluates the shape function
This function returns the value of Shape Function i at an element-local evaluation point.
[out] | shape | the shape function |
[in] | i | number of DoF |
[in] | x | Position on reference element (evaluation point) |
|
pure virtual |
evaluates the shape function
This function returns the value of Shape Function i at an element-local evaluation point.
[in] | i | number of DoF |
[in] | x | Position on reference element (evaluation point) |
Implemented in ug::LocalShapeFunctionSetWrapper< TImpl >.
Referenced by ug::L2DistIntegrand< TGridFunction >::evaluate(), ug::H1SemiDistIntegrand< TGridFunction >::evaluate(), ug::H1EnergyDistIntegrand< TGridFunction >::evaluate(), ug::H1DistIntegrand< TGridFunction >::evaluate(), ug::L2ErrorIntegrand< TGridFunction >::evaluate(), ug::H1ErrorIntegrand< TGridFunction >::evaluate(), ug::L2Integrand< TGridFunction >::evaluate(), ug::H1SemiIntegrand< TGridFunction >::evaluate(), ug::H1EnergyIntegrand< TGridFunction >::evaluate(), ug::H1NormIntegrand< TGridFunction >::evaluate(), and ug::StdFuncIntegrand< TGridFunction >::evaluate().
|
pure virtual |
returns all shape functions evaluated at a point
This function returns the values of all Shape Functions at an element-local evaluation point in an array.
[out] | vShape | Vector of Shapes |
[in] | x | Position on reference element (evaluation point) |
Referenced by ug::DirichletBoundary< TDomain, TAlgebra >::adjust_error(), ug::GridFunctionVectorData< TGridFunction >::eval_and_deriv(), ug::VectorDataExport< dim >::eval_and_deriv(), ug::GridFunctionNumberData< TGridFunction >::eval_and_deriv(), ug::ValueDataExport< dim >::eval_and_deriv(), ug::ExplicitGridFunctionVector< TGridFunction >::evaluate(), ug::GlobalGridFunctionNumberData< TGridFunction, elemDim >::evaluate(), ug::ExplicitGridFunctionValue< TGridFunction >::evaluate(), ug::FV1ManifoldGeometry< TElem, TWorldDim >::FV1ManifoldGeometry(), ug::CrouzeixRaviartElemTransfer< TDomain >::prolongate(), ug::StdLagrangeElemTransfer< TDomain >::prolongate(), ug::ProlongateElemwise(), ug::RestrictElemwise(), ug::ShapesAtGlobalPositionElem(), ug::ShapesAtGlobalPositionVertex(), ug::ConvectionShapesLinearProfileSkewedUpwind< TDim >::update(), ug::HFV1ManifoldGeometry< TElem, TWorldDim >::update(), ug::HFV1Geometry< TElem, TWorldDim >::update(), ug::DimHFV1Geometry< TDim, TWorldDim >::update(), ug::DimFV1Geometry< TDim, TWorldDim >::update_boundary_faces(), ug::DimFV1IBGeometry< TDim, TWorldDim >::update_boundary_faces(), ug::DimCRFVGeometry< TDim, TWorldDim >::update_boundary_faces(), ug::DimFVGeometry< TWorldDim, TDim >::update_boundary_faces(), ug::DimFEGeometry< TWorldDim, TRefDim >::update_boundary_faces(), ug::DimCRFVGeometry< TDim, TWorldDim >::update_hanging(), ug::DimFV1Geometry< TDim, TWorldDim >::update_local(), ug::DimFEGeometry< TWorldDim, TRefDim >::update_local(), ug::DimFVGeometry< TWorldDim, TDim >::update_local(), ug::DimFV1IBGeometry< TDim, TWorldDim >::update_local_data(), ug::DimCRFVGeometry< TDim, TWorldDim >::update_local_data(), and ug::VTKOutput< TDim >::write_cell_values_elementwise().
|
pure virtual |
returns all shape functions evaluated at a point
This function returns the values of all Shape Functions at an element-local evaluation point in an array.
[out] | vShape | Vector of Shapes |
[in] | x | Position on reference element (evaluation point) |
|
pure virtual |
|
static |
Dimension, where shape functions are defined.