Dynamic mesh redistribution using the distributor specified in decomposeParDict. More...
Public Member Functions | |
TypeName ("loadBalancer") | |
Runtime type information. More... | |
loadBalancer (fvMesh &mesh) | |
Construct from fvMesh. More... | |
virtual | ~loadBalancer () |
Destructor. More... | |
virtual bool | update () |
Distribute the. More... | |
Public Member Functions inherited from distributor | |
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 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... | |
Public Member Functions inherited from fvMeshDistributor | |
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... | |
Additional Inherited Members | |
Static Public Member Functions inherited from fvMeshDistributor | |
static autoPtr< fvMeshDistributor > | New (fvMesh &) |
Select, construct and return the fvMeshDistributor. More... | |
Protected Member Functions inherited from distributor | |
void | readDict () |
Read the projection parameters from dictionary. More... | |
void | distribute (const labelList &distribution) |
Distribute the mesh and mesh data. More... | |
Protected Attributes inherited from distributor | |
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... | |
Dynamic mesh redistribution using the distributor specified in decomposeParDict.
distributor { type loadBalancer; libs ("libfvMeshDistributors.so"); // How often to redistribute redistributionInterval 10; // Maximum fractional cell distribution imbalance // before rebalancing maxImbalance 0.1; }
Definition at line 70 of file fvMeshDistributorsLoadBalancer.H.
|
explicit |
Construct from fvMesh.
Definition at line 64 of file fvMeshDistributorsLoadBalancer.C.
|
virtual |
Destructor.
Definition at line 74 of file fvMeshDistributorsLoadBalancer.C.
TypeName | ( | "loadBalancer" | ) |
Runtime type information.
|
virtual |
Distribute the.
Reimplemented from distributor.
Definition at line 80 of file fvMeshDistributorsLoadBalancer.C.
References Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, forAllConstIter, forAllIter, Pstream::gatherList(), polyMesh::globalData(), Foam::Info, Foam::max(), UPstream::myProcNo(), primitiveMesh::nCells(), Foam::nl, UPstream::nProcs(), globalMeshData::nTotalCells(), Foam::returnReduce(), Pstream::scatterList(), List< T >::setSize(), HashTable< T, Key, Hash >::size(), List< T >::size(), Time::startTimeIndex(), Foam::sum(), fvMesh::time(), TimeState::timeIndex(), and Foam::type().