DUNE-FEM (unstable)
Interface class defining the local behaviour of the restrict/prolong operation (using BN) More...
#include <dune/fem/space/common/restrictprolonginterface.hh>
Public Types | |
typedef Traits::RestProlImp | RestProlImp |
type of restrict-prolong operator implementation | |
typedef Traits::DomainFieldType | DomainFieldType |
field type of domain vector space | |
Public Member Functions | |
void | initialize () |
initialize restrict prolong object (if necessary) before adaptation takes place | |
void | finalize () |
finalize restrict prolong object (if necessary) after adaptation and dof compression was finished | |
void | setFatherChildWeight (const DomainFieldType &weight) const |
explicit set volume ratio of son and father More... | |
template<class Entity > | |
void | restrictLocal (const Entity &father, const Entity &son, bool initialize) const |
restrict data to father | |
template<class Entity , class LocalGeometry > | |
void | restrictLocal (const Entity &father, const Entity &son, const LocalGeometry &geometryInFather, bool initialize) const |
restrict data to father | |
template<class Entity > | |
void | restrictFinalize (const Entity &father) const |
finalize restriction on father | |
template<class Entity > | |
void | prolongLocal (const Entity &father, const Entity &son, bool initialize) const |
prolong data to children | |
template<class Entity , class LocalGeometry > | |
void | prolongLocal (const Entity &father, const Entity &son, const LocalGeometry &geometryInFather, bool initialize) const |
prolong data to children | |
template<class Communicator > | |
void | addToList (Communicator &comm) |
add discrete function to communicator More... | |
template<class LoadBalancer > | |
void | addToLoadBalancer (LoadBalancer &lb) |
add discrete function to load balancer More... | |
Protected Member Functions | |
template<class Entity > | |
DomainFieldType | calcWeight (const Entity &father, const Entity &son) const |
calculates the weight, i.e. (volume son)/(volume father) More... | |
Detailed Description
class Dune::Fem::RestrictProlongInterface< Traits >
Interface class defining the local behaviour of the restrict/prolong operation (using BN)
Member Function Documentation
◆ addToList()
|
inline |
add discrete function to communicator
- Parameters
-
[in] comm Communicator to add the discrete functions to
References Dune::Fem::RestrictProlongInterface< Traits >::addToList(), and CHECK_AND_CALL_INTERFACE_IMPLEMENTATION.
Referenced by Dune::Fem::RestrictProlongInterface< Traits >::addToList().
◆ addToLoadBalancer()
|
inline |
add discrete function to load balancer
- Parameters
-
[in] lb LoadBalancer to add the discrete functions to
References Dune::Fem::RestrictProlongInterface< Traits >::addToLoadBalancer(), and CHECK_AND_CALL_INTERFACE_IMPLEMENTATION.
Referenced by Dune::Fem::RestrictProlongInterface< Traits >::addToLoadBalancer().
◆ calcWeight()
|
inlineprotected |
calculates the weight, i.e. (volume son)/(volume father)
- Returns
- proportion between fahter and son volume
References Dune::Entity< cd, dim, GridImp, EntityImp >::geometry().
◆ setFatherChildWeight()
|
inline |
explicit set volume ratio of son and father
- Parameters
-
[in] weight volume of son / volume of father
- Note
- If this ratio is set, it is assume to be constant.
References CHECK_AND_CALL_INTERFACE_IMPLEMENTATION, and Dune::Fem::RestrictProlongInterface< Traits >::setFatherChildWeight().
Referenced by Dune::Fem::RestrictProlongInterface< Traits >::setFatherChildWeight().
The documentation for this class was generated from the following file:
- dune/fem/space/common/restrictprolonginterface.hh