Base for geometrical domain decomposition methods. More...
Public Member Functions | |
geomDecomp (const word &derivedType, const dictionary &decompDict, int select=selectionType::DEFAULT) | |
Construct for derived type name and decomposition dictionary. More... | |
geomDecomp (const word &derivedType, const dictionary &decompDict, const word ®ionName, int select=selectionType::DEFAULT) | |
virtual labelList | decompose (const pointField &points, const scalarField &pointWeights) const =0 |
Return for every coordinate the wanted processor number. More... | |
virtual labelList | decompose (const pointField &points) const =0 |
Decompose with uniform weights on the points. More... | |
Public Member Functions inherited from decompositionMethod | |
TypeName ("decompositionMethod") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, decompositionMethod, dictionary,(const dictionary &decompDict),(decompDict)) | |
declareRunTimeSelectionTable (autoPtr, decompositionMethod, dictionaryRegion,(const dictionary &decompDict, const word ®ionName),(decompDict, regionName)) | |
decompositionMethod (const dictionary &decompDict) | |
Construct given the decomposition dictionary. More... | |
decompositionMethod (const dictionary &decompDict, const word ®ionName) | |
Construct given the decomposition dictionary for specific region. More... | |
virtual | ~decompositionMethod ()=default |
Destructor. More... | |
label | nDomains () const |
Number of domains. More... | |
virtual bool | parallelAware () const =0 |
Is method parallel aware? More... | |
virtual labelList | decompose (const polyMesh &mesh, const pointField &points, const scalarField &pointWeights) const =0 |
Return for every coordinate the wanted processor number. More... | |
virtual labelList | decompose (const polyMesh &mesh, const pointField &points) const |
Decompose with uniform weights on the points. More... | |
virtual labelList | decompose (const polyMesh &mesh, const labelList &cellToRegion, const pointField ®ionPoints, const scalarField ®ionWeights) const |
Return for every coordinate the wanted processor number. Gets. More... | |
virtual labelList | decompose (const polyMesh &mesh, const labelList &cellToRegion, const pointField ®ionPoints) const |
Like decompose but with uniform weights on the regions. More... | |
virtual labelList | decompose (const labelListList &globalCellCells, const pointField &cc, const scalarField &cWeights) const =0 |
Return for every coordinate the wanted processor number. More... | |
virtual labelList | decompose (const labelListList &globalCellCells, const pointField &cc) const |
Like decompose but with uniform weights on the cells. More... | |
void | setConstraints (const polyMesh &mesh, boolList &blockedFace, PtrList< labelList > &specifiedProcessorFaces, labelList &specifiedProcessor, List< labelPair > &explicitConnections) const |
Helper: extract constraints: More... | |
void | applyConstraints (const polyMesh &mesh, const boolList &blockedFace, const PtrList< labelList > &specifiedProcessorFaces, const labelList &specifiedProcessor, const List< labelPair > &explicitConnections, labelList &finalDecomp) const |
Helper: apply constraints to a decomposition. More... | |
virtual labelList | decompose (const polyMesh &mesh, const scalarField &cellWeights, const boolList &blockedFace, const PtrList< labelList > &specifiedProcessorFaces, const labelList &specifiedProcessor, const List< labelPair > &explicitConnections) const |
labelList | decompose (const polyMesh &mesh, const scalarField &cWeights) const |
Decompose a mesh. More... | |
Protected Member Functions | |
void | checkDecompositionDirections (const Vector< label > &) const |
Check that mesh directions are compatible with decomposition. More... | |
Protected Member Functions inherited from decompositionMethod | |
const dictionary & | findCoeffsDict (const word &coeffsName, int select=selectionType::DEFAULT) const |
Locate coeffsName dictionary or the fallback "coeffs" dictionary. More... | |
Protected Attributes | |
const dictionary & | coeffsDict_ |
Coefficients for all derived methods. More... | |
Vector< label > | n_ |
scalar | delta_ |
Default = 0.001. More... | |
tensor | rotDelta_ |
Protected Attributes inherited from decompositionMethod | |
const dictionary & | decompDict_ |
Top-level decomposition dictionary (eg, decomposeParDict) More... | |
const dictionary & | decompRegionDict_ |
Region-specific decomposition dictionary information. More... | |
label | nDomains_ |
Number of domains for the decomposition. More... | |
PtrList< decompositionConstraint > | constraints_ |
Optional constraints. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from decompositionMethod | |
static label | nDomains (const dictionary &decompDict) |
Return the numberOfSubdomains entry from the dictionary. More... | |
static label | nDomains (const dictionary &decompDict, const word ®ionName) |
Return the numberOfSubdomains from a region within the. More... | |
static const dictionary & | optionalRegionDict (const dictionary &decompDict, const word ®ionName) |
Return an optional region dictionary from "regions" sub-dictionary. More... | |
static autoPtr< decompositionMethod > | New (const dictionary &decompDict) |
Return a reference to the selected decomposition method. More... | |
static autoPtr< decompositionMethod > | New (const dictionary &decompDict, const word ®ionName) |
static void | calcCellCells (const polyMesh &mesh, const labelList &agglom, const label nLocalCoarse, const bool global, CompactListList< label > &cellCells) |
Helper: determine (local or global) cellCells from mesh. More... | |
static void | calcCellCells (const polyMesh &mesh, const labelList &agglom, const label nLocalCoarse, const bool parallel, CompactListList< label > &cellCells, CompactListList< scalar > &cellCellWeights) |
Helper: determine (local or global) cellCells and face weights. More... | |
Protected Types inherited from decompositionMethod | |
enum | selectionType { DEFAULT = 0, EXACT = 1, MANDATORY = 2, NULL_DICT = 4 } |
Selection type when handling the coefficients dictionary. More... | |
Static Protected Member Functions inherited from decompositionMethod | |
static const dictionary & | findCoeffsDict (const dictionary &dict, const word &coeffsName, int select=selectionType::DEFAULT) |
Base for geometrical domain decomposition methods.
Property | Description | Required | Default |
---|---|---|---|
n | (nx ny nz) | yes | |
delta | delta for rotation matrix | no | 0.001 |
Definition at line 71 of file geomDecomp.H.
geomDecomp | ( | const word & | derivedType, |
const dictionary & | decompDict, | ||
int | select = selectionType::DEFAULT |
||
) |
Construct for derived type name and decomposition dictionary.
Definition at line 86 of file geomDecomp.C.
geomDecomp | ( | const word & | derivedType, |
const dictionary & | decompDict, | ||
const word & | regionName, | ||
int | select = selectionType::DEFAULT |
||
) |
Construct for derived type name, decomposition dictionary and region name
Definition at line 103 of file geomDecomp.C.
Check that mesh directions are compatible with decomposition.
Definition at line 64 of file geomDecomp.C.
References Foam::endl(), and WarningInFunction.
Referenced by simpleGeomDecomp::decompose(), and hierarchGeomDecomp::decompose().
|
pure virtual |
Return for every coordinate the wanted processor number.
Reimplemented from decompositionMethod.
Implemented in simpleGeomDecomp, and hierarchGeomDecomp.
|
pure virtual |
Decompose with uniform weights on the points.
Reimplemented from decompositionMethod.
Implemented in simpleGeomDecomp, and hierarchGeomDecomp.
|
protected |
Coefficients for all derived methods.
Definition at line 86 of file geomDecomp.H.
Definition at line 88 of file geomDecomp.H.
|
protected |
Default = 0.001.
Definition at line 91 of file geomDecomp.H.
|
protected |
Definition at line 93 of file geomDecomp.H.