dune-fem 2.8-git
|
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>
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< GridType > | DofManagerType |
type of DoF manager More... | |
typedef CommunicationManager< DiscreteFunctionSpaceType > | CommunicationManagerType |
type of communication manager More... | |
typedef BaseType::BlockMapperType | BlockMapperType |
typedef BaseType::AuxiliaryDofsType | AuxiliaryDofsType |
typedef Traits::FunctionSpaceType | FunctionSpaceType |
type of function space More... | |
typedef Traits::BasisFunctionSetType | BasisFunctionSetType |
type of basis function set of this space More... | |
typedef Traits::LocalBlockIndices | LocalBlockIndices |
typedef GridPartType::IntersectionType | IntersectionType |
type of the intersections More... | |
typedef AuxiliaryDofsType | SlaveDofsType |
deprecated type More... | |
Public Member Functions | |
DiscreteFunctionSpaceDefault (GridPartType &gridPart, const InterfaceType commInterface=InteriorBorder_All_Interface, const CommunicationDirection commDirection=ForwardCommunication) | |
constructor More... | |
int | sequence () const |
get index of the sequence in grid sequences More... | |
int | order (const EntityType &entity) const |
default implementation of the method order More... | |
const GridType & | grid () const |
get reference to grid this discrete function space belongs to More... | |
GridType & | grid () |
get reference to grid this discrete function space belongs to More... | |
GridPartType & | gridPart () const |
const IndexSetType & | indexSet () const |
Get a reference to the associated index set. More... | |
int | size () const |
get number of DoFs for this space More... | |
int | maxNumDofs () const |
return the maximal number of dofs on entities More... | |
IteratorType | begin () const |
get iterator pointing to the first entity of the associated grid partition More... | |
IteratorType | end () const |
get iterator pointing behind the last entity of the associated grid partition More... | |
template<class FunctorType > | |
void | forEach (FunctorType &f) const |
apply a functor to each entity in the associated grid partition More... | |
bool | multipleGeometryTypes () const |
returns true if the grid has more than one geometry type More... | |
bool | multipleBasisFunctionSets () const |
returns true if base function sets depend on the entity More... | |
InterfaceType | communicationInterface () const |
return the communication interface appropriate for this space More... | |
CommunicationDirection | communicationDirection () const |
return the communication interface appropriate for this space More... | |
const CommunicationManagerType & | communicator () const |
return reference to communicator (see CommunicationManager) More... | |
template<class DiscreteFunction > | |
void | communicate (DiscreteFunction &discreteFunction) const |
communicate data for given discrete function using the space's default communication operation More... | |
template<class DiscreteFunction , class Operation > | |
void | communicate (DiscreteFunction &discreteFunction, const Operation &op) const |
communicate data for given discrete function More... | |
template<class DiscreteFunction , class Operation > | |
BaseType::template CommDataHandle< DiscreteFunction, Operation >::Type | createDataHandle (DiscreteFunction &discreteFunction, const Operation &operation) const |
const AuxiliaryDofsType & | auxiliaryDofs () const |
get auxiliary dofs More... | |
template<class DiscreteFunction > | |
void | addFunction (DiscreteFunction &df) const |
default implementation of addFunction does nothing at the moment More... | |
template<class DiscreteFunction > | |
void | removeFunction (DiscreteFunction &df) const |
default implementation of removeFunction does nothing at the moment More... | |
template<class Vector > | |
void | adapt (const Vector &polynomialOrders, const int polOrderShift=0) const |
default implementation of adapt does nothing, its only used in PAdaptiveLagrangeSpace More... | |
DFSpaceIdentifier | type () const |
return type identifier of discrete function space More... | |
const BasisFunctionSetType | basisFunctionSet (const EntityType &entity) const |
get basis function set for given entity More... | |
bool | continuous () const |
returns true if the space contains only globally continuous functions More... | |
bool | continuous (const IntersectionType &intersection) const |
returns true if discrete functions over this space have zero jump over the given intersection. More... | |
int | order () const |
get global order of space More... | |
BlockMapperType & | blockMapper () const |
get a reference to the block mapper More... | |
GridPartType & | gridPart () |
get a reference to the associated grid partition More... | |
const AuxiliaryDofsType & | slaveDofs () const |
deprecated method, use auxiliaryDofs More... | |
Static Public Attributes | |
static constexpr std::size_t | localBlockSize = Hybrid::size( LocalBlockIndices() ) |
size of local blocks More... | |
Protected Types | |
typedef SingletonList< std::pair< GridPartType *, BlockMapperType * >, std::pair< AuxiliaryDofsType, int >, AuxiliaryDofsFactory > | AuxiliaryDofsProviderType |
typedef ThreadSafeValue< UninitializedObjectStack > | LocalDofVectorStackType |
typedef StackAllocator< typename BaseType::RangeFieldType, LocalDofVectorStackType * > | LocalDofVectorAllocatorType |
typedef Dune::DynamicVector< typename BaseType::RangeFieldType, LocalDofVectorAllocatorType > | LocalDofVectorType |
typedef BasicTemporaryLocalFunction< ThisType, LocalDofVectorType > | LocalFunctionType |
typedef AllGeomTypes< IndexSetType, GridType > | AllGeometryTypes |
Protected Member Functions | |
const std::vector< GeometryType > & | geomTypes (int codim) const |
returns true if the grid has more than one geometry type More... | |
const DiscreteFunctionSpaceType & | asImp () const |
DiscreteFunctionSpaceType & | asImp () |
Protected Attributes | |
GridPartType & | gridPart_ |
LocalDofVectorStackType | ldvStack_ |
LocalDofVectorAllocatorType | ldvAllocator_ |
const AllGeometryTypes | allGeomTypes_ |
DofManagerType & | dofManager_ |
const InterfaceType | commInterface_ |
const CommunicationDirection | commDirection_ |
std::unique_ptr< CommunicationManagerType > | communicator_ |
std::unique_ptr< std::pair< AuxiliaryDofsType, int >, typename AuxiliaryDofsProviderType::Deleter > | auxiliaryDofs_ |
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 More... | |
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.
|
protected |
|
protected |
typedef BaseType::AuxiliaryDofsType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::AuxiliaryDofsType |
|
inherited |
type of basis function set of this space
typedef BaseType::BlockMapperType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::BlockMapperType |
typedef CommunicationManager< DiscreteFunctionSpaceType > Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::CommunicationManagerType |
type of communication manager
typedef Traits::DiscreteFunctionSpaceType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::DiscreteFunctionSpaceType |
typedef DofManager< GridType > Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::DofManagerType |
type of DoF manager
typedef BaseType::EntityType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::EntityType |
|
inherited |
type of function space
typedef BaseType::GridPartType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::GridPartType |
typedef BaseType::GridType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::GridType |
typedef BaseType::IndexSetType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::IndexSetType |
|
inherited |
type of the intersections
typedef BaseType::IteratorType Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::IteratorType |
|
inherited |
|
protected |
|
protected |
|
protected |
|
protected |
|
inherited |
deprecated type
typedef FunctionSpaceTraits Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::Traits |
|
inlineexplicit |
constructor
|
inline |
default implementation of adapt does nothing, its only used in PAdaptiveLagrangeSpace
|
inline |
default implementation of addFunction does nothing at the moment
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inline |
get auxiliary dofs
|
inlineinherited |
get basis function set for given entity
[in] | entity | entity (of codim 0) for which base function is requested |
|
inline |
get iterator pointing to the first entity of the associated grid partition
|
inlineinherited |
get a reference to the block mapper
|
inline |
communicate data for given discrete function using the space's default communication operation
discreteFunction | discrete function to be communicated |
|
inline |
communicate data for given discrete function
discreteFunction | discrete function to be communicated | |
[in] | op | communication operation to use (see DFCommunicationOperation) |
|
inline |
return the communication interface appropriate for this space
|
inline |
return the communication interface appropriate for this space
|
inline |
return reference to communicator (see CommunicationManager)
|
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.
|
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.
intersection | Intersection for which we want to know the continuety |
|
inline |
|
inline |
get iterator pointing behind the last entity of the associated grid partition
|
inline |
apply a functor to each entity in the associated grid partition
The functor must provide an the following operator
[in] | f | functor to apply |
|
inlineprotected |
returns true if the grid has more than one geometry type
|
inline |
get reference to grid this discrete function space belongs to
|
inline |
get reference to grid this discrete function space belongs to
|
inlineinherited |
get a reference to the associated grid partition
|
inline |
|
inline |
Get a reference to the associated index set.
|
inline |
return the maximal number of dofs on entities
|
inline |
returns true if base function sets depend on the entity
|
inline |
returns true if the grid has more than one geometry type
|
inlineinherited |
get global order of space
|
inline |
default implementation of the method order
|
inline |
default implementation of removeFunction does nothing at the moment
|
inline |
get index of the sequence in grid sequences
|
inline |
get number of DoFs for this space
|
inlineinherited |
deprecated method, use auxiliaryDofs
|
inlineinherited |
return type identifier of discrete function space
|
protected |
|
mutableprotected |
|
protected |
|
protected |
|
mutableprotected |
|
protected |
|
protected |
|
mutableprotected |
|
mutableprotected |
|
staticconstexprinherited |
size of local blocks