dune-fem 2.8.0
Loading...
Searching...
No Matches
padaptivespace/discontinuousgalerkin.hh
Go to the documentation of this file.
1#ifndef DUNE_FEM_SPACE_PADAPTIVE_DISCONTINUOUSGALERKIN_HH
2#define DUNE_FEM_SPACE_PADAPTIVE_DISCONTINUOUSGALERKIN_HH
3
7
8#include "adaptmanager.hh"
9#include "declaration.hh"
10#include "generic.hh"
11#include "lagrange.hh"
12#include "mapper.hh"
13#include "restrictprolong.hh"
14
16
17namespace Dune
18{
19
20 namespace Fem
21 {
22
39 // PAdaptiveDGSpaceTraits
40 // ----------------------
41
42 template< class FunctionSpace, class GridPart, int polOrder, class Storage >
44 : public PAdaptiveLagrangeSpaceTraits< FunctionSpace, GridPart, polOrder, Storage >
45 {
47
48 static const bool continuousSpace = false ;
50
52
53 template< class DiscreteFunction,
54 class Operation = DFCommunicationOperation :: Copy >
56 {
58 typedef Operation OperationType;
59 };
60 };
61
62
63
64 // PAdaptiveDGSpace
65 // ----------------
66
73 template< class FunctionSpace, class GridPart, int polOrder, class Storage = CachingStorage >
75 : public GenericDiscreteFunctionSpace< PAdaptiveDGSpaceTraits< FunctionSpace, GridPart, polOrder, Storage > >
76 {
79
80 public:
82
83 typedef typename BaseType::Traits Traits;
84
88
92
95
96 public:
102
103 // default communication interface
104 static const InterfaceType defaultInterface = InteriorBorder_All_Interface;
105 // default communication direction
106 static const CommunicationDirection defaultDirection = ForwardCommunication;
107
116 const int order,
117 const InterfaceType commInterface = defaultInterface,
118 const CommunicationDirection commDirection = defaultDirection )
119 : BaseType( gridPart, order, commInterface, commDirection )
120 {}
121
129 const InterfaceType commInterface = defaultInterface,
130 const CommunicationDirection commDirection = defaultDirection )
131 : BaseType( gridPart, polOrder, commInterface, commDirection )
132 {}
133
134 // copy constructor needed for p-adaption
136 : BaseType( other )
137 {}
138
140 inline bool continuous (const IntersectionType &intersection) const
141 {
142 return false;
143 }
144
146 inline const CompiledLocalKeyType &lagrangePointSet( const GeometryType &type, const int order = BaseType::polynomialOrder ) const
147 {
148 return compiledLocalKey( type, order );
149 }
150
152 {
153 return InterpolationType( *this );
154 }
155
156 [[deprecated]]
158 {
159 return localInterpolation( entity );
160 }
161
163 {
164 return InterpolationImplType( basisFunctionSet( entity ) );
165 }
166
167 };
168
169 } // namespace Fem
170
171} // Dune namespace
172
173#endif // #ifndef DUNE_FEM_SPACE_PADAPTIVE_DISCONTINUOUSGALERKIN_HH
Definition: bindguard.hh:11
Definition: hybrid.hh:86
Default communication handler for discrete functions.
Definition: defaultcommhandler.hh:29
FunctionSpaceTraits Traits
type of traits class
Definition: discretefunctionspace.hh:187
GridPartType & gridPart()
get a reference to the associated grid partition
Definition: discretefunctionspace.hh:404
GridPartType & gridPart() const
Definition: discretefunctionspace.hh:745
Definition: common/localinterpolation.hh:74
Definition: discontinuousgalerkin/interpolation.hh:153
adaptive DG discrete function space
Definition: padaptivespace/discontinuousgalerkin.hh:76
ThisType PAdaptiveDGSpaceType
Definition: padaptivespace/discontinuousgalerkin.hh:81
BasisFunctionSetType basisFunctionSet(const EntityType &entity) const
get basis function set for given entity
Definition: padaptivespace/generic.hh:141
CompiledLocalKeyType LagrangePointSetType
Definition: padaptivespace/discontinuousgalerkin.hh:91
DiscontinuousGalerkinLocalL2Projection< GridPartType, BasisFunctionSetType > InterpolationImplType
Definition: padaptivespace/discontinuousgalerkin.hh:93
BaseType::GridPartType GridPartType
Definition: padaptivespace/discontinuousgalerkin.hh:85
PAdaptiveDGSpace(GridPartType &gridPart, const int order, const InterfaceType commInterface=defaultInterface, const CommunicationDirection commDirection=defaultDirection)
constructor
Definition: padaptivespace/discontinuousgalerkin.hh:115
const CompiledLocalKeyType & lagrangePointSet(const GeometryType &type, const int order=BaseType::polynomialOrder) const
Please doc me.
Definition: padaptivespace/discontinuousgalerkin.hh:146
BaseType::EntityType EntityType
Definition: padaptivespace/discontinuousgalerkin.hh:87
BaseType::IntersectionType IntersectionType
Definition: padaptivespace/discontinuousgalerkin.hh:86
static const CommunicationDirection defaultDirection
Definition: padaptivespace/discontinuousgalerkin.hh:106
LocalInterpolationWrapper< ThisType > InterpolationType
Definition: padaptivespace/discontinuousgalerkin.hh:94
BaseType::CompiledLocalKeyType CompiledLocalKeyType
Definition: padaptivespace/discontinuousgalerkin.hh:90
BaseType::BasisFunctionSetType BasisFunctionSetType
Definition: padaptivespace/discontinuousgalerkin.hh:89
InterpolationImplType interpolation(const EntityType &entity) const
Definition: padaptivespace/discontinuousgalerkin.hh:157
BaseType::Traits Traits
Definition: padaptivespace/discontinuousgalerkin.hh:83
InterpolationType interpolation() const
Definition: padaptivespace/discontinuousgalerkin.hh:151
static const InterfaceType defaultInterface
Definition: padaptivespace/discontinuousgalerkin.hh:104
InterpolationImplType localInterpolation(const EntityType &entity) const
Definition: padaptivespace/discontinuousgalerkin.hh:162
PAdaptiveDGSpace(const PAdaptiveDGSpace &other)
Definition: padaptivespace/discontinuousgalerkin.hh:135
const CompiledLocalKeyType & compiledLocalKey(const EntityType &entity) const
provide access to the compiled local keys for an entity
Definition: padaptivespace/generic.hh:208
bool continuous(const IntersectionType &intersection) const
returns true if the space contains only globally continuous functions
Definition: padaptivespace/discontinuousgalerkin.hh:140
PAdaptiveDGSpace(GridPartType &gridPart, const InterfaceType commInterface=defaultInterface, const CommunicationDirection commDirection=defaultDirection)
constructor
Definition: padaptivespace/discontinuousgalerkin.hh:128
Definition: padaptivespace/discontinuousgalerkin.hh:45
PAdaptiveDGMapper< GridPart, polOrder > BlockMapperType
Definition: padaptivespace/discontinuousgalerkin.hh:51
static const bool continuousSpace
Definition: padaptivespace/discontinuousgalerkin.hh:48
Hybrid::IndexRange< int, FunctionSpace::dimRange > LocalBlockIndices
Definition: padaptivespace/discontinuousgalerkin.hh:49
PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage > DiscreteFunctionSpaceType
Definition: padaptivespace/discontinuousgalerkin.hh:46
Definition: padaptivespace/discontinuousgalerkin.hh:56
DefaultCommunicationHandler< DiscreteFunction, Operation > Type
Definition: padaptivespace/discontinuousgalerkin.hh:57
Operation OperationType
Definition: padaptivespace/discontinuousgalerkin.hh:58
Please doc me.
Definition: padaptivespace/generic.hh:43
BlockMapperType & blockMapper() const
get a reference to the block mapper
Definition: padaptivespace/generic.hh:162
static const int polynomialOrder
maximal available polynomial order
Definition: padaptivespace/generic.hh:66
BasisFunctionSetType basisFunctionSet(const EntityType &entity) const
get basis function set for given entity
Definition: padaptivespace/generic.hh:141
bool continuous() const
returns true if the space contains only globally continuous functions
Definition: padaptivespace/generic.hh:147
BaseType::GridPartType GridPartType
Definition: padaptivespace/generic.hh:53
BaseType::IntersectionType IntersectionType
Definition: padaptivespace/generic.hh:58
BaseType::BasisFunctionSetType BasisFunctionSetType
Definition: padaptivespace/generic.hh:61
DFSpaceIdentifier type() const
return type identifier of discrete function space
Definition: padaptivespace/generic.hh:138
Traits::CompiledLocalKeyType CompiledLocalKeyType
Definition: padaptivespace/generic.hh:88
const CompiledLocalKeyType & compiledLocalKey(const EntityType &entity) const
provide access to the compiled local keys for an entity
Definition: padaptivespace/generic.hh:208
IteratorType::Entity EntityType
Definition: padaptivespace/generic.hh:57
int order() const
get global order of space
Definition: padaptivespace/generic.hh:150
Definition: padaptivespace/lagrange.hh:44
Definition: mapper.hh:121