|
| DofManager (const ThisType &)=delete |
|
double | memoryFactor () const |
| return factor to over estimate new memory allocation More...
|
|
template<class IndexSetType > |
void | addIndexSet (const IndexSetType &iset) |
| add index set to dof manager's list of index sets More...
|
|
template<class IndexSetType > |
void | removeIndexSet (const IndexSetType &iset) |
| removed index set from dof manager's list of index sets More...
|
|
template<class ManagedDofStorageImp > |
void | addDofStorage (ManagedDofStorageImp &dofStorage) |
| add a managed dof storage to the dof manager. More...
|
|
template<class ManagedDofStorageImp > |
void | removeDofStorage (ManagedDofStorageImp &dofStorage) |
| remove a managed dof storage from the dof manager. More...
|
|
NewIndexSetRestrictProlongType & | indexSetRestrictProlong () |
| returns the index set restriction and prolongation operator More...
|
|
IndexSetRestrictProlongNoResizeType & | indexSetRestrictProlongNoResize () |
| returns the index set restriction and prolongation operator More...
|
|
bool | hasIndexSets () const |
| if dofmanagers list is not empty return true More...
|
|
size_t | usedMemorySize () const |
| return used memory size of all MemObjects in bytes. More...
|
|
void | resizeForRestrict () |
| resize memory before data restriction during grid adaptation is done. More...
|
|
void | reserveMemory (int nsize, bool dummy=false) |
| reserve memory for at least nsize elements, dummy is needed for dune-grid ALUGrid version More...
|
|
int | sequence () const |
| return number of sequence, if dofmanagers memory was changed by calling some method like resize, then also this number will increase More...
|
|
void | resize () |
| Resize index sets and memory due to what the mapper has as new size. More...
|
|
void | insertEntity (ConstElementType &element) |
| Inserts entity to all index sets added to dof manager. More...
|
|
void | removeEntity (ConstElementType &element) |
| Removes entity from all index sets added to dof manager. More...
|
|
void | resizeMemory () |
| resize the MemObject if necessary More...
|
|
void | enlargeMemory () |
| resize the MemObject if necessary More...
|
|
void | incrementSequenceNumber () |
| increase the DofManagers internal sequence number More...
|
|
void | compress () |
| Compress all data that is hold by this dofmanager. More...
|
|
bool | notifyGlobalChange (const bool wasChanged) const |
| communicate new sequence number More...
|
|
template<class DataCollType > |
void | addDataInliner (DataCollType &d) |
| add data handler for data inlining to dof manager More...
|
|
void | clearDataInliners () |
| clear data inliner list More...
|
|
template<class DataCollType > |
void | addDataXtractor (DataCollType &d) |
| add data handler for data xtracting to dof manager More...
|
|
void | clearDataXtractors () |
| clear data xtractor list More...
|
|
bool | contains (const int dim, const int codim) const |
| the dof manager only transfers element data during load balancing More...
|
|
bool | fixedSize (const int dim, const int codim) const |
| fixed size is false More...
|
|
template<class Entity > |
size_t | size (const Entity &) const |
| for convenience More...
|
|
void | gather (InlineStreamType &str, ConstElementType &element) const |
| packs all data attached to this entity More...
|
|
template<class MessageBuffer , class Entity > |
void | gather (MessageBuffer &str, const Entity &entity) const |
|
void | scatter (XtractStreamType &str, ConstElementType &element, size_t) |
| unpacks all data attached of this entity from message buffer More...
|
|
template<class MessageBuffer , class Entity > |
void | scatter (MessageBuffer &str, const Entity &entity, size_t) |
| unpacks all data of this entity from message buffer More...
|
|
void | backup () const |
| :: backup More...
|
|
void | restore () |
| :: restore More...
|
|
template<class OutStream > |
void | write (OutStream &out) const |
| write all index sets to a given stream More...
|
|
template<class InStream > |
void | read (InStream &in) |
| read all index sets from a given stream More...
|
|
template<class Grid>
class Dune::Fem::DofManager< Grid >
The DofManager is responsible for managing memory allocation and freeing for all discrete functions living on the grid the manager belongs to. There is only one DofManager per grid. Each discrete function knows its dofmanager and can sign in. If the grid is adapted, then the dofmanager reorganizes the memory if necessary. The DofManager holds a list of MemObjects which manage the memory and the corresponding mapper so they can determine the size of new memory. Furthermore the DofManager holds an IndexSet which the DofMapper needs for calculating the indices in the dof vector for a given entity and local dof number. This IndexSet is delivered to the mapper when a function space is created. The default value for the IndexSet is the DefaultIndexSet class which is mostly a wrapper for the grid indices.