dune-fem 2.8.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits > Class Template Reference

More...

#include <dune/fem/quadrature/cachingpointlist.hh>

Inheritance diagram for Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >:
Inheritance graph

Public Types

typedef Base::GridPartType GridPartType
 
typedef Base::CoordinateType CoordinateType
 The type of the coordinates in the codim-0 reference element.
 
typedef Base::QuadratureKeyType QuadratureKeyType
 type of quadrature identifier on user side (default is the order of quadrature)
 
typedef QuadraturePointWrapper< ThisQuadraturePointWrapperType
 the type of the quadrature point
 
typedef QuadraturePointIterator< ThisIteratorType
 type of iterator
 
enum  Side { INSIDE , OUTSIDE }
 inside and outside flags More...
 
typedef GridPartType::ctype RealType
 coordinate type
 
typedef IntegrationTraits::IntegrationPointListType IntegrationPointListType
 type of the integration point list
 
typedef IntegrationPointListType::CoordinateType LocalCoordinateType
 

Public Member Functions

 CachingPointList (const GeometryType &geometry, const QuadratureKeyType &quadKey)
 
const QuadraturePointWrapperType operator[] (const size_t i) const
 
IteratorType begin () const noexcept
 
IteratorType end () const noexcept
 
const CoordinateTypepoint (const size_t i) const
 obtain coordinates of i-th integration point
 
size_t cachingPoint (const size_t quadraturePoint) const
 map quadrature points to caching points
 
size_t interpolationPoint (const size_t quadraturePoint) const
 map quadrature points to interpolation points
 
bool isInterpolationQuadrature (const size_t numShapeFunctions) const
 check if quadrature is interpolation quadrature
 
bool twisted () const
 returns true if cachingPoint is not the identity mapping
 
int twistId () const
 returns the twistId, i.e. [0,...,7]
 
const LocalCoordinateTypelocalPoint (size_t i) const
 obtain local coordinates of i-th integration point
 
size_t nop () const
 obtain the number of integration points
 
size_t id () const
 obtain the identifier of the integration point list
 
int order () const
 obtain order of the integration point list
 
GeometryType geometry () const
 
GeometryType type () const
 
GeometryType geometryType () const
 
GeometryType elementGeometry () const
 obtain GeometryType of the corresponding codim-0 the integration point list belongs to
 
size_t localCachingPoint (const size_t quadraturePoint) const
 convenience implementation for Dune::Fem::CachingInterface
 
int localFaceIndex () const
 
int nCachingPoints () const
 
int cachingPointStart () const
 

Static Public Attributes

static const int codimension = Base::codimension
 
static const int pointSetId
 id of point set, positive if interpolation point set, otherwise negative
 
static const int dimension = GridPartType::dimension
 dimension of the grid
 

Protected Member Functions

const IntegrationPointListTypequadImp () const
 obtain the actual implementation of the quadrature
 

Protected Attributes

IntegrationPointListType quad_
 

Detailed Description

template<class GridPartImp, class IntegrationTraits>
class Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >

Member Typedef Documentation

◆ CoordinateType

template<class GridPartImp , class IntegrationTraits >
typedef Base::CoordinateType Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::CoordinateType

The type of the coordinates in the codim-0 reference element.

◆ GridPartType

template<class GridPartImp , class IntegrationTraits >
typedef Base::GridPartType Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::GridPartType

◆ IntegrationPointListType

template<class GridPartImp , class IntegrationTraits >
typedef IntegrationTraits::IntegrationPointListType Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::IntegrationPointListType
inherited

type of the integration point list

◆ IteratorType

template<class GridPartImp , class IntegrationTraits >
typedef QuadraturePointIterator< This > Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::IteratorType

type of iterator

◆ LocalCoordinateType

template<class GridPartImp , class IntegrationTraits >
typedef IntegrationPointListType::CoordinateType Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::LocalCoordinateType
inherited

◆ QuadratureKeyType

template<class GridPartImp , class IntegrationTraits >
typedef Base::QuadratureKeyType Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::QuadratureKeyType

type of quadrature identifier on user side (default is the order of quadrature)

◆ QuadraturePointWrapperType

template<class GridPartImp , class IntegrationTraits >
typedef QuadraturePointWrapper< This > Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::QuadraturePointWrapperType

the type of the quadrature point

◆ RealType

template<class GridPartImp , class IntegrationTraits >
typedef GridPartType::ctype Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::RealType
inherited

coordinate type

Member Enumeration Documentation

◆ Side

template<class GridPartImp , class IntegrationTraits >
enum Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::Side
inherited

inside and outside flags

Enumerator
INSIDE 
OUTSIDE 

Constructor & Destructor Documentation

◆ CachingPointList()

template<class GridPartImp , class IntegrationTraits >
Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::CachingPointList ( const GeometryType &  geometry,
const QuadratureKeyType quadKey 
)
inline

Member Function Documentation

◆ begin()

template<class GridPartImp , class IntegrationTraits >
IteratorType Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::begin ( ) const
inlinenoexcept

◆ cachingPoint()

template<class GridPartImp , class IntegrationTraits >
size_t Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::cachingPoint ( const size_t  quadraturePoint) const
inline

map quadrature points to caching points

For codim-1 entites, the mapping consists of two stages:

  • Consider the twist to get the quadrature point number on the face of the (codim-0) reference element,
  • Map the twisted quadrature point number to the caching point number.
Parameters
[in]quadraturePointnumber of quadrature point to map to a caching point

◆ cachingPointStart()

template<class GridPartImp , class IntegrationTraits >
int Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::cachingPointStart ( ) const
inlineinherited

◆ elementGeometry()

template<class GridPartImp , class IntegrationTraits >
GeometryType Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::elementGeometry ( ) const
inlineinherited

obtain GeometryType of the corresponding codim-0 the integration point list belongs to

An element integration point list can return the coordinates of integration points with resepct to the codim-0 reference element and the reference element corresponding to the subentity the quadrature actually lives on. This method returns the geometry of the codim-0 entity.

Note
Calling this method yields a virtual function call, so do not call this method unnecessarily.
Returns
GeometryType for this integration point list

◆ end()

template<class GridPartImp , class IntegrationTraits >
IteratorType Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::end ( ) const
inlinenoexcept

◆ geometry()

template<class GridPartImp , class IntegrationTraits >
GeometryType Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::geometry ( ) const
inlineinherited

◆ geometryType()

template<class GridPartImp , class IntegrationTraits >
GeometryType Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::geometryType ( ) const
inlineinherited

◆ id()

template<class GridPartImp , class IntegrationTraits >
size_t Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::id ( ) const
inlineinherited

obtain the identifier of the integration point list

The identifier of an integration point list must be globally unique. Even integration point lists for different dimensions must have different identifiers.

Note
Quadratures are considered distinct if they differ in one of the following points: geometry type, order, dimension or implementation.
Returns
globally unique identifier of the integration point list

◆ interpolationPoint()

template<class GridPartImp , class IntegrationTraits >
size_t Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::interpolationPoint ( const size_t  quadraturePoint) const
inline

map quadrature points to interpolation points

Parameters
[in]quadraturePointnumber of quadrature point to map to an interpolation point

◆ isInterpolationQuadrature()

template<class GridPartImp , class IntegrationTraits >
bool Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::isInterpolationQuadrature ( const size_t  numShapeFunctions) const
inline

check if quadrature is interpolation quadrature

Parameters
[in]numShapeFunctionsnumber of shapeFunctions that has to match number of quadrature points or number of internal interpolation points

◆ localCachingPoint()

template<class GridPartImp , class IntegrationTraits >
size_t Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::localCachingPoint ( const size_t  quadraturePoint) const
inlineinherited

convenience implementation for Dune::Fem::CachingInterface

◆ localFaceIndex()

template<class GridPartImp , class IntegrationTraits >
int Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::localFaceIndex ( ) const
inlineinherited

◆ localPoint()

template<class GridPartImp , class IntegrationTraits >
const LocalCoordinateType & Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::localPoint ( size_t  i) const
inline

obtain local coordinates of i-th integration point

This method returns a reference to the local coordinates of the i-th integration point for 0 <= i < nop(). Here, local coordinates means coordinates with respect to the reference element of the subentity.

Parameters
[in]inumber of the integration point, 0 <= i < nop()
Returns
reference to i-th integration point

◆ nCachingPoints()

template<class GridPartImp , class IntegrationTraits >
int Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::nCachingPoints ( ) const
inlineinherited

◆ nop()

template<class GridPartImp , class IntegrationTraits >
size_t Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::nop ( ) const
inline

obtain the number of integration points

Returns
number of integration points within this list

◆ operator[]()

template<class GridPartImp , class IntegrationTraits >
const QuadraturePointWrapperType Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::operator[] ( const size_t  i) const
inline

◆ order()

template<class GridPartImp , class IntegrationTraits >
int Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::order ( ) const
inlineinherited

obtain order of the integration point list

The order of a quadrature is the maximal polynomial degree that is guaranteed to be integrated exactly by the quadrature.

In case of an integration point list, the definition of this value is left to the implementor.

Note
Calling this method yields a virtual function call, so do not call this method unnecessarily.
Returns
the order of the integration point list

◆ point()

template<class GridPartImp , class IntegrationTraits >
const CoordinateType & Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::point ( const size_t  i) const
inline

obtain coordinates of i-th integration point

This method returns a reference to the coordinates of the i-th integration point for 0 <= i < nop(). The integration point is given in local coordinates, i.e., coordinates with respect to the reference element.

Parameters
[in]inumber of the integration point, 0 <= i < nop()
Returns
reference to i-th integration point

◆ quadImp()

template<class GridPartImp , class IntegrationTraits >
const IntegrationPointListType & Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::quadImp ( ) const
inlineprotected

obtain the actual implementation of the quadrature

Note
This method may only be used in derived classes.
Returns
a reference to the actual implementation of the quadrature

◆ twisted()

template<class GridPartImp , class IntegrationTraits >
bool Dune::Fem::CachingInterface::twisted ( ) const
inline

returns true if cachingPoint is not the identity mapping

◆ twistId()

template<class GridPartImp , class IntegrationTraits >
int Dune::Fem::CachingInterface::twistId ( ) const
inline

returns the twistId, i.e. [0,...,7]

◆ type()

template<class GridPartImp , class IntegrationTraits >
GeometryType Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::type ( ) const
inlineinherited

Member Data Documentation

◆ codimension

template<class GridPartImp , class IntegrationTraits >
const int Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::codimension = Base::codimension
static

◆ dimension

template<class GridPartImp , class IntegrationTraits >
const int Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::dimension = GridPartType::dimension
staticinherited

dimension of the grid

◆ pointSetId

template<class GridPartImp , class IntegrationTraits >
const int Dune::Fem::CachingPointList< GridPartImp, 0, IntegrationTraits >::pointSetId
static
Initial value:
typename IntegrationTraits::IntegrationPointListType::Traits > :: value

id of point set, positive if interpolation point set, otherwise negative

◆ quad_

template<class GridPartImp , class IntegrationTraits >
IntegrationPointListType Dune::Fem::ElementPointListBase< GridPartImp, 0, IntegrationTraits >::quad_
protectedinherited

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