dune-fem 2.8.0
|
This is a wrapper for the default implemented restriction/prolongation operator, which only takes a discrete function template. More...
#include <dune/fem/space/common/restrictprolonginterface.hh>
Public Types | |
typedef DiscreteFunction | DiscreteFunctionType |
typedef BaseType::DomainFieldType | DomainFieldType |
typedef DiscreteFunctionType::DiscreteFunctionSpaceType | DiscreteFunctionSpaceType |
typedef ConstLocalFunction< DiscreteFunctionType > | ConstLocalFunctionType |
typedef MutableLocalFunction< DiscreteFunctionType > | MutableLocalFunctionType |
typedef DiscreteFunctionType::GridPartType | GridPartType |
typedef DefaultLocalRestrictProlong< DiscreteFunctionSpaceType > | LocalRestrictProlongType |
typedef Traits::RestProlImp | RestProlImp |
type of restrict-prolong operator implementation | |
Public Member Functions | |
RestrictProlongDefault (const RestrictProlongDefault &other) | |
RestrictProlongDefault (DiscreteFunctionType &discreteFunction) | |
void | setFatherChildWeight (const DomainFieldType &weight) const |
explicit set volume ratio of son and father | |
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 , class Operation > | |
void | addToList (Communicator &comm, const Operation &op) |
add discrete function to communicator with given unpack operation | |
template<class Communicator > | |
void | addToList (Communicator &comm) |
add discrete function to communicator | |
template<class Communicator > | |
void | removeFromList (Communicator &comm) |
remove discrete function from communicator | |
template<class LoadBalancer > | |
void | addToLoadBalancer (LoadBalancer &lb) |
add discrete function to load balancer | |
void | setFatherChildWeight (const DomainFieldType &weight) const |
explicit set volume ratio of son and father | |
void | initialize () |
void | finalize () |
Protected Member Functions | |
template<class IndexSet , class Entity > | |
bool | entitiesAreCopies (const IndexSet &indexSet, const Entity &father, const Entity &son) const |
return true if father and son have the same index | |
template<class Entity > | |
DomainFieldType | calcWeight (const Entity &father, const Entity &son) const |
calculates the weight, i.e. (volume son)/(volume father) | |
const RestProlImp & | asImp () const |
RestProlImp & | asImp () |
Protected Attributes | |
DiscreteFunctionType & | discreteFunction_ |
ConstLocalFunctionType | constLf_ |
MutableLocalFunctionType | targetLf_ |
LocalRestrictProlongType | localRP_ |
This is a wrapper for the default implemented restriction/prolongation operator, which only takes a discrete function template.
typedef ConstLocalFunction< DiscreteFunctionType > Dune::Fem::RestrictProlongDefault< DiscreteFunction >::ConstLocalFunctionType |
typedef DiscreteFunctionType::DiscreteFunctionSpaceType Dune::Fem::RestrictProlongDefault< DiscreteFunction >::DiscreteFunctionSpaceType |
typedef DiscreteFunction Dune::Fem::RestrictProlongDefault< DiscreteFunction >::DiscreteFunctionType |
typedef BaseType::DomainFieldType Dune::Fem::RestrictProlongDefault< DiscreteFunction >::DomainFieldType |
typedef DiscreteFunctionType::GridPartType Dune::Fem::RestrictProlongDefault< DiscreteFunction >::GridPartType |
typedef DefaultLocalRestrictProlong< DiscreteFunctionSpaceType > Dune::Fem::RestrictProlongDefault< DiscreteFunction >::LocalRestrictProlongType |
typedef MutableLocalFunction< DiscreteFunctionType > Dune::Fem::RestrictProlongDefault< DiscreteFunction >::MutableLocalFunctionType |
|
inherited |
type of restrict-prolong operator implementation
|
inline |
|
inlineexplicit |
|
inline |
add discrete function to communicator
|
inline |
add discrete function to communicator with given unpack operation
|
inline |
add discrete function to load balancer
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
calculates the weight, i.e. (volume son)/(volume father)
[in] | father | Father Entity |
[in] | son | Son Entity |
|
inlineprotected |
return true if father and son have the same index
|
inlineinherited |
|
inlineinherited |
|
inline |
prolong data to children
|
inline |
prolong data to children
|
inline |
remove discrete function from communicator
|
inline |
finalize restriction on father
|
inline |
restrict data to father
|
inline |
restrict data to father
|
inlineinherited |
|
inline |
explicit set volume ratio of son and father
[in] | weight | volume of son / volume of father |
|
mutableprotected |
|
protected |
|
mutableprotected |
|
mutableprotected |