dune-fem 2.8.0
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Related Functions | List of all members
Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits > Class Template Reference

This is the class with default implementations for discrete function. The methods not marked with having a default in the interface class must be provided by the implementation; all other methods have a default implementation here. More...

#include <dune/fem/space/common/discretefunctionspace.hh>

Inherits Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >, and std::enable_shared_from_this< FunctionSpaceTraits::DiscreteFunctionSpaceType >.

Inherited by Dune::Fem::GenericCombinedDiscreteFunctionSpace< PowerDiscreteFunctionSpaceTraits< DiscreteFunctionSpace, N > >, Dune::Fem::GenericCombinedDiscreteFunctionSpace< TupleDiscreteFunctionSpaceTraits< CombineOp, DiscreteFunctionSpaces ... > >, Dune::Fem::GenericDiscontinuousGalerkinSpace< DiscontinuousGalerkinSpaceTraits< FunctionSpaceImp, GridPartImp, polOrder, StorageImp > >, Dune::Fem::GenericDiscontinuousGalerkinSpace< LegendreDiscontinuousGalerkinSpaceTraits< FunctionSpaceImp, GridPartImp, polOrder, StorageImp, hierarchicalOrdering > >, Dune::Fem::GenericDiscontinuousGalerkinSpace< LagrangeDiscontinuousGalerkinSpaceTraits< FunctionSpaceImp, GridPartImp, polOrder, StorageImp > >, Dune::Fem::GenericDiscontinuousGalerkinSpace< DiscontinuousGalerkinSpaceTraits< FunctionSpace, GridPart, polOrder, CachingStorage > >, Dune::Fem::GenericDiscontinuousGalerkinSpace< FiniteVolumeSpaceTraits< FunctionSpace, GridPart, 0, SimpleStorage > >, Dune::Fem::GenericDiscontinuousGalerkinSpace< LegendreDiscontinuousGalerkinSpaceTraits< FunctionSpace, GridPart, polOrder, Storage, hierarchicalOrdering > >, Dune::Fem::GenericDiscontinuousGalerkinSpace< LagrangeDiscontinuousGalerkinSpaceTraits< FunctionSpace, GridPart, polOrder, CachingStorage > >, Dune::Fem::GenericDiscontinuousGalerkinSpace< DiscontinuousGalerkinSpaceTraits< FunctionSpaceImp, GridPartImp, polOrder, BaseFunctionStorageImp > >, Dune::Fem::GenericDiscontinuousGalerkinSpace< FiniteVolumeSpaceTraits< FunctionSpaceImp, GridPartImp, codim, BaseFunctionStorageImp > >, Dune::Fem::GenericDiscontinuousGalerkinSpace< LegendreDiscontinuousGalerkinSpaceTraits< FunctionSpaceImp, GridPartImp, polOrder, BaseFunctionStorageImp, hierarchicalOrdering > >, Dune::Fem::GenericDiscontinuousGalerkinSpace< TupleDiscontinuousGalerkinSpaceTraits< DFS... > >, Dune::Fem::GenericDiscontinuousGalerkinSpace< DiscontinuousGalerkinSpaceTraits< FunctionSpaceType, GridPartType, polOrder, CachingStorage > >, Dune::Fem::GenericDiscontinuousGalerkinSpace< FiniteVolumeSpaceTraits< FunctionSpaceType, GridPartType, codim, SimpleStorage > >, Dune::Fem::GenericDiscreteFunctionSpace< PAdaptiveDGSpaceTraits< FunctionSpaceImp, GridPartImp, polOrder, StorageImp > >, Dune::Fem::GenericDiscreteFunctionSpace< PAdaptiveLagrangeSpaceTraits< FS, GP, maxPolOrder, S > >, Dune::Fem::GenericDiscreteFunctionSpace< PAdaptiveDGSpaceTraits< FunctionSpace, GridPart, polOrder, CachingStorage > >, Dune::Fem::GenericDiscreteFunctionSpace< PAdaptiveLagrangeSpaceTraits< FunctionSpace, GridPart, maxPolOrder, CachingStorage > >, Dune::Fem::hpDG::DiscontinuousGalerkinSpace< OrthogonalDiscontinuousGalerkinSpaceTraits< FunctionSpaceImp, GridPartImp, order, Storage > >, Dune::Fem::hpDG::DiscontinuousGalerkinSpace< AnisotropicDiscontinuousGalerkinSpaceTraits< FunctionSpace, GridPart, order, Storage > >, Dune::Fem::hpDG::DiscontinuousGalerkinSpace< DefaultDiscontinuousGalerkinSpaceTraits< BasisFunctionSets > >, Dune::Fem::hpDG::DiscontinuousGalerkinSpace< LegendreDiscontinuousGalerkinSpaceTraits< FunctionSpace, GridPart, order, true, Storage > >, Dune::Fem::hpDG::DiscontinuousGalerkinSpace< LegendreDiscontinuousGalerkinSpaceTraits< FunctionSpace, GridPart, order, false, Storage > >, Dune::Fem::hpDG::DiscontinuousGalerkinSpace< OrthogonalDiscontinuousGalerkinSpaceTraits< FunctionSpace, GridPart, order, Storage > >, and Dune::Fem::BubbleElementSpace< FunctionSpace, GridPart, Storage >.

Classes

struct  AuxiliaryDofsFactory
 

Public Types

typedef FunctionSpaceTraits Traits
 
typedef Traits::DiscreteFunctionSpaceType DiscreteFunctionSpaceType
 
typedef BaseType::GridPartType GridPartType
 
typedef BaseType::GridType GridType
 
typedef BaseType::IndexSetType IndexSetType
 
typedef BaseType::IteratorType IteratorType
 
typedef BaseType::EntityType EntityType
 
typedef DofManager< GridTypeDofManagerType
 type of DoF manager
 
typedef CommunicationManager< DiscreteFunctionSpaceTypeCommunicationManagerType
 type of communication manager
 
typedef BaseType::BlockMapperType BlockMapperType
 
typedef BaseType::AuxiliaryDofsType AuxiliaryDofsType
 
typedef Traits::FunctionSpaceType FunctionSpaceType
 type of function space
 
typedef Traits::BasisFunctionSetType BasisFunctionSetType
 type of basis function set of this space
 
typedef Traits::LocalBlockIndices LocalBlockIndices
 
typedef GridPartType::IntersectionType IntersectionType
 type of the intersections
 
typedef AuxiliaryDofsType SlaveDofsType
 deprecated type
 

Public Member Functions

 DiscreteFunctionSpaceDefault (GridPartType &gridPart, const InterfaceType commInterface=InteriorBorder_All_Interface, const CommunicationDirection commDirection=ForwardCommunication)
 constructor
 
int sequence () const
 get index of the sequence in grid sequences
 
int order (const EntityType &entity) const
 default implementation of the method order
 
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
 
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
 
template<class FunctorType >
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)
 
template<class DiscreteFunction >
void communicate (DiscreteFunction &discreteFunction) const
 communicate data for given discrete function using the space's default communication operation
 
template<class DiscreteFunction , class Operation >
void communicate (DiscreteFunction &discreteFunction, const Operation &op) const
 communicate data for given discrete function
 
template<class DiscreteFunction , class Operation >
BaseType::template CommDataHandle< DiscreteFunction, Operation >::Type createDataHandle (DiscreteFunction &discreteFunction, const Operation &operation) const
 
const AuxiliaryDofsTypeauxiliaryDofs () const
 get auxiliary dofs
 
template<class DiscreteFunction >
void addFunction (DiscreteFunction &df) const
 default implementation of addFunction does nothing at the moment
 
template<class DiscreteFunction >
void removeFunction (DiscreteFunction &df) const
 default implementation of removeFunction does nothing at the moment
 
template<class Vector >
void adapt (const Vector &polynomialOrders, const int polOrderShift=0) const
 default implementation of adapt does nothing, its only used in PAdaptiveLagrangeSpace
 
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
 returns true if the space contains only globally continuous functions
 
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
 
BlockMapperTypeblockMapper () const
 get a reference to the block mapper
 
GridPartTypegridPart ()
 get a reference to the associated grid partition
 
const AuxiliaryDofsTypeslaveDofs () const
 deprecated method, use auxiliaryDofs
 

Static Public Attributes

static constexpr std::size_t localBlockSize = Hybrid::size( LocalBlockIndices() )
 size of local blocks
 

Protected Types

typedef SingletonList< std::pair< GridPartType *, BlockMapperType * >, std::pair< AuxiliaryDofsType, int >, AuxiliaryDofsFactoryAuxiliaryDofsProviderType
 
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

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

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 FunctionSpaceTraits>
class Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >

This is the class with default implementations for discrete function. The methods not marked with having a default in the interface class must be provided by the implementation; all other methods have a default implementation here.

Remarks
An reference to the GridPart is stored in the default implementation.

Member Typedef Documentation

◆ AllGeometryTypes

template<class FunctionSpaceTraits >
typedef AllGeomTypes< IndexSetType, GridType > Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::AllGeometryTypes
protected

◆ AuxiliaryDofsProviderType

template<class FunctionSpaceTraits >
typedef SingletonList< std::pair< GridPartType *, BlockMapperType * >, std::pair< AuxiliaryDofsType, int >, AuxiliaryDofsFactory > Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::AuxiliaryDofsProviderType
protected

◆ AuxiliaryDofsType

template<class FunctionSpaceTraits >
typedef BaseType::AuxiliaryDofsType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::AuxiliaryDofsType

◆ BasisFunctionSetType

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

type of basis function set of this space

◆ BlockMapperType

template<class FunctionSpaceTraits >
typedef BaseType::BlockMapperType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::BlockMapperType

◆ CommunicationManagerType

template<class FunctionSpaceTraits >
typedef CommunicationManager< DiscreteFunctionSpaceType > Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::CommunicationManagerType

type of communication manager

◆ DiscreteFunctionSpaceType

template<class FunctionSpaceTraits >
typedef Traits::DiscreteFunctionSpaceType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::DiscreteFunctionSpaceType

◆ DofManagerType

template<class FunctionSpaceTraits >
typedef DofManager< GridType > Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::DofManagerType

type of DoF manager

◆ EntityType

template<class FunctionSpaceTraits >
typedef BaseType::EntityType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::EntityType

◆ FunctionSpaceType

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

type of function space

◆ GridPartType

template<class FunctionSpaceTraits >
typedef BaseType::GridPartType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::GridPartType

◆ GridType

template<class FunctionSpaceTraits >
typedef BaseType::GridType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::GridType

◆ IndexSetType

template<class FunctionSpaceTraits >
typedef BaseType::IndexSetType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::IndexSetType

◆ IntersectionType

template<class FunctionSpaceTraits >
typedef GridPartType::IntersectionType Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::IntersectionType
inherited

type of the intersections

◆ IteratorType

template<class FunctionSpaceTraits >
typedef BaseType::IteratorType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::IteratorType

◆ LocalBlockIndices

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

◆ LocalDofVectorAllocatorType

template<class FunctionSpaceTraits >
typedef StackAllocator< typename BaseType::RangeFieldType, LocalDofVectorStackType* > Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::LocalDofVectorAllocatorType
protected

◆ LocalDofVectorStackType

template<class FunctionSpaceTraits >
typedef ThreadSafeValue< UninitializedObjectStack > Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::LocalDofVectorStackType
protected

◆ LocalDofVectorType

template<class FunctionSpaceTraits >
typedef Dune::DynamicVector< typename BaseType::RangeFieldType, LocalDofVectorAllocatorType > Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::LocalDofVectorType
protected

◆ LocalFunctionType

template<class FunctionSpaceTraits >
typedef BasicTemporaryLocalFunction< ThisType, LocalDofVectorType > Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::LocalFunctionType
protected

◆ SlaveDofsType

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

deprecated type

◆ Traits

template<class FunctionSpaceTraits >
typedef FunctionSpaceTraits Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::Traits

Constructor & Destructor Documentation

◆ DiscreteFunctionSpaceDefault()

template<class FunctionSpaceTraits >
Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::DiscreteFunctionSpaceDefault ( GridPartType gridPart,
const InterfaceType  commInterface = InteriorBorder_All_Interface,
const CommunicationDirection  commDirection = ForwardCommunication 
)
inlineexplicit

constructor

Member Function Documentation

◆ adapt()

template<class FunctionSpaceTraits >
template<class Vector >
void Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::adapt ( const Vector &  polynomialOrders,
const int  polOrderShift = 0 
) const
inline

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

◆ addFunction()

template<class FunctionSpaceTraits >
template<class DiscreteFunction >
void Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::addFunction ( DiscreteFunction &  df) const
inline

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()

template<class FunctionSpaceTraits >
const AuxiliaryDofsType & Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::auxiliaryDofs ( ) const
inline

get auxiliary dofs

◆ basisFunctionSet()

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

◆ begin()

template<class FunctionSpaceTraits >
IteratorType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::begin ( ) const
inline

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 FunctionSpaceTraits >
BlockMapperType & Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::blockMapper ( ) const
inlineinherited

get a reference to the block mapper

Returns
refernce to the block mapper

◆ communicate() [1/2]

template<class FunctionSpaceTraits >
template<class DiscreteFunction >
void Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::communicate ( DiscreteFunction &  discreteFunction) const
inline

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

Parameters
discreteFunctiondiscrete function to be communicated

◆ communicate() [2/2]

template<class FunctionSpaceTraits >
template<class DiscreteFunction , class Operation >
void Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::communicate ( DiscreteFunction &  discreteFunction,
const Operation &  op 
) const
inline

communicate data for given discrete function

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

◆ communicationDirection()

template<class FunctionSpaceTraits >
CommunicationDirection Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::communicationDirection ( ) const
inline

return the communication interface appropriate for this space

Returns
communication interface

◆ communicationInterface()

template<class FunctionSpaceTraits >
InterfaceType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::communicationInterface ( ) const
inline

return the communication interface appropriate for this space

Returns
communication interface

◆ communicator()

template<class FunctionSpaceTraits >
const CommunicationManagerType & Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::communicator ( ) const
inline

return reference to communicator (see CommunicationManager)

Returns
reference to communicator

◆ continuous() [1/2]

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

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/2]

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

◆ createDataHandle()

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

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

◆ end()

template<class FunctionSpaceTraits >
IteratorType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::end ( ) const
inline

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()

template<class FunctionSpaceTraits >
template<class FunctorType >
void Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::forEach ( FunctorType &  f) const
inline

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: discretefunctionspace.hh:644
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
BaseType::IteratorType IteratorType
Definition: discretefunctionspace.hh:643
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

◆ geomTypes()

template<class FunctionSpaceTraits >
const std::vector< GeometryType > & Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::geomTypes ( int  codim) const
inlineprotected

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

◆ grid() [1/2]

template<class FunctionSpaceTraits >
GridType & Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::grid ( )
inline

get reference to grid this discrete function space belongs to

Returns
reference to grid

◆ grid() [2/2]

template<class FunctionSpaceTraits >
const GridType & Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::grid ( ) const
inline

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]

template<class FunctionSpaceTraits >
GridPartType & Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::gridPart ( ) const
inline

◆ indexSet()

template<class FunctionSpaceTraits >
const IndexSetType & Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::indexSet ( ) const
inline

Get a reference to the associated index set.

Returns
const reference to index set

◆ maxNumDofs()

template<class FunctionSpaceTraits >
int Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::maxNumDofs ( ) const
inline

return the maximal number of dofs on entities

◆ multipleBasisFunctionSets()

template<class FunctionSpaceTraits >
bool Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::multipleBasisFunctionSets ( ) const
inline

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()

template<class FunctionSpaceTraits >
bool Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::multipleGeometryTypes ( ) const
inline

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/2]

template<class FunctionSpaceTraits >
int Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::order ( ) const
inlineinherited

get global order of space

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

◆ order() [2/2]

template<class FunctionSpaceTraits >
int Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::order ( const EntityType entity) const
inline

default implementation of the method order

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

◆ removeFunction()

template<class FunctionSpaceTraits >
template<class DiscreteFunction >
void Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::removeFunction ( DiscreteFunction &  df) const
inline

default implementation of removeFunction does nothing at the moment

◆ sequence()

template<class FunctionSpaceTraits >
int Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::sequence ( ) const
inline

get index of the sequence in grid sequences

Returns
number of current sequence

◆ size()

template<class FunctionSpaceTraits >
int Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::size ( ) const
inline

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 FunctionSpaceTraits >
DFSpaceIdentifier Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::type ( ) const
inlineinherited

return type identifier of discrete function space

Returns
return type identifier of discrete function space

Member Data Documentation

◆ allGeomTypes_

template<class FunctionSpaceTraits >
const AllGeometryTypes Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::allGeomTypes_
protected

◆ auxiliaryDofs_

template<class FunctionSpaceTraits >
std::unique_ptr< std::pair< AuxiliaryDofsType, int >, typename AuxiliaryDofsProviderType::Deleter > Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::auxiliaryDofs_
mutableprotected

◆ commDirection_

template<class FunctionSpaceTraits >
const CommunicationDirection Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::commDirection_
protected

◆ commInterface_

template<class FunctionSpaceTraits >
const InterfaceType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::commInterface_
protected

◆ communicator_

template<class FunctionSpaceTraits >
std::unique_ptr< CommunicationManagerType > Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::communicator_
mutableprotected

◆ dofManager_

template<class FunctionSpaceTraits >
DofManagerType& Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::dofManager_
protected

◆ gridPart_

template<class FunctionSpaceTraits >
GridPartType& Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::gridPart_
protected

◆ ldvAllocator_

template<class FunctionSpaceTraits >
LocalDofVectorAllocatorType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::ldvAllocator_
mutableprotected

◆ ldvStack_

template<class FunctionSpaceTraits >
LocalDofVectorStackType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::ldvStack_
mutableprotected

◆ localBlockSize

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

size of local blocks


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