distributor Class Reference

Dynamic mesh redistribution using the distributor specified in decomposeParDict. More...

Inheritance diagram for distributor:
Collaboration diagram for distributor:

Public Member Functions

 TypeName ("distributor")
 Runtime type information. More...
 
 distributor (fvMesh &mesh, const dictionary &dict)
 Construct from fvMesh and dictionary. 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...
 
- Public Member Functions inherited from fvMeshDistributor
 TypeName ("fvMeshDistributor")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, fvMeshDistributor, fvMesh,(fvMesh &mesh, const dictionary &dict),(mesh, dict))
 
 fvMeshDistributor (fvMesh &)
 Construct from fvMesh. More...
 
 fvMeshDistributor (const fvMeshDistributor &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~fvMeshDistributor ()
 Destructor. More...
 
fvMeshmesh ()
 Return the fvMesh. More...
 
const fvMeshmesh () const
 Return the fvMesh. 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 distribute (const labelList &distribution)
 Distribute the mesh and mesh data. More...
 

Protected Attributes

autoPtr< decompositionMethoddistributor_
 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 Public Member Functions inherited from fvMeshDistributor
static autoPtr< fvMeshDistributorNew (fvMesh &)
 Select, construct and return the fvMeshDistributor. More...
 

Detailed Description

Dynamic mesh redistribution using the distributor specified in decomposeParDict.

Usage
Example of single field based refinement in all cells:
distributor
{
    type            distributor;

    libs            ("libfvMeshDistributors.so");

    // How often to redistribute
    redistributionInterval  10;

    // Maximum fractional cell distribution imbalance
    // before rebalancing
    maxImbalance    0.1;
}
Source files

Definition at line 71 of file distributor_fvMeshDistributor.H.

Constructor & Destructor Documentation

◆ distributor() [1/2]

distributor ( fvMesh mesh,
const dictionary dict 
)

Construct from fvMesh and dictionary.

Definition at line 76 of file distributor_fvMeshDistributor.C.

Referenced by distributor::distribute().

Here is the caller graph for this function:

◆ distributor() [2/2]

distributor ( const distributor )
delete

Disallow default bitwise copy construction.

◆ ~distributor()

~distributor ( )
virtual

Destructor.

Definition at line 98 of file distributor_fvMeshDistributor.C.

Member Function Documentation

◆ distribute() [1/2]

void distribute ( const labelList distribution)
protected

Distribute the mesh and mesh data.

Definition at line 51 of file distributor_fvMeshDistributor.C.

References distributor::distribute(), fvMesh::distribute(), distributor::distributor(), fvMeshDistributor::mesh(), and fvMesh::preChange().

Referenced by distributor::distribute().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ TypeName()

TypeName ( "distributor"  )

Runtime type information.

◆ update()

bool update ( )
virtual

◆ topoChange()

void topoChange ( const polyTopoChangeMap )
virtual

Update corresponding to the given map.

Implements fvMeshDistributor.

Definition at line 149 of file distributor_fvMeshDistributor.C.

◆ mapMesh()

void mapMesh ( const polyMeshMap )
virtual

Update from another mesh using the given map.

Implements fvMeshDistributor.

Definition at line 153 of file distributor_fvMeshDistributor.C.

◆ distribute() [2/2]

void distribute ( const polyDistributionMap )
virtual

Update corresponding to the given distribution map.

Implements fvMeshDistributor.

Definition at line 157 of file distributor_fvMeshDistributor.C.

◆ write()

bool write ( const bool  write = true) const
virtual

Write using given format, version and compression.

Reimplemented from fvMeshDistributor.

Definition at line 164 of file distributor_fvMeshDistributor.C.

◆ operator=()

void operator= ( const distributor )
delete

Disallow default bitwise assignment.

Member Data Documentation

◆ distributor_

autoPtr<decompositionMethod> distributor_
protected

Cache the decomposer/distributor.

Definition at line 80 of file distributor_fvMeshDistributor.H.

◆ redistributionInterval_

label redistributionInterval_
protected

Time-step interval between redistribution calls.

Definition at line 83 of file distributor_fvMeshDistributor.H.

◆ maxImbalance_

scalar maxImbalance_
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 distributor_fvMeshDistributor.H.

◆ timeIndex_

label timeIndex_
protected

The time index used for updating.

Definition at line 90 of file distributor_fvMeshDistributor.H.


The documentation for this class was generated from the following files: