dune-fem  2.6-git
space/padaptivespace/capabilities.hh
Go to the documentation of this file.
1 #ifndef DUNE_FEM_SPACE_PADAPTIVESPACE_CAPABILITIES_HH
2 #define DUNE_FEM_SPACE_PADAPTIVESPACE_CAPABILITIES_HH
3 
7 
8 namespace Dune
9 {
10 
11  namespace Fem
12  {
13 
14  namespace Capabilities
15  {
16 
17  // Dune::Fem::Capabilities for PAdaptiveDGSpace
18  // --------------------------------------------
19 
20  template< class FunctionSpace, class GridPart, int polOrder, template< class > class Storage >
21  struct hasFixedPolynomialOrder< PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage > >
22  {
23  static const bool v = false;
24  };
25 
26 
27  template< class FunctionSpace, class GridPart, int polOrder, template< class > class Storage >
28  struct hasStaticPolynomialOrder< PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage > >
29  {
30  static const bool v = true;
31  static const int order = polOrder;
32  };
33 
34 
35  template< class FunctionSpace, class GridPart, int polOrder, template< class > class Storage >
36  struct isContinuous< PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage > >
37  {
38  static const bool v = false;
39  };
40 
41 
42  template< class FunctionSpace, class GridPart, int polOrder, template< class > class Storage >
43  struct isLocalized< PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage > >
44  {
45  static const bool v = true;
46  };
47 
48 
49  template< class FunctionSpace, class GridPart, int polOrder, template< class > class Storage >
50  struct isAdaptive< PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage > >
51  {
52  static const bool v = true;
53  };
54 
55 
56  template< class FunctionSpace, class GridPart, int polOrder, template< class > class Storage >
57  struct threadSafe< PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage > >
58  {
59  static const bool v = false;
60  };
61 
62 
63  template< class FunctionSpace, class GridPart, int polOrder, template< class > class Storage >
64  struct viewThreadSafe< PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage > >
65  {
66  static const bool v = true;
67  };
68 
69 
70 
71  // Dune::Fem::Capabilities for PAdaptiveLagrangeSpace
72  // --------------------------------------------------
73 
74  template< class FunctionSpace, class GridPart, int polOrder, template< class > class Storage >
75  struct hasFixedPolynomialOrder< PAdaptiveLagrangeSpace< FunctionSpace, GridPart, polOrder, Storage > >
76  {
77  static const bool v = false;
78  };
79 
80 
81  template< class FunctionSpace, class GridPart, int polOrder, template< class > class Storage >
82  struct hasStaticPolynomialOrder< PAdaptiveLagrangeSpace< FunctionSpace, GridPart, polOrder, Storage > >
83  {
84  static const bool v = true;
85  static const int order = polOrder;
86  };
87 
88 
89  template< class FunctionSpace, class GridPart, int polOrder, template< class > class Storage >
90  struct isContinuous< PAdaptiveLagrangeSpace< FunctionSpace, GridPart, polOrder, Storage > >
91  {
92  static const bool v = false;
93  };
94 
95 
96  template< class FunctionSpace, class GridPart, int polOrder, template< class > class Storage >
97  struct isLocalized< PAdaptiveLagrangeSpace< FunctionSpace, GridPart, polOrder, Storage > >
98  {
99  static const bool v = true;
100  };
101 
102 
103  template< class FunctionSpace, class GridPart, int polOrder, template< class > class Storage >
104  struct isAdaptive< PAdaptiveLagrangeSpace< FunctionSpace, GridPart, polOrder, Storage > >
105  {
106  static const bool v = true;
107  };
108 
109 
110  template< class FunctionSpace, class GridPart, int polOrder, template< class > class Storage >
111  struct threadSafe< PAdaptiveLagrangeSpace< FunctionSpace, GridPart, polOrder, Storage > >
112  {
113  static const bool v = false;
114  };
115 
116 
117  template< class FunctionSpace, class GridPart, int polOrder, template< class > class Storage >
118  struct viewThreadSafe< PAdaptiveLagrangeSpace< FunctionSpace, GridPart, polOrder, Storage > >
119  {
120  static const bool v = true;
121  };
122 
123  } // namespace Capabilities
124 
125  } // namespace Fem
126 
127 } // namespace Dune
128 
129 #endif // #ifndef DUNE_FEM_SPACE_PADAPTIVESPACE_CAPABILITIES_HH
Definition: bindguard.hh:11
specialize with true if polynomial order does not depend on the grid (part) entity
Definition: space/common/capabilities.hh:22
static const bool v
Definition: space/common/capabilities.hh:23
specialize with true if polynomial order fixed and compile time static
Definition: space/common/capabilities.hh:35
static const bool v
Definition: space/common/capabilities.hh:36
static const int order
Definition: space/common/capabilities.hh:37
specialize with true if space is always continuous
Definition: space/common/capabilities.hh:48
static const bool v
Definition: space/common/capabilities.hh:49
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:66
static const bool v
Definition: space/common/capabilities.hh:67
specialize with true if space can be used with AdaptiveDiscreteFunction
Definition: space/common/capabilities.hh:79
static const bool v
Definition: space/common/capabilities.hh:80
specialize with true if the space implementation is thread safe
Definition: space/common/capabilities.hh:92
static const bool v
Definition: space/common/capabilities.hh:93
specialize with true if the space implementation is thread safe, while it is not modified
Definition: space/common/capabilities.hh:106
static const bool v
Definition: space/common/capabilities.hh:107
A vector valued function space.
Definition: functionspace.hh:60
adaptive DG discrete function space
Definition: space/padaptivespace/discontinuousgalerkin.hh:76
Lagrange discrete function space.
Definition: space/padaptivespace/lagrange.hh:118