dune-fem 2.8.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Related Functions | List of all members
Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage > Class Template Reference

adaptive DG discrete function space More...

#include <dune/fem/space/padaptivespace/discontinuousgalerkin.hh>

Inheritance diagram for Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >:
Inheritance graph

Public Types

typedef ThisType PAdaptiveDGSpaceType
 
typedef BaseType::Traits Traits
 
typedef BaseType::GridPartType GridPartType
 
typedef BaseType::IntersectionType IntersectionType
 
typedef BaseType::EntityType EntityType
 
typedef BaseType::BasisFunctionSetType BasisFunctionSetType
 
typedef BaseType::CompiledLocalKeyType CompiledLocalKeyType
 
typedef CompiledLocalKeyType LagrangePointSetType
 
typedef DiscontinuousGalerkinLocalL2Projection< GridPartType, BasisFunctionSetTypeInterpolationImplType
 
typedef LocalInterpolationWrapper< ThisTypeInterpolationType
 
typedef ThisType GenericDiscreteFunctionSpaceType
 
typedef BaseType::DiscreteFunctionSpaceType DiscreteFunctionSpaceType
 
typedef BaseType::FunctionSpaceType FunctionSpaceType
 
typedef BaseType::GridType GridType
 
typedef BaseType::IndexSetType IndexSetType
 
typedef BaseType::IteratorType IteratorType
 
typedef Traits::ShapeFunctionSetType ShapeFunctionSetType
 
typedef BaseType::BlockMapperType BlockMapperType
 
typedef BaseSetLocalKeyStorage< CompiledLocalKeyTypeLocalKeyStorageType
 
typedef int KeyType
 
typedef int IdentifierType
 type of identifier for this discrete function space
 
typedef DofManager< GridTypeDofManagerType
 type of DoF manager
 
typedef CommunicationManager< DiscreteFunctionSpaceTypeCommunicationManagerType
 type of communication manager
 
typedef BaseType::AuxiliaryDofsType AuxiliaryDofsType
 
typedef Traits::LocalBlockIndices LocalBlockIndices
 
typedef AuxiliaryDofsType SlaveDofsType
 deprecated type
 

Public Member Functions

 PAdaptiveDGSpace (GridPartType &gridPart, const int order, const InterfaceType commInterface=defaultInterface, const CommunicationDirection commDirection=defaultDirection)
 constructor
 
 PAdaptiveDGSpace (GridPartType &gridPart, const InterfaceType commInterface=defaultInterface, const CommunicationDirection commDirection=defaultDirection)
 constructor
 
 PAdaptiveDGSpace (const PAdaptiveDGSpace &other)
 
bool continuous (const IntersectionType &intersection) const
 returns true if the space contains only globally continuous functions
 
const CompiledLocalKeyTypelagrangePointSet (const GeometryType &type, const int order=BaseType::polynomialOrder) const
 Please doc me.
 
InterpolationType interpolation () const
 
InterpolationImplType interpolation (const EntityType &entity) const
 
InterpolationImplType localInterpolation (const EntityType &entity) const
 
bool continuous () const
 returns true if the space contains only globally continuous functions
 
BlockMapperTypeblockMapper () const
 get a reference to the block mapper
 
template<class EntityType >
const CompiledLocalKeyTypecompiledLocalKey (const EntityType &entity) const
 provide access to the compiled local keys for an entity
 
const CompiledLocalKeyTypecompiledLocalKey (const GeometryType type, const int order=polynomialOrder) const
 provide access to the compiled local keys for a geometry type and polynomial order
 
BasisFunctionSetType basisFunctionSet (const EntityType &entity) const
 get basis function set for given entity
 
DFSpaceIdentifier type () const
 return type identifier of discrete function space
 
const BasisFunctionSetType basisFunctionSet (const EntityType &entity) const
 get basis function set for given entity
 
bool continuous (const IntersectionType &intersection) const
 returns true if discrete functions over this space have zero jump over the given intersection.
 
int order () const
 get global order of space
 
int order (const typename BaseType::EntityType &entity) const
 get global order of space
 
int order (const EntityType &entity) const
 default implementation of the method order
 
bool multipleBaseFunctionSets () const
 this space has more than one base function set
 
ShapeFunctionSetType shapeFunctionSet (const EntityType &entity) const
 return shape function set for given entity
 
ShapeFunctionSetType shapeFunctionSet (const GeometryType &type, const int order=polynomialOrder) const
 return shape unique function set for geometry type
 
void adapt (const Vector &polynomialOrders, const int polOrderShift=0) const
 default implementation of adapt does nothing, its only used in PAdaptiveLagrangeSpace
 
int sequence () const
 get index of the sequence in grid sequences
 
const GridTypegrid () const
 get reference to grid this discrete function space belongs to
 
GridTypegrid ()
 get reference to grid this discrete function space belongs to
 
GridPartTypegridPart () const
 
GridPartTypegridPart ()
 get a reference to the associated grid partition
 
const IndexSetTypeindexSet () const
 Get a reference to the associated index set.
 
int size () const
 get number of DoFs for this space
 
int maxNumDofs () const
 return the maximal number of dofs on entities
 
IteratorType begin () const
 get iterator pointing to the first entity of the associated grid partition
 
IteratorType end () const
 get iterator pointing behind the last entity of the associated grid partition
 
void forEach (FunctorType &f) const
 apply a functor to each entity in the associated grid partition
 
bool multipleGeometryTypes () const
 returns true if the grid has more than one geometry type
 
bool multipleBasisFunctionSets () const
 returns true if base function sets depend on the entity
 
InterfaceType communicationInterface () const
 return the communication interface appropriate for this space
 
CommunicationDirection communicationDirection () const
 return the communication interface appropriate for this space
 
const CommunicationManagerTypecommunicator () const
 return reference to communicator (see CommunicationManager)
 
void communicate (DiscreteFunction &discreteFunction) const
 communicate data for given discrete function using the space's default communication operation
 
void communicate (DiscreteFunction &discreteFunction, const Operation &op) const
 communicate data for given discrete function
 
BaseType::template CommDataHandle< DiscreteFunction, Operation >::Type createDataHandle (DiscreteFunction &discreteFunction, const Operation &operation) const
 
const AuxiliaryDofsTypeauxiliaryDofs () const
 get auxiliary dofs
 
void addFunction (DiscreteFunction &df) const
 default implementation of addFunction does nothing at the moment
 
void removeFunction (DiscreteFunction &df) const
 default implementation of removeFunction does nothing at the moment
 
const AuxiliaryDofsTypeslaveDofs () const
 deprecated method, use auxiliaryDofs
 
Adaptation
KeyType key (const EntityType &entity) const
 get identifiying basis function set key assigned to given entity
 
void mark (const KeyType &key, const EntityType &entity)
 assign new key to given entity
 
KeyType getMark (const EntityType &entity) const
 get key to be assigned to an entity after next call to adapt()
 
void adapt ()
 p adaptation
 
template<class DiscreteFunctionSpace , class Implementation >
void adapt (DataProjection< DiscreteFunctionSpace, Implementation > &projection)
 

Static Public Attributes

static const InterfaceType defaultInterface = InteriorBorder_All_Interface
 
static const CommunicationDirection defaultDirection = ForwardCommunication
 
static const int polynomialOrder = Traits::polynomialOrder
 maximal available polynomial order
 
static const IdentifierType id = 665
 identifier of this discrete function space
 
static constexpr std::size_t localBlockSize = Hybrid::size( LocalBlockIndices() )
 size of local blocks
 

Protected Types

typedef Traits::ScalarShapeFunctionSetType ScalarShapeFunctionSetType
 
typedef BaseSetLocalKeyStorage< ScalarShapeFunctionSetTypeScalarShapeFunctionSetStorageType
 
typedef SingletonList< std::pair< GridPartType *, BlockMapperType * >, std::pair< AuxiliaryDofsType, int >, AuxiliaryDofsFactory > AuxiliaryDofsProviderType
 
typedef ThreadSafeValue< UninitializedObjectStackLocalDofVectorStackType
 
typedef StackAllocator< typename BaseType::RangeFieldType, LocalDofVectorStackType * > LocalDofVectorAllocatorType
 
typedef Dune::DynamicVector< typename BaseType::RangeFieldType, LocalDofVectorAllocatorTypeLocalDofVectorType
 
typedef BasicTemporaryLocalFunction< ThisType, LocalDofVectorTypeLocalFunctionType
 
typedef AllGeomTypes< IndexSetType, GridTypeAllGeometryTypes
 

Protected Member Functions

BlockMapperTypeinitialize (const BlockMapperType *otherMapper=0)
 
const std::vector< GeometryType > & geomTypes (int codim) const
 returns true if the grid has more than one geometry type
 
const DiscreteFunctionSpaceTypeasImp () const
 
DiscreteFunctionSpaceTypeasImp ()
 

Protected Attributes

const int order_
 
std::vector< ScalarShapeFunctionSetStorageTypescalarShapeFunctionSets_
 
std::vector< LocalKeyStorageTypecompiledLocalKeys_
 
std::unique_ptr< BlockMapperTypeblockMapper_
 
GridPartTypegridPart_
 
LocalDofVectorStackType ldvStack_
 
LocalDofVectorAllocatorType ldvAllocator_
 
const AllGeometryTypes allGeomTypes_
 
DofManagerTypedofManager_
 
const InterfaceType commInterface_
 
const CommunicationDirection commDirection_
 
std::unique_ptr< CommunicationManagerTypecommunicator_
 
std::unique_ptr< std::pair< AuxiliaryDofsType, int >, typename AuxiliaryDofsProviderType::DeleterauxiliaryDofs_
 

Related Functions

(Note that these are not member functions.)

template<class Traits >
bool operator== (const DiscreteFunctionSpaceInterface< Traits > &X, const DiscreteFunctionSpaceInterface< Traits > &Y)
 check two spaces for equality
 

Detailed Description

template<class FunctionSpace, class GridPart, int polOrder, class Storage = CachingStorage>
class Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >

adaptive DG discrete function space

Member Typedef Documentation

◆ AllGeometryTypes

typedef AllGeomTypes< IndexSetType, GridType > Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::AllGeometryTypes
protectedinherited

◆ AuxiliaryDofsProviderType

typedef SingletonList< std::pair< GridPartType *, BlockMapperType * >, std::pair< AuxiliaryDofsType, int >, AuxiliaryDofsFactory > Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::AuxiliaryDofsProviderType
protectedinherited

◆ AuxiliaryDofsType

◆ BasisFunctionSetType

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
typedef BaseType::BasisFunctionSetType Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::BasisFunctionSetType

◆ BlockMapperType

template<class Traits >
typedef BaseType::BlockMapperType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::BlockMapperType
inherited

◆ CommunicationManagerType

type of communication manager

◆ CompiledLocalKeyType

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
typedef BaseType::CompiledLocalKeyType Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::CompiledLocalKeyType

◆ DiscreteFunctionSpaceType

template<class Traits >
typedef BaseType::DiscreteFunctionSpaceType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::DiscreteFunctionSpaceType
inherited

◆ DofManagerType

typedef DofManager< GridType > Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::DofManagerType
inherited

type of DoF manager

◆ EntityType

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
typedef BaseType::EntityType Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::EntityType

◆ FunctionSpaceType

template<class Traits >
typedef BaseType::FunctionSpaceType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::FunctionSpaceType
inherited

◆ GenericDiscreteFunctionSpaceType

template<class Traits >
typedef ThisType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::GenericDiscreteFunctionSpaceType
inherited

◆ GridPartType

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
typedef BaseType::GridPartType Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::GridPartType

◆ GridType

template<class Traits >
typedef BaseType::GridType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::GridType
inherited

◆ IdentifierType

template<class Traits >
typedef int Dune::Fem::GenericDiscreteFunctionSpace< Traits >::IdentifierType
inherited

type of identifier for this discrete function space

◆ IndexSetType

template<class Traits >
typedef BaseType::IndexSetType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::IndexSetType
inherited

◆ InterpolationImplType

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
typedef DiscontinuousGalerkinLocalL2Projection< GridPartType, BasisFunctionSetType > Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::InterpolationImplType

◆ InterpolationType

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
typedef LocalInterpolationWrapper< ThisType > Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::InterpolationType

◆ IntersectionType

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
typedef BaseType::IntersectionType Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::IntersectionType

◆ IteratorType

template<class Traits >
typedef BaseType::IteratorType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::IteratorType
inherited

◆ KeyType

template<class Traits >
typedef int Dune::Fem::GenericDiscreteFunctionSpace< Traits >::KeyType
inherited

◆ LagrangePointSetType

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
typedef CompiledLocalKeyType Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::LagrangePointSetType

◆ LocalBlockIndices

template<class FunctionSpaceTraits >
typedef Traits::LocalBlockIndices Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::LocalBlockIndices
inherited

◆ LocalDofVectorAllocatorType

typedef StackAllocator< typename BaseType::RangeFieldType, LocalDofVectorStackType* > Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::LocalDofVectorAllocatorType
protectedinherited

◆ LocalDofVectorStackType

typedef ThreadSafeValue< UninitializedObjectStack > Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::LocalDofVectorStackType
protectedinherited

◆ LocalDofVectorType

typedef Dune::DynamicVector< typename BaseType::RangeFieldType, LocalDofVectorAllocatorType > Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::LocalDofVectorType
protectedinherited

◆ LocalFunctionType

◆ LocalKeyStorageType

template<class Traits >
typedef BaseSetLocalKeyStorage< CompiledLocalKeyType > Dune::Fem::GenericDiscreteFunctionSpace< Traits >::LocalKeyStorageType
inherited

◆ PAdaptiveDGSpaceType

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
typedef ThisType Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::PAdaptiveDGSpaceType

◆ ScalarShapeFunctionSetStorageType

template<class Traits >
typedef BaseSetLocalKeyStorage< ScalarShapeFunctionSetType > Dune::Fem::GenericDiscreteFunctionSpace< Traits >::ScalarShapeFunctionSetStorageType
protectedinherited

◆ ScalarShapeFunctionSetType

template<class Traits >
typedef Traits::ScalarShapeFunctionSetType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::ScalarShapeFunctionSetType
protectedinherited

◆ ShapeFunctionSetType

template<class Traits >
typedef Traits::ShapeFunctionSetType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::ShapeFunctionSetType
inherited

◆ SlaveDofsType

template<class FunctionSpaceTraits >
typedef AuxiliaryDofsType Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::SlaveDofsType
inherited

deprecated type

◆ Traits

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
typedef BaseType::Traits Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::Traits

Constructor & Destructor Documentation

◆ PAdaptiveDGSpace() [1/3]

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::PAdaptiveDGSpace ( GridPartType gridPart,
const int  order,
const InterfaceType  commInterface = defaultInterface,
const CommunicationDirection  commDirection = defaultDirection 
)
inlineexplicit

constructor

Parameters
[in]gridPartgrid part for the Discontinuous Galerkin space
[in]orderdynamically set maximal polynomial order between 1 and maxPolOrder
[in]commInterfacecommunication interface to use (optional)
[in]commDirectioncommunication direction to use (optional)

◆ PAdaptiveDGSpace() [2/3]

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::PAdaptiveDGSpace ( GridPartType gridPart,
const InterfaceType  commInterface = defaultInterface,
const CommunicationDirection  commDirection = defaultDirection 
)
inlineexplicit

constructor

Parameters
[in]gridPartgrid part for the Lagrange space
[in]commInterfacecommunication interface to use (optional)
[in]commDirectioncommunication direction to use (optional)

◆ PAdaptiveDGSpace() [3/3]

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::PAdaptiveDGSpace ( const PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage > &  other)
inline

Member Function Documentation

◆ adapt() [1/3]

template<class Traits >
void Dune::Fem::GenericDiscreteFunctionSpace< Traits >::adapt ( )
inlineinherited

p adaptation

Parameters
[in]functionoialOrders vector containing polynomial orders for each cell
[in]polOrderShiftpossible shift of polynomial order (i.e. in case of Taylor-Hood put -1 for the pressure) (default = 0)

◆ adapt() [2/3]

void Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::adapt ( const Vector &  polynomialOrders,
const int  polOrderShift = 0 
) const
inlineinherited

default implementation of adapt does nothing, its only used in PAdaptiveLagrangeSpace

◆ adapt() [3/3]

template<class Traits >
template<class DiscreteFunctionSpace , class Implementation >
void Dune::Fem::GenericDiscreteFunctionSpace< Traits >::adapt ( DataProjection< DiscreteFunctionSpace, Implementation > &  projection)
inlineinherited

◆ addFunction()

void Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::addFunction ( DiscreteFunction &  df) const
inlineinherited

default implementation of addFunction does nothing at the moment

◆ asImp() [1/2]

template<class FunctionSpaceTraits >
DiscreteFunctionSpaceType & Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::asImp ( )
inlineprotectedinherited

◆ asImp() [2/2]

template<class FunctionSpaceTraits >
const DiscreteFunctionSpaceType & Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::asImp ( ) const
inlineprotectedinherited

◆ auxiliaryDofs()

const AuxiliaryDofsType & Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::auxiliaryDofs ( ) const
inlineinherited

get auxiliary dofs

◆ basisFunctionSet() [1/2]

template<class FunctionSpaceTraits >
const BasisFunctionSetType Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::basisFunctionSet ( const EntityType entity) const
inlineinherited

get basis function set for given entity

Parameters
[in]entityentity (of codim 0) for which base function is requested
Returns
BasisFunctionSet for the entity

◆ basisFunctionSet() [2/2]

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
BasisFunctionSetType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::basisFunctionSet ( const EntityType entity) const
inline

get basis function set for given entity

Parameters
[in]entityentity (of codim 0) for which base function is requested
Returns
BasisFunctionSet for the entity

◆ begin()

IteratorType Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::begin ( ) const
inlineinherited

get iterator pointing to the first entity of the associated grid partition

Returns
iterator pointing to first entity
Note
The default implementation uses the codim 0 iterators of the associated grid partition.

◆ blockMapper()

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
BlockMapperType & Dune::Fem::GenericDiscreteFunctionSpace< Traits >::blockMapper ( ) const
inline

get a reference to the block mapper

Returns
refernce to the block mapper

◆ communicate() [1/2]

void Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::communicate ( DiscreteFunction &  discreteFunction) const
inlineinherited

communicate data for given discrete function using the space's default communication operation

Parameters
discreteFunctiondiscrete function to be communicated

◆ communicate() [2/2]

void Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::communicate ( DiscreteFunction &  discreteFunction,
const Operation &  op 
) const
inlineinherited

communicate data for given discrete function

Parameters
discreteFunctiondiscrete function to be communicated
[in]opcommunication operation to use (see DFCommunicationOperation)

◆ communicationDirection()

CommunicationDirection Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::communicationDirection ( ) const
inlineinherited

return the communication interface appropriate for this space

Returns
communication interface

◆ communicationInterface()

InterfaceType Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::communicationInterface ( ) const
inlineinherited

return the communication interface appropriate for this space

Returns
communication interface

◆ communicator()

const CommunicationManagerType & Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::communicator ( ) const
inlineinherited

return reference to communicator (see CommunicationManager)

Returns
reference to communicator

◆ compiledLocalKey() [1/2]

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
template<class EntityType >
const CompiledLocalKeyType & Dune::Fem::GenericDiscreteFunctionSpace< Traits >::compiledLocalKey ( const EntityType entity) const
inline

provide access to the compiled local keys for an entity

Note
This method is not part of the DiscreteFunctionSpaceInterface. It is unique to the GenericDiscreteFunctionSpace.
Parameters
[in]entityentity the Lagrange point set is requested for
Returns
CompiledLocalKey

◆ compiledLocalKey() [2/2]

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
const CompiledLocalKeyType & Dune::Fem::GenericDiscreteFunctionSpace< Traits >::compiledLocalKey ( const GeometryType  type,
const int  order = polynomialOrder 
) const
inline

provide access to the compiled local keys for a geometry type and polynomial order

Note
This method is not part of the DiscreteFunctionSpaceInterface. It is unique to the GenericDiscreteFunctionSpace.
Parameters
[in]typetype of geometry the compiled local key is requested for
[in]orderpolynomial order for given geometry type
Returns
CompiledLocalKey

◆ continuous() [1/3]

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
bool Dune::Fem::GenericDiscreteFunctionSpace< Traits >::continuous ( ) const
inline

returns true if the space contains only globally continuous functions

For example, a Lagrange space returns true while a discontiuous Galerkin space returns false.

Returns
true if the space contians only globally continous functions, false otherwise

◆ continuous() [2/3]

template<class FunctionSpaceTraits >
bool Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::continuous ( const IntersectionType intersection) const
inlineinherited

returns true if discrete functions over this space have zero jump over the given intersection.

For example, a Lagrange space returns true iff the intersection is conforming while a discontiuous Galerkin space always returns false.

Parameters
intersectionIntersection for which we want to know the continuety
Returns
true if the space contians functions which are continuous over the intersection, false otherwise

◆ continuous() [3/3]

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
bool Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::continuous ( const IntersectionType intersection) const
inline

returns true if the space contains only globally continuous functions

For example, a Lagrange space returns true while a discontiuous Galerkin space returns false.

Returns
true if the space contians only globally continous functions, false otherwise

◆ createDataHandle()

BaseType::template CommDataHandle< DiscreteFunction, Operation >::Type Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::createDataHandle ( DiscreteFunction &  discreteFunction,
const Operation &  operation 
) const
inlineinherited

Note
The default implementation is
defines type of data handle for communication
Definition: discretefunctionspace.hh:244

◆ end()

IteratorType Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::end ( ) const
inlineinherited

get iterator pointing behind the last entity of the associated grid partition

Returns
iterator pointing behind last entity
Note
The default implementation uses the codim 0 iterators of the associated grid partition.

◆ forEach()

void Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::forEach ( FunctorType &  f) const
inlineinherited

apply a functor to each entity in the associated grid partition

The functor must provide an the following operator

template< class EntityType >
void operator() ( const EntityType & );
BaseType::EntityType EntityType
Definition: padaptivespace/discontinuousgalerkin.hh:87
Parameters
[in]ffunctor to apply
Note
The default implementation simply does the following:
const IteratorType end = asImp().end();
for( IteratorType it = asImp().begin(); it != end; ++it )
f( *it );
const DiscreteFunctionSpaceType & asImp() const
Definition: discretefunctionspace.hh:576
IteratorType end() const
get iterator pointing behind the last entity of the associated grid partition
Definition: discretefunctionspace.hh:783
IteratorType begin() const
get iterator pointing to the first entity of the associated grid partition
Definition: discretefunctionspace.hh:773
BaseType::IteratorType IteratorType
Definition: padaptivespace/generic.hh:56

◆ geomTypes()

const std::vector< GeometryType > & Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::geomTypes ( int  codim) const
inlineprotectedinherited

returns true if the grid has more than one geometry type

Returns
true if the underlying grid has more than one geometry type (hybrid grid), false otherwise

◆ getMark()

template<class Traits >
KeyType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::getMark ( const EntityType entity) const
inlineinherited

get key to be assigned to an entity after next call to adapt()

Parameters
[in]entitygrid part entity
Returns
key

◆ grid() [1/2]

get reference to grid this discrete function space belongs to

Returns
reference to grid

◆ grid() [2/2]

const GridType & Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::grid ( ) const
inlineinherited

get reference to grid this discrete function space belongs to

Returns
constant reference to grid

◆ gridPart() [1/2]

template<class FunctionSpaceTraits >
GridPartType & Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::gridPart ( )
inlineinherited

get a reference to the associated grid partition

Returns
reference to the grid partition

◆ gridPart() [2/2]

GridPartType & Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::gridPart ( ) const
inlineinherited

◆ indexSet()

const IndexSetType & Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::indexSet ( ) const
inlineinherited

Get a reference to the associated index set.

Returns
const reference to index set

◆ initialize()

template<class Traits >
BlockMapperType * Dune::Fem::GenericDiscreteFunctionSpace< Traits >::initialize ( const BlockMapperType otherMapper = 0)
inlineprotectedinherited

◆ interpolation() [1/2]

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
InterpolationType Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::interpolation ( ) const
inline

◆ interpolation() [2/2]

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
InterpolationImplType Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::interpolation ( const EntityType entity) const
inline

◆ key()

template<class Traits >
KeyType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::key ( const EntityType entity) const
inlineinherited

get identifiying basis function set key assigned to given entity

Parameters
[in]entitygrid part entity
Returns
key

◆ lagrangePointSet()

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
const CompiledLocalKeyType & Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::lagrangePointSet ( const GeometryType &  type,
const int  order = BaseType::polynomialOrder 
) const
inline

Please doc me.

◆ localInterpolation()

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
InterpolationImplType Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::localInterpolation ( const EntityType entity) const
inline

◆ mark()

template<class Traits >
void Dune::Fem::GenericDiscreteFunctionSpace< Traits >::mark ( const KeyType key,
const EntityType entity 
)
inlineinherited

assign new key to given entity

Parameters
[in]keykey identifying basis function set
[in]entitygrid part entity

◆ maxNumDofs()

int Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::maxNumDofs ( ) const
inlineinherited

return the maximal number of dofs on entities

◆ multipleBaseFunctionSets()

template<class Traits >
bool Dune::Fem::GenericDiscreteFunctionSpace< Traits >::multipleBaseFunctionSets ( ) const
inlineinherited

this space has more than one base function set

◆ multipleBasisFunctionSets()

bool Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::multipleBasisFunctionSets ( ) const
inlineinherited

returns true if base function sets depend on the entity

Returns
true if base function set depend on entities, false otherwise
Note
The default implementation returns false.

◆ multipleGeometryTypes()

bool Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::multipleGeometryTypes ( ) const
inlineinherited

returns true if the grid has more than one geometry type

Returns
true if the underlying grid has more than one geometry type (hybrid grid), false otherwise

◆ order() [1/3]

template<class Traits >
int Dune::Fem::GenericDiscreteFunctionSpace< Traits >::order ( ) const
inlineinherited

get global order of space

Returns
order of space, i.e., the maximal polynomial order of base functions

◆ order() [2/3]

int Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::order ( const EntityType entity) const
inlineinherited

default implementation of the method order

Returns
returns max polynomial order for each entity using the method order()

◆ order() [3/3]

template<class Traits >
int Dune::Fem::GenericDiscreteFunctionSpace< Traits >::order ( const typename BaseType::EntityType entity) const
inlineinherited

get global order of space

Returns
order of space, i.e., the maximal polynomial order of base functions

◆ removeFunction()

void Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::removeFunction ( DiscreteFunction &  df) const
inlineinherited

default implementation of removeFunction does nothing at the moment

◆ sequence()

int Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::sequence ( ) const
inlineinherited

get index of the sequence in grid sequences

Returns
number of current sequence

◆ shapeFunctionSet() [1/2]

template<class Traits >
ShapeFunctionSetType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::shapeFunctionSet ( const EntityType entity) const
inlineinherited

return shape function set for given entity

Parameters
[in]entityentity (of codim 0) for which shape function set is requested
Returns
ShapeFunctionSetType shape function set

◆ shapeFunctionSet() [2/2]

template<class Traits >
ShapeFunctionSetType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::shapeFunctionSet ( const GeometryType &  type,
const int  order = polynomialOrder 
) const
inlineinherited

return shape unique function set for geometry type

Parameters
[in]typegeometry type (must be a cube) for which shape function set is requested
[in]orderpolynomial order
Returns
ShapeFunctionSetType shape function set

◆ size()

int Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::size ( ) const
inlineinherited

get number of DoFs for this space

Returns
number of DoFs (degrees of freedom)

◆ slaveDofs()

template<class FunctionSpaceTraits >
const AuxiliaryDofsType & Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::slaveDofs ( ) const
inlineinherited

deprecated method, use auxiliaryDofs

◆ type()

template<class Traits >
DFSpaceIdentifier Dune::Fem::GenericDiscreteFunctionSpace< Traits >::type ( ) const
inlineinherited

return type identifier of discrete function space

Returns
return type identifier of discrete function space

Member Data Documentation

◆ allGeomTypes_

const AllGeometryTypes Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::allGeomTypes_
protectedinherited

◆ auxiliaryDofs_

std::unique_ptr< std::pair< AuxiliaryDofsType, int >, typename AuxiliaryDofsProviderType::Deleter > Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::auxiliaryDofs_
mutableprotectedinherited

◆ blockMapper_

template<class Traits >
std::unique_ptr< BlockMapperType > Dune::Fem::GenericDiscreteFunctionSpace< Traits >::blockMapper_
protectedinherited

◆ commDirection_

const CommunicationDirection Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::commDirection_
protectedinherited

◆ commInterface_

const InterfaceType Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::commInterface_
protectedinherited

◆ communicator_

std::unique_ptr< CommunicationManagerType > Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::communicator_
mutableprotectedinherited

◆ compiledLocalKeys_

template<class Traits >
std::vector< LocalKeyStorageType > Dune::Fem::GenericDiscreteFunctionSpace< Traits >::compiledLocalKeys_
protectedinherited

◆ defaultDirection

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
const CommunicationDirection Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::defaultDirection = ForwardCommunication
static

◆ defaultInterface

template<class FunctionSpace , class GridPart , int polOrder, class Storage = CachingStorage>
const InterfaceType Dune::Fem::PAdaptiveDGSpace< FunctionSpace, GridPart, polOrder, Storage >::defaultInterface = InteriorBorder_All_Interface
static

◆ dofManager_

DofManagerType& Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::dofManager_
protectedinherited

◆ gridPart_

GridPartType& Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::gridPart_
protectedinherited

◆ id

template<class Traits >
const IdentifierType Dune::Fem::GenericDiscreteFunctionSpace< Traits >::id = 665
staticinherited

identifier of this discrete function space

◆ ldvAllocator_

LocalDofVectorAllocatorType Dune::Fem::DiscreteFunctionSpaceDefault< Traits >::ldvAllocator_
mutableprotectedinherited

◆ ldvStack_

◆ localBlockSize

template<class FunctionSpaceTraits >
constexpr std::size_t Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::localBlockSize = Hybrid::size( LocalBlockIndices() )
staticconstexprinherited

size of local blocks

◆ order_

template<class Traits >
const int Dune::Fem::GenericDiscreteFunctionSpace< Traits >::order_
protectedinherited

◆ polynomialOrder

template<class Traits >
const int Dune::Fem::GenericDiscreteFunctionSpace< Traits >::polynomialOrder = Traits::polynomialOrder
staticinherited

maximal available polynomial order

◆ scalarShapeFunctionSets_

template<class Traits >
std::vector< ScalarShapeFunctionSetStorageType > Dune::Fem::GenericDiscreteFunctionSpace< Traits >::scalarShapeFunctionSets_
protectedinherited

The documentation for this class was generated from the following files: