1#ifndef DUNE_FEM_SPACE_LOCALFINITEELEMENT_CAPABILITIES_HH
2#define DUNE_FEM_SPACE_LOCALFINITEELEMENT_CAPABILITIES_HH
21 template<
class LFEMap,
class FunctionSpace,
class Storage = CachingStorage >
22 class LocalFiniteElementSpace;
24 template<
class LFEMap,
class FunctionSpace,
class Storage = CachingStorage >
25 class DiscontinuousLocalFiniteElementSpace;
27 template<
class FunctionSpace,
class GridPart,
unsigned int order,
28 template<
class,
unsigned int >
class PointSet>
32 namespace Capabilities
35 template<
class LFEMap,
class FunctionSpace,
class Storage >
38 static const bool v =
false;
41 template<
class LFEMap,
class FunctionSpace,
class Storage >
44 static const bool v =
false;
48 template<
class LFEMap,
class FunctionSpace,
class Storage >
51 static const bool v =
false;
55 template<
class LFEMap,
class FunctionSpace,
class Storage >
58 static const bool v =
false;
63 template<
class LFEMap,
class FunctionSpace,
class Storage >
66 static const bool v =
false;
69 template<
class LFEMap,
class FunctionSpace,
class Storage >
72 static const bool v =
false;
76 template<
class LFEMap,
class FunctionSpace,
class Storage >
79 static const bool v =
true;
82 template<
class LFEMap,
class FunctionSpace,
class Storage >
85 static const bool v =
true;
89 template<
class LFEMap,
class FunctionSpace,
class Storage >
92 static const bool v =
false;
95 template<
class LFEMap,
class FunctionSpace,
class Storage >
98 static const bool v =
false;
102 template<
class LFEMap,
class FunctionSpace,
class Storage >
105 static const bool v =
false;
108 template<
class LFEMap,
class FunctionSpace,
class Storage >
111 static const bool v =
false;
115 template<
class LFEMap,
class FunctionSpace,
class Storage >
118 static const bool v =
false;
121 template<
class LFEMap,
class FunctionSpace,
class Storage >
124 static const bool v =
false;
128#if HAVE_DUNE_LOCALFUNCTIONS
132 struct DefaultQuadratureGaussLobatto
134 template <
class F,
int d>
137 static int volumeOrder (
const int k ) {
return (k > 0) ? (2 * k - 1) : 0; }
138 static int surfaceOrder(
const int k ) {
return (k > 0) ? (2 * k - 1) : 0; }
141 struct DefaultQuadratureGaussLegendre
143 template <
class F,
int d>
146 static int volumeOrder (
const int k ) {
return 2 * k + 1; }
147 static int surfaceOrder(
const int k ) {
return 2 * k + 1; }
151 template<
class LFEMap >
157 template <
class FunctionSpace,
class Gr
idPart,
unsigned int order >
158 struct DefaultQuadratureSpec<
Dune::Fem::FixedOrderLagrangeFiniteElementMap< FunctionSpace, GridPart, order, Dune::GaussLobattoPointSet > >
159 :
public DefaultQuadratureGaussLobatto {};
162 template <
class FunctionSpace,
class Gr
idPart,
unsigned int order >
163 struct DefaultQuadratureSpec<
Dune::Fem::FixedOrderLagrangeFiniteElementMap< FunctionSpace, GridPart, order, Dune::GaussLegendrePointSet > >
164 :
public DefaultQuadratureGaussLegendre {};
168 template<
class LFEMap,
class FunctionSpace,
class Storage >
169 struct DefaultQuadrature< LocalFiniteElementSpace< LFEMap, FunctionSpace, Storage > >
170 :
public detail::DefaultQuadratureSpec< LFEMap >
174 template<
class LFEMap,
class FunctionSpace,
class Storage >
175 struct DefaultQuadrature< DiscontinuousLocalFiniteElementSpace< LFEMap, FunctionSpace, Storage > >
176 :
public detail::DefaultQuadratureSpec< LFEMap >
Definition: bindguard.hh:11
Definition: defaultquadratures.hh:24
specialize with true if polynomial order does not depend on the grid (part) entity
Definition: space/common/capabilities.hh:24
static const bool v
Definition: space/common/capabilities.hh:25
specialize with true if polynomial order fixed and compile time static
Definition: space/common/capabilities.hh:37
static const bool v
Definition: space/common/capabilities.hh:38
static const int order
Definition: space/common/capabilities.hh:39
specialize with true if space is always continuous
Definition: space/common/capabilities.hh:50
static const bool v
Definition: space/common/capabilities.hh:51
specialize with true if the space is localized, * i.e., the basis function set is based on a shape fu...
Definition: space/common/capabilities.hh:68
static const bool v
Definition: space/common/capabilities.hh:69
specialize with true if space can be used with AdaptiveDiscreteFunction
Definition: space/common/capabilities.hh:81
static const bool v
Definition: space/common/capabilities.hh:82
specialize with true if the space implementation is thread safe
Definition: space/common/capabilities.hh:94
static const bool v
Definition: space/common/capabilities.hh:95
specialize with true if the space implementation is thread safe, while it is not modified
Definition: space/common/capabilities.hh:108
static const bool v
Definition: space/common/capabilities.hh:109
specialize when quadrature other than the standard quadrature should be used for volume and surface i...
Definition: space/common/capabilities.hh:132
A vector valued function space.
Definition: functionspace.hh:60
Rannacher-Turek Space.
Definition: localfiniteelement/space.hh:115
Rannacher-Turek Space.
Definition: dgspace.hh:130
Definition: space/localfiniteelement/capabilities.hh:29