Dynamic mesh redistribution using the distributor specified in decomposeParDict. More...
Public Member Functions | |
TypeName ("distributor") | |
Runtime type information. More... | |
distributor (fvMesh &mesh) | |
Construct from fvMesh. More... | |
distributor (const distributor &)=delete | |
Disallow default bitwise copy construction. More... | |
virtual | ~distributor () |
Destructor. More... | |
virtual bool | update () |
Distribute the. More... | |
virtual void | topoChange (const polyTopoChangeMap &) |
Update corresponding to the given map. More... | |
virtual void | mapMesh (const polyMeshMap &) |
Update from another mesh using the given map. More... | |
virtual void | distribute (const polyDistributionMap &) |
Update corresponding to the given distribution map. More... | |
virtual bool | write (const bool write=true) const |
Write using given format, version and compression. More... | |
void | operator= (const distributor &)=delete |
Disallow default bitwise assignment. More... | |
![]() | |
TypeName ("fvMeshDistributor") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, fvMeshDistributor, fvMesh,(fvMesh &mesh),(mesh)) | |
fvMeshDistributor (fvMesh &) | |
Construct from fvMesh. More... | |
fvMeshDistributor (const fvMeshDistributor &)=delete | |
Disallow default bitwise copy construction. More... | |
virtual | ~fvMeshDistributor () |
Destructor. More... | |
fvMesh & | mesh () |
Return the fvMesh. More... | |
const fvMesh & | mesh () const |
Return the fvMesh. More... | |
const dictionary & | dict () const |
Return the dynamicMeshDict/distributor sub-dict. More... | |
virtual bool | dynamic () const |
Is mesh dynamic, i.e. might it change? More... | |
void | operator= (const fvMeshDistributor &)=delete |
Disallow default bitwise assignment. More... | |
Protected Member Functions | |
void | readDict () |
Read the projection parameters from dictionary. More... | |
void | distribute (const labelList &distribution) |
Distribute the mesh and mesh data. More... | |
Protected Attributes | |
autoPtr< decompositionMethod > | distributor_ |
Cache the decomposer/distributor. More... | |
label | redistributionInterval_ |
Time-step interval between redistribution calls. More... | |
scalar | maxImbalance_ |
Maximum imbalance between the ideal number of cells per processor. More... | |
label | timeIndex_ |
The time index used for updating. More... | |
Additional Inherited Members | |
![]() | |
static autoPtr< fvMeshDistributor > | New (fvMesh &) |
Select, construct and return the fvMeshDistributor. More... | |
Dynamic mesh redistribution using the distributor specified in decomposeParDict.
distributor { type distributor; libs ("libfvMeshDistributors.so"); // How often to redistribute redistributionInterval 10; // Maximum fractional cell distribution imbalance // before rebalancing maxImbalance 0.1; }
Definition at line 71 of file fvMeshDistributorsDistributor.H.
|
explicit |
Construct from fvMesh.
Definition at line 86 of file fvMeshDistributorsDistributor.C.
References distributor::readDict().
|
delete |
Disallow default bitwise copy construction.
|
virtual |
Destructor.
Definition at line 106 of file fvMeshDistributorsDistributor.C.
|
protected |
Read the projection parameters from dictionary.
Definition at line 51 of file fvMeshDistributorsDistributor.C.
References dict, distributor::distribute(), and dictionary::lookupOrDefault().
Referenced by distributor::distributor().
|
protected |
Distribute the mesh and mesh data.
Definition at line 64 of file fvMeshDistributorsDistributor.C.
References fvMeshDistribute::distribute(), fvMesh::distribute(), and mesh.
Referenced by distributor::mapMesh(), distributor::readDict(), loadBalancer::update(), and distributor::update().
TypeName | ( | "distributor" | ) |
Runtime type information.
|
virtual |
Distribute the.
Implements fvMeshDistributor.
Reimplemented in loadBalancer.
Definition at line 112 of file fvMeshDistributorsDistributor.C.
References distributor::distribute(), distributor::distributor_, Foam::endl(), polyMesh::globalData(), Foam::Info, Foam::mag(), distributor::maxImbalance_, fvMeshDistributor::mesh(), primitiveMesh::nCells(), UPstream::nProcs(), globalMeshData::nTotalCells(), distributor::redistributionInterval_, Foam::returnReduce(), fvMesh::time(), TimeState::timeIndex(), and distributor::timeIndex_.
|
virtual |
Update corresponding to the given map.
Implements fvMeshDistributor.
Definition at line 157 of file fvMeshDistributorsDistributor.C.
|
virtual |
Update from another mesh using the given map.
Implements fvMeshDistributor.
Definition at line 161 of file fvMeshDistributorsDistributor.C.
References distributor::distribute().
|
virtual |
Update corresponding to the given distribution map.
Implements fvMeshDistributor.
Definition at line 166 of file fvMeshDistributorsDistributor.C.
Write using given format, version and compression.
Reimplemented from fvMeshDistributor.
Definition at line 172 of file fvMeshDistributorsDistributor.C.
|
delete |
Disallow default bitwise assignment.
|
protected |
Cache the decomposer/distributor.
Definition at line 80 of file fvMeshDistributorsDistributor.H.
Referenced by loadBalancer::update(), and distributor::update().
|
protected |
Time-step interval between redistribution calls.
Definition at line 83 of file fvMeshDistributorsDistributor.H.
Referenced by loadBalancer::update(), and distributor::update().
|
protected |
Maximum imbalance between the ideal number of cells per processor.
and the maximum or minimum as a ratio mag(1 - nCells/idealNcells)
Definition at line 87 of file fvMeshDistributorsDistributor.H.
Referenced by loadBalancer::update(), and distributor::update().
|
protected |
The time index used for updating.
Definition at line 90 of file fvMeshDistributorsDistributor.H.
Referenced by loadBalancer::update(), and distributor::update().