DUNE-FEM (unstable)
generic implementation of a Discontinuous Galerkin space based on a fixed family of basis function sets More...
#include <dune/fem/space/discontinuousgalerkin/generic.hh>
Public Types | |
typedef BaseType::GridPartType | GridPartType |
type of underlying grid part More... | |
typedef BaseType::EntityType | EntityType |
type of entity of codimension 0 More... | |
typedef BaseType::IntersectionType | IntersectionType |
type of the intersections More... | |
typedef Traits::BasisFunctionSetsType | BasisFunctionSetsType |
basis function sets | |
typedef BaseType::BasisFunctionSetType | BasisFunctionSetType |
type of basis function set of this space More... | |
typedef BaseType::BlockMapperType | BlockMapperType |
type of block mapper of this space More... | |
typedef Traits::DiscreteFunctionSpaceType | DiscreteFunctionSpaceType |
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 AuxiliaryDofsType | SlaveDofsType |
deprecated type | |
Public Member Functions | |
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 |
GridPartType & | gridPart () |
get a reference to the associated grid partition More... | |
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... | |
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... | |
void | communicate (DiscreteFunction &discreteFunction) const |
communicate data for given discrete function using the space's default communication operation More... | |
void | communicate (DiscreteFunction &discreteFunction, const Operation &op) const |
communicate data for given discrete function More... | |
BaseType::template CommDataHandle< DiscreteFunction, Operation >::Type | createDataHandle (DiscreteFunction &discreteFunction, const Operation &operation) const |
const AuxiliaryDofsType & | auxiliaryDofs () 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 | |
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... | |
const AuxiliaryDofsType & | slaveDofs () const |
deprecated method, use auxiliaryDofs | |
Construction | |
GenericDiscontinuousGalerkinSpace (GridPartType &gridPart, BasisFunctionSetsType &&basisFunctionSets, const InterfaceType commInterface=InteriorBorder_All_Interface, const CommunicationDirection commDirection=ForwardCommunication) | |
Copying and assignment | |
GenericDiscontinuousGalerkinSpace (const ThisType &)=delete | |
GenericDiscontinuousGalerkinSpace (ThisType &&other)=default | |
move constructor | |
GenericDiscontinuousGalerkinSpace & | operator= (const ThisType &)=default |
Static Public Attributes | |
static const int | codimension = Traits::codimension |
static constexpr std::size_t | localBlockSize |
size of local blocks | |
Related Functions | |
(Note that these are not member functions.) | |
bool | operator== (const DiscreteFunctionSpaceInterface< Traits > &X, const DiscreteFunctionSpaceInterface< Traits > &Y) |
check two spaces for equality More... | |
Public member methods | |
BasisFunctionSetType | basisFunctionSet (const EntityType &entity) const |
get basis function set for given entity More... | |
int | order () const |
get global order of space More... | |
int | order (const EntityType &entity) const |
get global order of space More... | |
BlockMapperType & | blockMapper () const |
get a reference to the block mapper More... | |
static DFSpaceIdentifier | type () |
return type identifier of discrete function space More... | |
static constexpr bool | continuous () |
returns true if the space contains only globally continuous functions More... | |
static constexpr bool | continuous (const IntersectionType &intersection) |
returns true if the space contains only globally continuous functions More... | |
Detailed Description
class Dune::Fem::GenericDiscontinuousGalerkinSpace< Traits >
generic implementation of a Discontinuous Galerkin space based on a fixed family of basis function sets
- Template Parameters
-
Traits traits class
Member Typedef Documentation
◆ BasisFunctionSetType
typedef BaseType::BasisFunctionSetType Dune::Fem::GenericDiscontinuousGalerkinSpace< Traits >::BasisFunctionSetType |
type of basis function set of this space
◆ BlockMapperType
typedef BaseType::BlockMapperType Dune::Fem::GenericDiscontinuousGalerkinSpace< Traits >::BlockMapperType |
type of block mapper of this space
◆ DiscreteFunctionSpaceType
typedef Traits::DiscreteFunctionSpaceType Dune::Fem::GenericDiscontinuousGalerkinSpace< Traits >::DiscreteFunctionSpaceType |
type of discrete function space implementation
◆ EntityType
typedef BaseType::EntityType Dune::Fem::GenericDiscontinuousGalerkinSpace< Traits >::EntityType |
type of entity of codimension 0
◆ GridPartType
typedef BaseType::GridPartType Dune::Fem::GenericDiscontinuousGalerkinSpace< Traits >::GridPartType |
type of underlying grid part
◆ IntersectionType
typedef BaseType::IntersectionType Dune::Fem::GenericDiscontinuousGalerkinSpace< Traits >::IntersectionType |
type of the intersections
Member Function Documentation
◆ auxiliarySize()
|
inlineinherited |
get number of auxiliary DoFs for this space
- Returns
- number of auxiliary DoFs (degrees of freedom that are NOT owned by this process)
◆ basisFunctionSet() [1/2]
|
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
◆ basisFunctionSet() [2/2]
|
inline |
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()
|
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()
|
inline |
get a reference to the block mapper
- Returns
- refernce to the block mapper
◆ communicate() [1/2]
|
inlineinherited |
communicate data for given discrete function using the space's default communication operation
- Parameters
-
discreteFunction discrete function to be communicated
◆ communicate() [2/2]
|
inlineinherited |
communicate data for given discrete function
- Parameters
-
discreteFunction discrete function to be communicated [in] op communication operation to use (see DFCommunicationOperation)
◆ communicationDirection()
|
inlineinherited |
return the communication interface appropriate for this space
- Returns
- communication interface
◆ communicationInterface()
|
inlineinherited |
return the communication interface appropriate for this space
- Returns
- communication interface
◆ communicator()
|
inlineinherited |
return reference to communicator (see CommunicationManager)
- Returns
- reference to communicator
◆ continuous() [1/4]
|
inlinestaticconstexpr |
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/4]
|
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() [3/4]
|
inlinestaticconstexpr |
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() [4/4]
|
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()
|
inlineinherited |
- Note
- The default implementation is return CommDataHandle< DiscreteFunction, Operation > :: Type( discreteFunction );
◆ end()
|
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()
|
inlineinherited |
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
◆ geomTypes()
|
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
◆ grid() [1/2]
|
inlineinherited |
get reference to grid this discrete function space belongs to
- Returns
- reference to grid
◆ grid() [2/2]
|
inlineinherited |
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]
|
inlineinherited |
◆ indexSet()
|
inlineinherited |
Get a reference to the associated index set.
- Returns
- const reference to index set
◆ multipleBasisFunctionSets()
|
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()
|
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]
|
inline |
get global order of space
- Returns
- order of space, i.e., the maximal polynomial order of base functions
◆ order() [2/3]
|
inlineinherited |
default implementation of the method order
- Returns
- returns max polynomial order for each entity using the method order()
◆ order() [3/3]
|
inline |
get global order of space
- Returns
- order of space, i.e., the maximal polynomial order of base functions
◆ primarySize()
|
inlineinherited |
get number of primary DoFs for this space
- Returns
- number of primary DoFs (degrees of freedom that are owned by this process )
◆ sequence()
|
inlineinherited |
get index of the sequence in grid sequences
- Returns
- number of current sequence
◆ size()
|
inlineinherited |
get number of DoFs for this space
- Returns
- number of DoFs (degrees of freedom)
◆ type() [1/2]
|
inlinestatic |
return type identifier of discrete function space
- Returns
- return type identifier of discrete function space
References Dune::Fem::DGSpace_id.
◆ type() [2/2]
|
inlineinherited |
return type identifier of discrete function space
- Returns
- return type identifier of discrete function space
Friends And Related Function Documentation
◆ operator==()
|
related |
check two spaces for equality
This is a default implemented equality operator for discrete function spaces. It assumes the mapper to be a singleton and then compares the addresses of the two mappers.
Note that this method can be specialized by implementing another version that uses the exact traits of the discrete function space.
Member Data Documentation
◆ codimension
|
static |
The documentation for this class was generated from the following file:
- dune/fem/space/discontinuousgalerkin/generic.hh