|
dune-fem 2.12-git
|
Loading...
Searching...
No Matches
localfiniteelement/space.hh
Go to the documentation of this file.
54 static constexpr bool isScalar = LocalFiniteElementType::Traits::LocalBasisType::Traits::dimRange==1;
68 // typedef Dune::Fem::IndexSetDofMapper< GridPartType, LagrangeLocalDofMapping< GridPartType > > BlockMapperType;
71 typedef LocalFunctionsShapeFunctionSet< typename LocalFiniteElementType::Traits::LocalBasisType, pointSetId > LocalFunctionsShapeFunctionSetType;
72 typedef SelectCachingShapeFunctionSet< LocalFunctionsShapeFunctionSetType, Storage > StoredShapeFunctionSetType;
83 static TransformedBasisFunctionSet< EntityType, ShapeFunctionSetType, typename LFEM::TransformationType > basisFunctionSet ( const LFEM & );
88 typedef decltype( basisFunctionSet( std::declval< const LFEMapType & >() ) ) BasisFunctionSetType;
114 : public DiscreteFunctionSpaceDefault< LocalFiniteElementSpaceTraits< LFEMap, FunctionSpace, Storage > >
117 typedef DiscreteFunctionSpaceDefault< LocalFiniteElementSpaceTraits< LFEMap, FunctionSpace, Storage > >
148 static LFEMapType *createObject ( std::pair< GridPartType *, KeyType > key ) { return new LFEMapType( *key.first, key.second ); }
152 typedef SingletonList< std::pair< GridPartType *, KeyType >, LFEMapType, LFEMapFactory > LFEMapProviderType;
155 typedef std::vector< std::unique_ptr< StoredShapeFunctionSetType > > StoredShapeFunctionSetVectorType;
159 static StoredShapeFunctionSetVectorType *createObject ( LFEMapType *lfeMap ) { return new StoredShapeFunctionSetVectorType( lfeMap->size() ); }
163 typedef SingletonList< LFEMapType *, StoredShapeFunctionSetVectorType, StoredShapeFunctionSetVectorFactory > StoredShapeFunctionSetVectorProviderType;
180 typedef SingletonList< LFEMapType *, BlockMapperType, BlockMapperSingletonFactory > BlockMapperProviderType;
184 typedef LocalFiniteElementInterpolation< ThisType, LocalInterpolationType, Traits::isScalar > InterpolationImplType;
191 template< class GridPart, std::enable_if_t< std::is_same< GridPart, GridPartType >::value &&std::is_same< KeyType, std::tuple<> >::value, int > = 0 >
197 storedShapeFunctionSetVector_( &StoredShapeFunctionSetVectorProviderType::getObject( lfeMap_.get() ) ),
201 template< class GridPart, std::enable_if_t< std::is_same< GridPart, GridPartType >::value && !std::is_same< KeyType, std::tuple<> >::value, int > = 0 >
207 storedShapeFunctionSetVector_( &StoredShapeFunctionSetVectorProviderType::getObject( lfeMap_.get() ) ),
211 template< class GridPart, std::enable_if_t< std::is_same< GridPart, GridPartType >::value && !std::is_same< KeyType, std::tuple<> >::value, int > = 0 >
217 storedShapeFunctionSetVector_( &StoredShapeFunctionSetVectorProviderType::getObject( lfeMap_.get() ) ),
290 return InterpolationImplType( BasisFunctionSetType( entity, getShapeFunctionSet( lfe, entity.type() ) ), std::get< 2 >( lfe ) );
300 ShapeFunctionSetType getShapeFunctionSet ( std::tuple< std::size_t, const LocalBasisType &, const LocalInterpolationType & > lfe, const GeometryType &type ) const
304 storedShapeFunctionSet.reset( new StoredShapeFunctionSetType( type, LocalFunctionsShapeFunctionSetType( std::get< 1 >( lfe ) ) ) );
309 std::unique_ptr< StoredShapeFunctionSetVectorType, typename StoredShapeFunctionSetVectorProviderType::Deleter > storedShapeFunctionSetVector_;
Provides a proxy class for pointers to a shape function set.
constexpr auto get(std::integer_sequence< T, II... >, std::integral_constant< std::size_t, pos >={})
CommunicationDirection
InterfaceType
ForwardCommunication
InteriorBorder_All_Interface
DFSpaceIdentifier
enumerator for identification of spaces
Definition discretefunctionspace.hh:95
@ LocalFiniteElementSpace_id
id for local finite element space
Definition discretefunctionspace.hh:107
STL namespace.
typename Impl::GridFunctionSpace< GridPart, T >::Type GridFunctionSpace
Definition functionspace.hh:317
Definition hybrid.hh:86
Definition space/basisfunctionset/default.hh:124
implementation of a basis function set for given entity
Definition transformed.hh:46
Default communication handler for discrete functions.
Definition defaultcommhandler.hh:38
Definition discretefunctionspace.hh:134
Traits::FunctionSpaceType FunctionSpaceType
type of function space
Definition discretefunctionspace.hh:194
Traits::BasisFunctionSetType BasisFunctionSetType
type of basis function set of this space
Definition discretefunctionspace.hh:201
GridPartType::IntersectionType IntersectionType
type of the intersections
Definition discretefunctionspace.hh:226
int order() const
get global order of space
Definition discretefunctionspace.hh:346
This is the class with default implementations for discrete function. The methods not marked with hav...
Definition discretefunctionspace.hh:649
BaseType::EntityType EntityType
Definition discretefunctionspace.hh:665
BaseType::BlockMapperType BlockMapperType
Definition discretefunctionspace.hh:681
BaseType::GridPartType GridPartType
Definition discretefunctionspace.hh:661
GridPartType & gridPart() const
Definition discretefunctionspace.hh:766
convert functions space to space with new dim range
Definition functionspace.hh:250
BaseType::GridPartType GridPartType
Definition localfiniteelement/space.hh:124
InterpolationImplType localInterpolation(const EntityType &entity) const
return local interpolation
Definition localfiniteelement/space.hh:287
BasisFunctionSetType basisFunctionSet(const EntityType &entity) const
get basis function set for given entity
Definition localfiniteelement/space.hh:230
LocalFiniteElementSpace(const ThisType &)=delete
BaseType::IntersectionType IntersectionType
Definition localfiniteelement/space.hh:126
Traits::LFEMapType LFEMapType
Definition localfiniteelement/space.hh:135
LocalFiniteElementInterpolation< ThisType, LocalInterpolationType, Traits::isScalar > InterpolationImplType
Definition localfiniteelement/space.hh:184
BaseType::FunctionSpaceType FunctionSpaceType
Definition localfiniteelement/space.hh:122
int order() const
get global order of space
Definition localfiniteelement/space.hh:254
LocalFiniteElementSpace(ThisType &&)=delete
bool multipleGeometryTypes() const
returns true if the grid has more than one geometry type
Definition localfiniteelement/space.hh:257
ThisType & operator=(const ThisType &)=delete
LocalFiniteElementSpace(GridPart &gridPart, const InterfaceType commInterface=InteriorBorder_All_Interface, const CommunicationDirection commDirection=ForwardCommunication)
Definition localfiniteelement/space.hh:192
BlockMapperType & blockMapper() const
get a reference to the block mapper
Definition localfiniteelement/space.hh:260
InterpolationType interpolation() const
return local interpolation object (uninitialized)
Definition localfiniteelement/space.hh:266
BaseType::BasisFunctionSetType BasisFunctionSetType
Definition localfiniteelement/space.hh:129
BaseType::BlockMapperType BlockMapperType
Definition localfiniteelement/space.hh:131
bool continuous() const
returns true if the space contains only globally continuous functions
Definition localfiniteelement/space.hh:248
bool continuous(const IntersectionType &intersection) const
returns true if the space contains only globally continuous functions
Definition localfiniteelement/space.hh:251
ShapeFunctionSetType shapeFunctionSet(const EntityType &entity) const
return shape function set for given entity
Definition localfiniteelement/space.hh:242
BaseType::Traits::ShapeFunctionSetType ShapeFunctionSetType
Definition localfiniteelement/space.hh:128
DFSpaceIdentifier type() const
return type identifier of discrete function space
Definition localfiniteelement/space.hh:227
LocalFEInterpolationWrapper< ThisType > InterpolationType
Interpolation object.
Definition localfiniteelement/space.hh:187
LFEMapType::LocalCoefficientsType QuadratureType
Definition localfiniteelement/space.hh:293
InterpolationImplType interpolation(const EntityType &entity) const
return local interpolation
Definition localfiniteelement/space.hh:277
BaseType::EntityType EntityType
Definition localfiniteelement/space.hh:125
Traits::LocalFiniteElementType LocalFiniteElementType
Definition localfiniteelement/space.hh:133
LocalFiniteElementSpace(GridPart &gridPart, const KeyType &key, const InterfaceType commInterface=InteriorBorder_All_Interface, const CommunicationDirection commDirection=ForwardCommunication)
Definition localfiniteelement/space.hh:202
const QuadratureType & quadrature(const GeometryType &type) const
Definition localfiniteelement/space.hh:294
BaseType::Traits Traits
Definition localfiniteelement/space.hh:121
Definition localfiniteelement/interpolation.hh:111
Definition localfiniteelement/interpolation.hh:359
Definition localfiniteelement/shapefunctionset.hh:49
Definition localfiniteelement/space.hh:43
SelectCachingShapeFunctionSet< LocalFunctionsShapeFunctionSetType, Storage > StoredShapeFunctionSetType
Definition localfiniteelement/space.hh:72
LFEMap LFEMapType
Definition localfiniteelement/space.hh:46
LocalFiniteElementSpace< LFEMap, FunctionSpace, Storage > DiscreteFunctionSpaceType
Definition localfiniteelement/space.hh:44
static constexpr bool isScalar
Definition localfiniteelement/space.hh:54
GridFunctionSpace< GridPartType, FunctionSpace > FunctionSpaceType
Definition localfiniteelement/space.hh:51
decltype(basisFunctionSet(std::declval< const LFEMapType & >())) BasisFunctionSetType
Definition localfiniteelement/space.hh:88
LFEMapType::GridPartType GridPartType
Definition localfiniteelement/space.hh:48
Dune::Fem::IndexSetDofMapper< GridPartType > BlockMapperType
Definition localfiniteelement/space.hh:69
std::conditional_t< isScalar, VectorialShapeFunctionSet< ShapeFunctionSetProxyType, typename FunctionSpaceType::RangeType >, ShapeFunctionSetProxyType > ShapeFunctionSetType
Definition localfiniteelement/space.hh:79
LocalFunctionsShapeFunctionSet< typename LocalFiniteElementType::Traits::LocalBasisType, pointSetId > LocalFunctionsShapeFunctionSetType
Definition localfiniteelement/space.hh:71
static constexpr int codimension
Definition localfiniteelement/space.hh:53
ShapeFunctionSetProxy< StoredShapeFunctionSetType > ShapeFunctionSetProxyType
Definition localfiniteelement/space.hh:74
LFEMapType::LocalFiniteElementType LocalFiniteElementType
Definition localfiniteelement/space.hh:49
std::conditional_t< isScalar, Hybrid::IndexRange< int, FunctionSpace::dimRange >, Hybrid::IndexRange< int, 1 > > LocalBlockIndices
Definition localfiniteelement/space.hh:59
Definition localfiniteelement/space.hh:92
DefaultCommunicationHandler< DiscreteFunction, Operation > Type
Definition localfiniteelement/space.hh:93
Operation OperationType
Definition localfiniteelement/space.hh:94
LocalFiniteElementSpace< LFEMap, typename ToNewDimRangeFunctionSpace< FunctionSpace, newRange >::Type, Storage > Type
Definition localfiniteelement/space.hh:317
LocalFiniteElementSpace< LFEMap, NewFunctionSpace, Storage > Type
Definition localfiniteelement/space.hh:323
Definition indexsetdofmapper.hh:747
Definition proxy.hh:35
Definition selectcaching.hh:26
Definition shapefunctionset/vectorial.hh:447
T forward(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8