DUNE-FEM (unstable)
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>
Public Types | |
| typedef DofManager< GridType > | DofManagerType |
| type of DoF manager | |
| typedef CommunicationManager< DiscreteFunctionSpaceType > | CommunicationManagerType |
| type of communication manager | |
| typedef Traits::FunctionSpaceType | FunctionSpaceType |
| type of function space | |
| typedef Traits::BasisFunctionSetType | BasisFunctionSetType |
| type of basis function set of this space | |
| 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 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 | primarySize () const |
| get number of primary DoFs for this space More... | |
| int | auxiliarySize () const |
| get number of auxiliary DoFs for this space More... | |
| 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 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 | |
| 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 | |
| const std::vector< GeometryType > & | geomTypes (int codim) const |
| returns true if the grid has more than one geometry type 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 | |
Static Public Attributes | |
| static constexpr std::size_t | localBlockSize = Hybrid::size( LocalBlockIndices() ) |
| size of local blocks | |
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... | |
Detailed Description
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 Function Documentation
◆ auxiliarySize()
|
inline |
get number of auxiliary DoFs for this space
- Returns
- number of auxiliary DoFs (degrees of freedom that are NOT owned by this process)
References Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::primarySize(), and Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::size().
◆ basisFunctionSet()
|
inlineinherited |
get basis function set for given entity
- Parameters
-
[in] entity entity (of codim 0) for which base function is requested
- Returns
- BasisFunctionSet for the entity
◆ begin()
|
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.
Referenced by Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::forEach().
◆ blockMapper()
|
inlineinherited |
get a reference to the block mapper
- Returns
- refernce to the block mapper
Referenced by Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::auxiliaryDofs(), Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::maxNumDofs(), Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::operator==(), and Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::size().
◆ communicate() [1/2]
|
inline |
communicate data for given discrete function using the space's default communication operation
- Parameters
-
discreteFunction discrete function to be communicated
References Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::communicate().
Referenced by Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::communicate().
◆ communicate() [2/2]
|
inline |
communicate data for given discrete function
- Parameters
-
discreteFunction discrete function to be communicated [in] op communication operation to use (see DFCommunicationOperation)
References Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::communicator(), Dune::Fem::DefaultCommunicationManager< Space >::exchange(), and Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::localBlockSize.
◆ communicationDirection()
|
inline |
return the communication interface appropriate for this space
- Returns
- communication interface
◆ communicationInterface()
|
inline |
return the communication interface appropriate for this space
- Returns
- communication interface
◆ communicator()
|
inline |
return reference to communicator (see CommunicationManager)
- Returns
- reference to communicator
Referenced by Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::communicate().
◆ continuous() [1/2]
|
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]
|
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
-
intersection Intersection for which we want to know the continuety
- Returns
- true if the space contians functions which are continuous over the intersection, false otherwise
◆ createDataHandle()
|
inline |
- Note
- The default implementation is return CommDataHandle< DiscreteFunction, Operation > :: Type( discreteFunction );Traits::template CommDataHandle< DiscreteFunction, Operation >::Type Typetype of communication data handleDefinition: discretefunctionspace.hh:249
References Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::localBlockSize.
◆ end()
|
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.
Referenced by Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::forEach().
◆ forEach()
|
inline |
apply a functor to each entity in the associated grid partition
The functor must provide an the following operator
- Parameters
-
[in] f functor to apply
- Note
- The default implementation simply does the following: f( *it );IteratorType end() constget iterator pointing behind the last entity of the associated grid partitionDefinition: discretefunctionspace.hh:817IteratorType begin() constget iterator pointing to the first entity of the associated grid partitionDefinition: discretefunctionspace.hh:807GridPartType::template Codim< Traits::codimension >::IteratorType IteratorTypetype of iterator for grid traversalDefinition: discretefunctionspace.hh:222
References Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::begin(), and Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::end().
◆ geomTypes()
|
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
◆ grid() [1/2]
|
inline |
get reference to grid this discrete function space belongs to
- Returns
- reference to grid
◆ grid() [2/2]
|
inline |
get reference to grid this discrete function space belongs to
- Returns
- constant reference to grid
◆ gridPart() [1/2]
|
inlineinherited |
get a reference to the associated grid partition
- Returns
- reference to the grid partition
◆ gridPart() [2/2]
|
inline |
◆ indexSet()
|
inline |
Get a reference to the associated index set.
- Returns
- const reference to index set
◆ multipleBasisFunctionSets()
|
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()
|
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]
|
inlineinherited |
get global order of space
- Returns
- order of space, i.e., the maximal polynomial order of base functions
◆ order() [2/2]
|
inline |
default implementation of the method order
- Returns
- returns max polynomial order for each entity using the method order()
◆ primarySize()
|
inline |
get number of primary DoFs for this space
- Returns
- number of primary DoFs (degrees of freedom that are owned by this process )
References Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::auxiliaryDofs(), Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::localBlockSize, and Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::primarySize().
Referenced by Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::auxiliarySize().
◆ sequence()
|
inline |
get index of the sequence in grid sequences
- Returns
- number of current sequence
Referenced by Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::auxiliaryDofs().
◆ size()
|
inline |
get number of DoFs for this space
- Returns
- number of DoFs (degrees of freedom)
References Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::blockMapper(), and Dune::Fem::DiscreteFunctionSpaceInterface< FunctionSpaceTraits >::localBlockSize.
Referenced by Dune::Fem::DiscreteFunctionSpaceDefault< FunctionSpaceTraits >::auxiliarySize().
◆ type()
|
inlineinherited |
return type identifier of discrete function space
- Returns
- return type identifier of discrete function space
The documentation for this class was generated from the following file:
- dune/fem/space/common/discretefunctionspace.hh
|
Legal Statements / Impressum |
Hosted by TU Dresden & Uni Heidelberg |
generated with Hugo v0.111.3
(Nov 2, 23:43, 2025)