1#ifndef DUNE_FEM_CORNERPOINTSET_HH
2#define DUNE_FEM_CORNERPOINTSET_HH
4#include <dune/geometry/referenceelements.hh>
17 template<
class Gr
idPart >
20 template<
class ct, Dune::GeometryType::Id geometryId >
21 class CornerPointList;
28 template<
class Gr
idPart >
31 template<
class ct,
int dim >
32 class PointListTraits;
45 template<
class Gr
idPart >
46 template<
class ct,
int dim >
49 static const int pdim = (dim > 0 ? dim : 1);
54 static constexpr Dune::GeometryType::Id simplexId = Dune::GeometryTypes::simplex(dim);
55 static constexpr Dune::GeometryType::Id cubeId = Dune::GeometryTypes::cube(dim);
56 static constexpr Dune::GeometryType::Id prismId = Dune::GeometryTypes::prism ;
57 static constexpr Dune::GeometryType::Id pyramidId = Dune::GeometryTypes::pyramid;
64 typedef SimplexQuadratureType PointQuadratureType;
65 typedef SimplexQuadratureType LineQuadratureType;
67 typedef int QuadratureKeyType ;
75 template<
class Gr
idPart >
88 CornerPointSet (
const typename GridPart::template Codim< 0 >::EntityType &entity )
99 template<
class ct, Dune::GeometryType::Id geometryId >
115 GeometryType
geometryType ()
const {
return GeometryType( geometryId ); }
129 template<
class ct, Dune::GeometryType::Id geometryId >
137 template<
class ct, Dune::GeometryType::Id geometryId >
146 template<
class ct, Dune::GeometryType::Id geometryId >
149 static constexpr GeometryType gt( geometryId );
150 const auto &refElement = Dune::ReferenceElements< ct, gt.dim() >::general( gt );
151 const unsigned int size = refElement.size( gt.dim() );
152 for(
unsigned int i = 0; i < size; ++i )
153 addIntegrationPoint( refElement.position( i, gt.dim() ) );
Definition: bindguard.hh:11
integration point list supporting base function caching
Definition: cachingpointlist.hh:103
Definition: cornerpointset.hh:78
CornerPointSet(const typename GridPart::template Codim< 0 >::EntityType &entity)
Definition: cornerpointset.hh:88
CornerPointSet(const GeometryType &type)
Definition: cornerpointset.hh:82
Definition: cornerpointset.hh:102
int order() const
obtain order of the integration point list
Definition: cornerpointset.hh:111
GeometryType geometryType() const
obtain GeometryType for this integration point list
Definition: cornerpointset.hh:115
CornerPointList(const size_t id)
Definition: cornerpointset.hh:130
static unsigned int maxOrder()
Definition: cornerpointset.hh:113
BaseType::CoordinateType CoordinateType
Definition: cornerpointset.hh:106
Definition: cornerpointset.hh:30
IntegrationPointListType::CoordinateType CoordinateType
Definition: cornerpointset.hh:37
IntegrationPointList< typename GridPart::ctype, GridPart::dimension, PointListTraits > IntegrationPointListType
Definition: cornerpointset.hh:36
actual interface class for integration point lists
Definition: quadrature.hh:161
IntegrationPointListType::CoordinateType CoordinateType
type of coordinate
Definition: quadrature.hh:180
void addIntegrationPoint(const CoordinateType &point)
Adds an integration point to the list.
Definition: quadratureimp.hh:169
FieldVector< FieldType, dim > CoordinateType
type of local coordinates
Definition: quadratureimp.hh:46