diff --git a/applications/utilities/parallelProcessing/decomposePar/decomposePar.C b/applications/utilities/parallelProcessing/decomposePar/decomposePar.C index b06da4f4a72e660d431c5eb0d403fc4051db3a3f..d1b9b58a7de1c71b956fa1443d74f81c192c6855 100644 --- a/applications/utilities/parallelProcessing/decomposePar/decomposePar.C +++ b/applications/utilities/parallelProcessing/decomposePar/decomposePar.C @@ -330,7 +330,6 @@ int main(int argc, char *argv[]) } - forAll(regionNames, regioni) { const word& regionName = regionNames[regioni]; @@ -338,13 +337,12 @@ int main(int argc, char *argv[]) Info<< "\n\nDecomposing mesh " << regionName << nl << endl; - // Determine the existing processor count directly label nProcs = fileHandler().nProcs(runTime.path(), regionDir); - // Get requested numberOfSubdomains. Note: have no mesh yet so - // cannot use decompositionModel::New - const label nDomains = readLabel + // Get requested numberOfSubdomains directly from the dictionary. + // Note: have no mesh yet so cannot use decompositionModel::New + const label nDomains = decompositionMethod::nDomains ( IOdictionary ( @@ -362,7 +360,7 @@ int main(int argc, char *argv[]) ), decompDictFile ) - ).lookup("numberOfSubdomains") + ) ); if (decomposeFieldsOnly) diff --git a/applications/utilities/parallelProcessing/decomposePar/decomposeParDict b/applications/utilities/parallelProcessing/decomposePar/decomposeParDict index cb061078b7d4f0c43ef21bcd3914c4e0173ab81d..2ad99e2ea5f1a331f733674953d337b78d52abb2 100644 --- a/applications/utilities/parallelProcessing/decomposePar/decomposeParDict +++ b/applications/utilities/parallelProcessing/decomposePar/decomposeParDict @@ -15,129 +15,109 @@ FoamFile } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -numberOfSubdomains 2; +//- The total number of domains (mandatory) +numberOfSubdomains 256; +//- The decomposition method (mandatory) +method scotch; +// method hierarchical; +// method simple; +// method metis; +// method manual; +// method multiLevel; +// method structured; // does 2D decomposition of structured mesh -// Optional decomposition constraints -//constraints -//{ -// preserveBaffles -// { -// //- Keep owner and neighbour of baffles on same processor (i.e. -// // keep it detectable as a baffle). Baffles are two boundary face -// // sharing the same points -// type preserveBaffles; -// } -// preserveFaceZones -// { -// //- Keep owner and neighbour on same processor for faces in zones -// type preserveFaceZones; -// zones (".*"); -// } -// preservePatches -// { -// //- Keep owner and neighbour on same processor for faces in patches -// // (only makes sense for cyclic patches. Not suitable for e.g. -// // cyclicAMI since these are not coupled on the patch level. Use -// // singleProcessorFaceSets for those) -// type preservePatches; -// patches (".*"); -// } -// singleProcessorFaceSets -// { -// //- Keep all of faceSet on a single processor. This puts all cells -// // connected with a point, edge or face on the same processor. -// // (just having face connected cells might not guarantee a balanced -// // decomposition) -// // The processor can be -1 (the decompositionMethod chooses the -// // processor for a good load balance) or explicitly provided (upsets -// // balance) -// type singleProcessorFaceSets; -// singleProcessorFaceSets ((f1 -1)); -// } -// refinementHistory -// { -// //- Decompose cells such that all cell originating from single cell -// // end up on same processor -// type refinementHistory; -// } -//} - - -// Deprecated form of specifying decomposition constraints: -//- Keep owner and neighbour on same processor for faces in zones: -// preserveFaceZones (heater solid1 solid3); - -//- Keep owner and neighbour on same processor for faces in patches: -// (makes sense only for cyclic patches. Not suitable for e.g. cyclicAMI -// since these are not coupled on the patch level. Use -// singleProcessorFaceSets for those) -//preservePatches (cyclic_half0 cyclic_half1); -//- Keep all of faceSet on a single processor. This puts all cells -// connected with a point, edge or face on the same processor. -// (just having face connected cells might not guarantee a balanced -// decomposition) -// The processor can be -1 (the decompositionMethod chooses the processor -// for a good load balance) or explicitly provided (upsets balance). -//singleProcessorFaceSets ((f0 -1)); +//- Optional region-wise decomposition. +// Can specify a different method. +// The number of subdomains can be less than the top-level numberOfSubdomains. +regions +{ + water + { + numberOfSubdomains 128; + method metis; + } -//- Keep owner and neighbour of baffles on same processor (i.e. keep it -// detectable as a baffle). Baffles are two boundary face sharing the -// same points. -//preserveBaffles true; + ".*solid" + { + numberOfSubdomains 4; + method metis; + } + heater + { + numberOfSubdomains 1; + method none; + } +} -//- Use the volScalarField named here as a weight for each cell in the -// decomposition. For example, use a particle population field to decompose -// for a balanced number of particles in a lagrangian simulation. -// weightField dsmcRhoNMean; +// Coefficients for the decomposition method are either as a +// general "coeffs" dictionary or method-specific "<method>Coeffs". +// For multiLevel, using multiLevelCoeffs only. -method scotch; -//method hierarchical; -// method simple; -// method metis; -// method manual; -// method multiLevel; -// method structured; // does 2D decomposition of structured mesh multiLevelCoeffs { - // Decomposition methods to apply in turn. This is like hierarchical but - // fully general - every method can be used at every level. + // multiLevel decomposition methods to apply in turn. + // This is like hierarchical but fully general + // - every method can be used at every level. + + // Only sub-dictionaries containing the keyword "method" are used. + // level0 { - numberOfSubdomains 64; - //method simple; - //simpleCoeffs - //{ - // n (2 1 1); - // delta 0.001; - //} + numberOfSubdomains 16; method scotch; } level1 { - numberOfSubdomains 4; + numberOfSubdomains 2; method scotch; + coeffs + { + n (2 1 1); + delta 0.001; + } } + level2 + { + numberOfSubdomains 8; + // method simple; + method scotch; + } +} + + +multiLevelCoeffs +{ + // Compact multiLevel specification, activated by the presence of the + // keywords "method" and "domains" + + method scotch; + domains (16 2 8); + + //// Or with implicit '16' for the first level with numberOfSubdomains=256 + //domains (2 8); } -// Desired output + + +// Other example coefficents simpleCoeffs { n (2 1 1); - delta 0.001; + // delta 0.001; //< default value = 0.001 } hierarchicalCoeffs { n (1 2 1); - delta 0.001; - order xyz; + // delta 0.001; //< default value = 0.001 + // order xyz; //< default order = xyz } metisCoeffs @@ -181,9 +161,17 @@ structuredCoeffs method scotch; } + +//- Use the volScalarField named here as a weight for each cell in the +// decomposition. For example, use a particle population field to decompose +// for a balanced number of particles in a lagrangian simulation. +// weightField dsmcRhoNMean; + + //// Is the case distributed? Note: command-line argument -roots takes //// precedence //distributed yes; +// //// Per slave (so nProcs-1 entries) the directory above the case. //roots //( @@ -191,4 +179,77 @@ structuredCoeffs // "/tmp" //); + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// Decomposition constraints + +//constraints +//{ +// preserveBaffles +// { +// //- Keep owner and neighbour of baffles on same processor (i.e. +// // keep it detectable as a baffle). Baffles are two boundary face +// // sharing the same points +// type preserveBaffles; +// } +// preserveFaceZones +// { +// //- Keep owner and neighbour on same processor for faces in zones +// type preserveFaceZones; +// zones (".*"); +// } +// preservePatches +// { +// //- Keep owner and neighbour on same processor for faces in patches +// // (only makes sense for cyclic patches. Not suitable for e.g. +// // cyclicAMI since these are not coupled on the patch level. Use +// // singleProcessorFaceSets for those) +// type preservePatches; +// patches (".*"); +// } +// singleProcessorFaceSets +// { +// //- Keep all of faceSet on a single processor. This puts all cells +// // connected with a point, edge or face on the same processor. +// // (just having face connected cells might not guarantee a balanced +// // decomposition) +// // The processor can be -1 (the decompositionMethod chooses the +// // processor for a good load balance) or explicitly provided (upsets +// // balance) +// type singleProcessorFaceSets; +// singleProcessorFaceSets ((f1 -1)); +// } +// refinementHistory +// { +// //- Decompose cells such that all cell originating from single cell +// // end up on same processor +// type refinementHistory; +// } +//} + + +// Deprecated form of specifying decomposition constraints: +//- Keep owner and neighbour on same processor for faces in zones: +// preserveFaceZones (heater solid1 solid3); + +//- Keep owner and neighbour on same processor for faces in patches: +// (makes sense only for cyclic patches. Not suitable for e.g. cyclicAMI +// since these are not coupled on the patch level. Use +// singleProcessorFaceSets for those) +//preservePatches (cyclic_half0 cyclic_half1); + +//- Keep all of faceSet on a single processor. This puts all cells +// connected with a point, edge or face on the same processor. +// (just having face connected cells might not guarantee a balanced +// decomposition) +// The processor can be -1 (the decompositionMethod chooses the processor +// for a good load balance) or explicitly provided (upsets balance). +//singleProcessorFaceSets ((f0 -1)); + +//- Keep owner and neighbour of baffles on same processor (i.e. keep it +// detectable as a baffle). Baffles are two boundary face sharing the +// same points. +//preserveBaffles true; + + // ************************************************************************* // diff --git a/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C b/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C index b2a14692578501d8aa02aafa234abc3f9e7aa484..0cc795761c8dc5e593473472a017b3ddf47f2f17 100644 --- a/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C +++ b/applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C @@ -49,10 +49,8 @@ void Foam::domainDecomposition::mark labelList& elementToZone ) { - forAll(zoneElems, i) + for (const label pointi : zoneElems) { - label pointi = zoneElems[i]; - if (elementToZone[pointi] == -1) { // First occurrence @@ -69,7 +67,6 @@ void Foam::domainDecomposition::mark // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -// from components Foam::domainDecomposition::domainDecomposition ( const IOobject& io, @@ -98,13 +95,13 @@ Foam::domainDecomposition::domainDecomposition decompDictFile_(decompDictFile), nProcs_ ( - readInt + decompositionMethod::nDomains ( decompositionModel::New ( *this, decompDictFile - ).lookup("numberOfSubdomains") + ) ) ), distributed_(false), @@ -831,11 +828,18 @@ bool Foam::domainDecomposition::writeDecomposition(const bool decomposeSets) // Statistics + Info<< nl << "Processor " << proci; + + if (procMesh.nCells()) + { + Info<< nl << " "; + } + else + { + Info<< ": "; + } - Info<< endl - << "Processor " << proci << nl - << " Number of cells = " << procMesh.nCells() - << endl; + Info<< "Number of cells = " << procMesh.nCells() << nl; maxProcCells = max(maxProcCells, procMesh.nCells()); @@ -865,9 +869,12 @@ bool Foam::domainDecomposition::writeDecomposition(const bool decomposeSets) } } - Info<< " Number of processor patches = " << nProcPatches << nl - << " Number of processor faces = " << nProcFaces << nl - << " Number of boundary faces = " << nBoundaryFaces << endl; + if (procMesh.nCells() && (nBoundaryFaces || nProcFaces)) + { + Info<< " Number of processor patches = " << nProcPatches << nl + << " Number of processor faces = " << nProcFaces << nl + << " Number of boundary faces = " << nBoundaryFaces << nl; + } totProcFaces += nProcFaces; totProcPatches += nProcPatches; diff --git a/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDistribute.C b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDistribute.C index 371f44f73ef10d3944abe407d4f6617418aebea9..472077a709a2e9405c63847df866054a24d52f65 100644 --- a/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDistribute.C +++ b/applications/utilities/parallelProcessing/decomposePar/domainDecompositionDistribute.C @@ -46,11 +46,11 @@ void Foam::domainDecomposition::distributeCells() decompDictFile_ ); + word weightName; scalarField cellWeights; - if (method.found("weightField")) - { - word weightName = method.lookup("weightField"); + if (method.readIfPresent("weightField", weightName)) + { volScalarField weights ( IOobject diff --git a/applications/utilities/preProcessing/mapFields/mapFields.C b/applications/utilities/preProcessing/mapFields/mapFields.C index 93ba31641263423aab6392dd08aa69c20c355c71..be6261d3f0b1208a9ca186f5dceba542e8bc2c90 100644 --- a/applications/utilities/preProcessing/mapFields/mapFields.C +++ b/applications/utilities/preProcessing/mapFields/mapFields.C @@ -58,7 +58,7 @@ int readNumProcs dictFile = dictFile / dictName; } - return readInt + return decompositionMethod::nDomains ( IOdictionary ( @@ -75,7 +75,7 @@ int readNumProcs ), dictFile ) - ).lookup("numberOfSubdomains") + ) ); } diff --git a/src/OpenFOAM/meshes/polyMesh/polyMesh.C b/src/OpenFOAM/meshes/polyMesh/polyMesh.C index 6c44d9e8d1b42269e9ba9eb8b302404d46388ed6..de8d164ef75e2047a484746b4c9e908a5e7fc8d7 100644 --- a/src/OpenFOAM/meshes/polyMesh/polyMesh.C +++ b/src/OpenFOAM/meshes/polyMesh/polyMesh.C @@ -325,15 +325,21 @@ Foam::polyMesh::polyMesh(const IOobject& io) boundary_.calcGeometry(); // Warn if global empty mesh - if (returnReduce(nPoints(), sumOp<label>()) == 0) + if (returnReduce(boundary_.empty(), orOp<bool>())) { WarningInFunction - << "no points in mesh" << endl; - } - if (returnReduce(nCells(), sumOp<label>()) == 0) - { - WarningInFunction - << "no cells in mesh" << endl; + << "mesh missing boundary on one or more domains" << endl; + + if (returnReduce(nPoints(), sumOp<label>()) == 0) + { + WarningInFunction + << "no points in mesh" << endl; + } + if (returnReduce(nCells(), sumOp<label>()) == 0) + { + WarningInFunction + << "no cells in mesh" << endl; + } } // Initialise demand-driven data diff --git a/src/dummyThirdParty/kahipDecomp/dummyKahipDecomp.C b/src/dummyThirdParty/kahipDecomp/dummyKahipDecomp.C index 96e0bdc16b94a0f21116f0e6ad9e91f3903851d4..6e147e26265215634ce1dfab3b977cbfbf5c64b2 100644 --- a/src/dummyThirdParty/kahipDecomp/dummyKahipDecomp.C +++ b/src/dummyThirdParty/kahipDecomp/dummyKahipDecomp.C @@ -73,10 +73,20 @@ Foam::label Foam::kahipDecomp::decomposeSerial Foam::kahipDecomp::kahipDecomp ( - const dictionary& decompositionDict + const dictionary& decompDict ) : - metisLikeDecomp(decompositionDict) + metisLikeDecomp("kahip", decompDict) +{} + + +Foam::kahipDecomp::kahipDecomp +( + const dictionary& decompDict, + const word& regionName +) +: + metisLikeDecomp("kahip", decompDict, regionName) {} diff --git a/src/dummyThirdParty/metisDecomp/dummyMetisDecomp.C b/src/dummyThirdParty/metisDecomp/dummyMetisDecomp.C index 3743cc1bae6d85c61ae7152cacf26f133e5d99ee..c5f8e3ba9a5da9a953c481f052501a41e9d18cee 100644 --- a/src/dummyThirdParty/metisDecomp/dummyMetisDecomp.C +++ b/src/dummyThirdParty/metisDecomp/dummyMetisDecomp.C @@ -73,10 +73,20 @@ Foam::label Foam::metisDecomp::decomposeSerial Foam::metisDecomp::metisDecomp ( - const dictionary& decompositionDict + const dictionary& decompDict ) : - metisLikeDecomp(decompositionDict) + metisLikeDecomp("metis", decompDict) +{} + + +Foam::metisDecomp::metisDecomp +( + const dictionary& decompDict, + const word& regionName +) +: + metisLikeDecomp("metis", decompDict, regionName) {} diff --git a/src/dummyThirdParty/ptscotchDecomp/dummyPtscotchDecomp.C b/src/dummyThirdParty/ptscotchDecomp/dummyPtscotchDecomp.C index decacb6c10c33a511f0d9f5e62ba0a232e5240e5..5a756b477ffa20cfda8911ac60dca665faebaf8d 100644 --- a/src/dummyThirdParty/ptscotchDecomp/dummyPtscotchDecomp.C +++ b/src/dummyThirdParty/ptscotchDecomp/dummyPtscotchDecomp.C @@ -98,10 +98,22 @@ Foam::label Foam::ptscotchDecomp::decompose Foam::ptscotchDecomp::ptscotchDecomp ( - const dictionary& decompositionDict + const dictionary& decompDict ) : - decompositionMethod(decompositionDict) + decompositionMethod(decompDict), + coeffsDict_(dictionary::null) +{} + + +Foam::ptscotchDecomp::ptscotchDecomp +( + const dictionary& decompDict, + const word& regionName +) +: + decompositionMethod(decompDict, regionName), + coeffsDict_(dictionary::null) {} diff --git a/src/dummyThirdParty/scotchDecomp/dummyScotchDecomp.C b/src/dummyThirdParty/scotchDecomp/dummyScotchDecomp.C index 582c770253787518931eb78edac5df564c14a6f7..9aa8e20ec0fc0f59e28c9f54d909736f899bcc30 100644 --- a/src/dummyThirdParty/scotchDecomp/dummyScotchDecomp.C +++ b/src/dummyThirdParty/scotchDecomp/dummyScotchDecomp.C @@ -80,10 +80,20 @@ Foam::label Foam::scotchDecomp::decomposeSerial Foam::scotchDecomp::scotchDecomp ( - const dictionary& decompositionDict + const dictionary& decompDict ) : - metisLikeDecomp(decompositionDict) + metisLikeDecomp("scotch", decompDict) +{} + + +Foam::scotchDecomp::scotchDecomp +( + const dictionary& decompDict, + const word& regionName +) +: + metisLikeDecomp("scotch", decompDict, regionName) {} diff --git a/src/dynamicMesh/polyMeshAdder/faceCoupleInfo.C b/src/dynamicMesh/polyMeshAdder/faceCoupleInfo.C index e1c8a08e64d28814dc4273c964bbf3edb0e57685..3c3edde47d70c5667dc7d0de676ef669ad9ee965 100644 --- a/src/dynamicMesh/polyMeshAdder/faceCoupleInfo.C +++ b/src/dynamicMesh/polyMeshAdder/faceCoupleInfo.C @@ -886,6 +886,15 @@ void Foam::faceCoupleInfo::findPerfectMatchingFaces labelList& mesh1Faces ) { + // Quick check: skip face matching if either mesh has no faces + if (!mesh0.nFaces() || !mesh1.nFaces()) + { + mesh0Faces.clear(); + mesh1Faces.clear(); + + return; + } + // Face centres of external faces (without invoking // mesh.faceCentres since mesh might have been clearedOut) diff --git a/src/parallel/decompose/decompose/decompositionModel.C b/src/parallel/decompose/decompose/decompositionModel.C index dbcb023af199ebf01bd72affd13257ddd38735e0..8f156c64b5536f0527e49c1efee03acf0f58ea54 100644 --- a/src/parallel/decompose/decompose/decompositionModel.C +++ b/src/parallel/decompose/decompose/decompositionModel.C @@ -34,6 +34,7 @@ namespace Foam defineTypeNameAndDebug(decompositionModel, 0); } + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::decompositionModel::decompositionModel diff --git a/src/parallel/decompose/decompose/decompositionModel.H b/src/parallel/decompose/decompose/decompositionModel.H index 7ed6bd3fa2b89f69168fc240a5e6681d92bbdb47..2cbfa4d2496648d11036385815ed70977b2e3455 100644 --- a/src/parallel/decompose/decompose/decompositionModel.H +++ b/src/parallel/decompose/decompose/decompositionModel.H @@ -75,14 +75,14 @@ public: // Selectors - //- Read (optionallly from absolute path) & register on mesh + //- Read (optionally from absolute path) & register on mesh static const decompositionModel& New ( const polyMesh& mesh, const fileName& decompDictFile = "" ); - //- Read (optionallly from supplied dictionary) & register on mesh + //- Read (optionally from supplied dictionary) & register on mesh static const decompositionModel& New ( const polyMesh& mesh, @@ -94,42 +94,51 @@ public: // Constructors //- Construct from typeName or optional path to controlDictionary - decompositionModel(const polyMesh&, const fileName& = ""); + decompositionModel + ( + const polyMesh& mesh, + const fileName& decompDictFile = "" + ); //- Construct from typeName or optional path to controlDictionary decompositionModel ( - const polyMesh&, + const polyMesh& mesh, const dictionary& dict, - const fileName& = "" + const fileName& decompDictFile = "" ); - // Member functions + // Member Functions decompositionMethod& decomposer() const { if (!decomposerPtr_.valid()) { - decomposerPtr_ = decompositionMethod::New(*this); + decomposerPtr_ = + decompositionMethod::New + ( + *this, + this->mesh().name() // Name of mesh region + ); } return decomposerPtr_(); } //- Helper: return IOobject with optionally absolute path provided - static IOobject selectIO(const IOobject&, const fileName&); + static IOobject selectIO(const IOobject& io, const fileName& f); - // UpdateableMeshObject + // UpdateableMeshObject - virtual bool movePoints() - { - return false; - } + virtual bool movePoints() + { + return false; + } - virtual void updateMesh(const mapPolyMesh&) - {} + virtual void updateMesh(const mapPolyMesh&) + {} }; diff --git a/src/parallel/decompose/decomposition.dox b/src/parallel/decompose/decomposition.dox new file mode 100644 index 0000000000000000000000000000000000000000..0256b48e4a46023fabbe667fb3c3bbf8f8b67f05 --- /dev/null +++ b/src/parallel/decompose/decomposition.dox @@ -0,0 +1,282 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 2017 OpenCFD Ltd. + \\/ M anipulation | +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it under + the terms of the GNU General Public License as published by the Free + Software Foundation, either version 3 of the License, or (at your option) + any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + FOR A PARTICULAR PURPOSE. See the GNU General Public License for more + details. + + You should have received a copy of the GNU General Public License along with + OpenFOAM. If not, see <http://www.gnu.org/licenses/>. + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +\page domainDecomposition Domain decomposition + +\section secIntroduction Introduction + +When running a simulation in parallel, the geometry must first be decomposed +(segmented) into individual geometries for each MPI process. These separate +geometries are \a connected together with special processor boundary patches. +The processor-specific \c constant/polyMesh/boundary files will contain this +type of entry: + +\verbatim + procBoundary0to14 + { + type processor; + inGroups 1(processor); + nFaces 131; + startFace 34983; + matchTolerance 0.0001; + transform unknown; + myProcNo 0; + neighbProcNo 14; + } +\endverbatim + +The decomposePar utility is a commonly used method to decompose domains +and subsequently distribute the fields. +The reconstructPar and reconstructParMesh utilities +can be used to reconstruct a single domain from the processor sub-domains. + +\section secDecomposeParDict The decomposeParDict + +The \c decomposeParDict is required by decompose utilities and for any solvers +or utilities running in parallel. It is normally located in the simulation +\c system directory. The <tt>-decomposeParDict name</tt> command-line option +can be used to specify an alternate file. + +The \a numberOfSubdomains entry is mandatory: +\verbatim + numberOfSubdomains <int>; +\endverbatim + +The \a method entry is required for the decomposePar utility and specifies +the decomposition method type: +\verbatim + method <word>; +\endverbatim +The \a method entry is generally not required when running a simulation. + +OpenFOAM offers a variety of decomposition methods and interfaces to external, +third-party decomposition routines. The types of decomposition methods +available will thus depend on your particular installation. + +\table + Name | Class + none | #Foam::noDecomp + manual | #Foam::manualDecomp + simple | #Foam::simpleGeomDecomp + hierarchical | #Foam::hierarchGeomDecomp + kahip | #Foam::kahipDecomp + metis | #Foam::metisDecomp + scotch | #Foam::scotchDecomp + structured | #Foam::structuredDecomp + multiLevel | #Foam::multiLevelDecomp +\endtable + +If a decomposition method requires any additional configuration controls, +these are specified either within in a generic \c coeffs dictionary that +or a method-specific version. For example, + +\verbatim + method hierarchical; + + coeffs + { + n (4 2 3); + } + + // ----- + + method metis; + + metisCoeffs + { + method k-way; + } +\endverbatim + +For simplicity, the generic \c coeffs dictionary is generally preferrable. +However, for some specific decomposition methods +(eg, \ref subsecMultiLevel "multiLevel") only the +method-specific coefficients dictionary is permitted. + + +\subsection subsecRegions Multi-region + +When running multi-region simulations, it may be desirable to use different +decomposition methods for one or more regions, or even to have fewer +processors allocated to a particular region. +If, for example, the multi-region simulation contains a large fluid region +and a very small solid region, it can be advantageous to decompose the solid +onto fewer processors. + +The region-wise specification is contained in a \a regions subdictionary with +decomposeParDict. For example, + +\verbatim + numberOfSubdomains 2048; + method metis; + + regions + { + heater + { + numberOfSubdomains 2; + method hierarchical; + coeffs + { + n (2 1 1); + } + } + + "*.solid" + { + numberOfSubdomains 16; + method scotch; + } + } +\endverbatim + +\note +The top-level numberOfSubdomains remains mandatory, since this specifies the +number of domains for the entire simulation. The individual regions may use +the same number or fewer domains. The \a numberOfSubdomains entry within +a region specification is only needed if the value differs. + + +\subsection subsecMultiLevel Multi-level decomposition + +The #Foam::multiLevelDecomp decomposition provides a general means of +successively decomposing with different methods. Each appplication of the +decomposition is termed a level. For example, + +\verbatim + numberOfSubdomains 2048; + method multiLevel; + + multiLevelCoeffs + { + nodes + { + numberOfSubdomains 128; + method hierarchical; + coeffs + { + n (16 4 2); + } + } + cpus + { + numberOfSubdomains 2; + method scotch; + } + cores + { + numberOfSubdomains 8; + method metis; + } + } +\endverbatim + +For cases where the same method is applied at each level, this can also be +conveniently written in a much shorter form: +\verbatim + numberOfSubdomains 2048; + method multiLevel; + + multiLevelCoeffs + { + method scotch + domains (128 2 8); + } +\endverbatim + +When the specified \a domains is smaller than \a numberOfSubdomains +but can be resolved as an integral multiple, this integral multiple +is used as the first level. This can make it easier to manage when +changing the number of domains for the simulation. +For example, +\verbatim + numberOfSubdomains 1024; + method multiLevel; + + multiLevelCoeffs + { + method scotch + domains (2 8); //< inferred as domains (64 2 8); + } +\endverbatim + + +\subsection subsecConstraints Constraints + +\verbatim + constraints + { + preserveBaffles + { + // Keep owner and neighbour of baffles on same processor + // (ie, keep it detectable as a baffle). + // Baffles are two boundary face sharing the same points + + type preserveBaffles; + } + + preserveFaceZones + { + // Keep owner and neighbour on same processor for faces in zones + + type preserveFaceZones; + zones (".*"); + } + + preservePatches + { + // Keep owner and neighbour on same processor for faces in patches + // (only makes sense for cyclic patches. Not suitable for e.g. + // cyclicAMI since these are not coupled on the patch level. + // Use singleProcessorFaceSets for those. + + type preservePatches; + patches (".*"); + } + + singleProcessorFaceSets + { + // Keep all of faceSet on a single processor. This puts all cells + // connected with a point, edge or face on the same processor. + // (just having face connected cells might not guarantee a balanced + // decomposition) + // The processor can be -1 (the decompositionMethod chooses the + // processor for a good load balance) or explicitly provided (upsets + // balance) + + type singleProcessorFaceSets; + singleProcessorFaceSets ((f1 -1)); + } + + refinementHistory + { + // Decompose cells such that all cell originating from single cell + // end up on same processor + type refinementHistory; + } + } +\endverbatim + +\*---------------------------------------------------------------------------*/ diff --git a/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.C b/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.C index c17958367a31de081796fc24e6795fa7c8604123..69bc26b4d3d0b076e0c92fe68b4cdc25a8b04bf4 100644 --- a/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.C +++ b/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.C @@ -44,49 +44,97 @@ namespace Foam { defineTypeNameAndDebug(decompositionMethod, 0); defineRunTimeSelectionTable(decompositionMethod, dictionary); + defineRunTimeSelectionTable(decompositionMethod, dictionaryRegion); + + // Fallback name when searching for optional coefficients directories + static const word defaultName("coeffs"); } -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * Static Member Functions * * * * * * * * * * * * // -Foam::decompositionMethod::decompositionMethod +Foam::label Foam::decompositionMethod::nDomains(const dictionary& decompDict) +{ + return readLabel(decompDict.lookup("numberOfSubdomains")); +} + + +Foam::label Foam::decompositionMethod::nDomains ( - const dictionary& decompositionDict + const dictionary& decompDict, + const word& regionName ) -: - decompositionDict_(decompositionDict), - nProcessors_ - ( - readLabel(decompositionDict.lookup("numberOfSubdomains")) - ) { + const label nDomainsGlobal = nDomains(decompDict); + + const dictionary& regionDict(optionalRegionDict(decompDict, regionName)); + + label nDomainsRegion; + if (regionDict.readIfPresent("numberOfSubdomains", nDomainsRegion)) + { + if (nDomainsRegion >= 1 && nDomainsRegion <= nDomainsGlobal) + { + return nDomainsRegion; + } + + WarningInFunction + << "ignoring out of range numberOfSubdomains " + << nDomainsRegion << " for region " << regionName + << nl << nl + << endl; + } + + return nDomainsGlobal; +} + + +const Foam::dictionary& Foam::decompositionMethod::optionalRegionDict +( + const dictionary& decompDict, + const word& regionName +) +{ + auto finder = decompDict.csearch("regions"); + + if (!regionName.empty() && finder.isDict()) + { + finder = finder.dict().csearch(regionName); + + if (finder.isDict()) + { + return finder.dict(); + } + } + + return dictionary::null; +} + + +// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // + +void Foam::decompositionMethod::readConstraints() +{ + constraints_.clear(); + // Read any constraints - wordList constraintTypes_; - if (decompositionDict_.found("constraints")) + wordList constraintTypes; + + const dictionary* dictptr = decompositionDict_.subDictPtr("constraints"); + + if (dictptr) { - //PtrList<dictionary> constraintsList - //( - // decompositionDict_.lookup("constraints") - //); - //forAll(constraintsList, i) - //{ - // const dictionary& dict = constraintsList[i]; - const dictionary& constraintsList = decompositionDict_.subDict - ( - "constraints" - ); - forAllConstIter(dictionary, constraintsList, iter) + forAllConstIters(*dictptr, iter) { const dictionary& dict = iter().dict(); - constraintTypes_.append(dict.lookup("type")); + constraintTypes.append(dict.lookup("type")); constraints_.append ( decompositionConstraint::New ( dict, - constraintTypes_.last() + constraintTypes.last() ) ); } @@ -96,7 +144,7 @@ Foam::decompositionMethod::decompositionMethod if ( decompositionDict_.found("preserveBaffles") - && !constraintTypes_.found + && !constraintTypes.found ( decompositionConstraints::preserveBafflesConstraint::typeName ) @@ -111,7 +159,7 @@ Foam::decompositionMethod::decompositionMethod if ( decompositionDict_.found("preservePatches") - && !constraintTypes_.found + && !constraintTypes.found ( decompositionConstraints::preservePatchesConstraint::typeName ) @@ -128,7 +176,7 @@ Foam::decompositionMethod::decompositionMethod if ( decompositionDict_.found("preserveFaceZones") - && !constraintTypes_.found + && !constraintTypes.found ( decompositionConstraints::preserveFaceZonesConstraint::typeName ) @@ -145,7 +193,7 @@ Foam::decompositionMethod::decompositionMethod if ( decompositionDict_.found("singleProcessorFaceSets") - && !constraintTypes_.found + && !constraintTypes.found ( decompositionConstraints::preserveFaceZonesConstraint::typeName ) @@ -166,17 +214,144 @@ Foam::decompositionMethod::decompositionMethod } } +// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // + +const Foam::dictionary& Foam::decompositionMethod::findCoeffsDict +( + const dictionary& dict, + const word& coeffsName, + int select +) +{ + dictionary::const_searcher fnd; + + if + ( + (fnd = dict.csearch(coeffsName)).isDict() + || + ( + !(select & selectionType::EXACT) + && (fnd = dict.csearch(defaultName)).isDict() + ) + ) + { + return fnd.dict(); + } + + // Not found + if (select & selectionType::MANDATORY) + { + FatalIOError + << "'" << coeffsName << "' dictionary not found in dictionary " + << dict.name() << endl + << abort(FatalIOError); + } + + if (select & selectionType::NULL_DICT) + { + return dictionary::null; + } + + return dict; +} + + +const Foam::dictionary& Foam::decompositionMethod::findCoeffsDict +( + const word& coeffsName, + int select +) const +{ + dictionary::const_searcher fnd; + + if + ( + !decompositionRegionDict_.empty() + && + ( + (fnd = decompositionRegionDict_.csearch(coeffsName)).isDict() + || + ( + !(select & selectionType::EXACT) + && (fnd = decompositionRegionDict_.csearch(defaultName)).isDict() + ) + ) + ) + { + return fnd.dict(); + } + + if + ( + (fnd = decompositionDict_.csearch(coeffsName)).isDict() + || + ( + !(select & selectionType::EXACT) + && (fnd = decompositionDict_.csearch(defaultName)).isDict() + ) + ) + { + return fnd.dict(); + } + + // Not found + if (select & selectionType::MANDATORY) + { + FatalIOError + << "'" << coeffsName << "' dictionary not found in dictionary " + << decompositionDict_.name() << endl + << abort(FatalIOError); + } + + if (select & selectionType::NULL_DICT) + { + return dictionary::null; + } + + return decompositionDict_; +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::decompositionMethod::decompositionMethod +( + const dictionary& decompDict +) +: + decompositionDict_(decompDict), + decompositionRegionDict_(dictionary::null), + nDomains_(nDomains(decompDict)) +{ + readConstraints(); +} + + +Foam::decompositionMethod::decompositionMethod +( + const dictionary& decompDict, + const word& regionName +) +: + decompositionDict_(decompDict), + decompositionRegionDict_ + ( + optionalRegionDict(decompositionDict_, regionName) + ), + nDomains_(nDomains(decompDict, regionName)) +{ + readConstraints(); +} + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // Foam::autoPtr<Foam::decompositionMethod> Foam::decompositionMethod::New ( - const dictionary& decompositionDict + const dictionary& decompDict ) { - const word methodType(decompositionDict.lookup("method")); - - Info<< "Selecting decompositionMethod " << methodType << endl; + const word methodType(decompDict.lookup("method")); auto cstrIter = dictionaryConstructorTablePtr_->cfind(methodType); @@ -190,7 +365,58 @@ Foam::autoPtr<Foam::decompositionMethod> Foam::decompositionMethod::New << exit(FatalError); } - return autoPtr<decompositionMethod>(cstrIter()(decompositionDict)); + // verbose + { + Info<< "Selecting decompositionMethod " << methodType + << " [" << (nDomains(decompDict)) << "]" << endl; + } + + return autoPtr<decompositionMethod>(cstrIter()(decompDict)); +} + + +Foam::autoPtr<Foam::decompositionMethod> Foam::decompositionMethod::New +( + const dictionary& decompDict, + const word& regionName + +) +{ + const dictionary& regionDict(optionalRegionDict(decompDict, regionName)); + + if (regionDict.empty()) + { + // No region-specific information - just forward to normal routine + return decompositionMethod::New(decompDict); + } + + word methodType(decompDict.lookup("method")); + regionDict.readIfPresent("method", methodType); + + auto cstrIter = dictionaryRegionConstructorTablePtr_->cfind(methodType); + + if (!cstrIter.found()) + { + WarningInFunction + << nl + << "Unknown region decompositionMethod " + << methodType << nl << nl + << "Valid decompositionMethods : " << endl + << dictionaryRegionConstructorTablePtr_->sortedToc() << nl + << "Reverting to non-region version" << nl + << endl; + + return decompositionMethod::New(decompDict); + } + + // verbose + { + Info<< "Selecting decompositionMethod " << methodType + << " [" << (nDomains(decompDict, regionName)) << "] (region " + << regionName << ")" << endl; + } + + return autoPtr<decompositionMethod>(cstrIter()(decompDict, regionName)); } @@ -341,7 +567,7 @@ void Foam::decompositionMethod::calcCellCells // Number of faces per coarse cell labelList nFacesPerCell(nLocalCoarse, 0); - for (label facei = 0; facei < mesh.nInternalFaces(); facei++) + for (label facei = 0; facei < mesh.nInternalFaces(); ++facei) { const label own = agglom[faceOwner[facei]]; const label nei = agglom[faceNeighbour[facei]]; @@ -391,7 +617,7 @@ void Foam::decompositionMethod::calcCellCells const labelList& offsets = cellCells.offsets(); // For internal faces is just offsetted owner and neighbour - for (label facei = 0; facei < mesh.nInternalFaces(); facei++) + for (label facei = 0; facei < mesh.nInternalFaces(); ++facei) { const label own = agglom[faceOwner[facei]]; const label nei = agglom[faceNeighbour[facei]]; @@ -453,7 +679,7 @@ void Foam::decompositionMethod::calcCellCells const label endIndex = cellCells.offsets()[celli+1]; - for (label i = startIndex; i < endIndex; i++) + for (label i = startIndex; i < endIndex; ++i) { if (nbrCells.insert(cellCells.m()[i])) { @@ -547,10 +773,10 @@ void Foam::decompositionMethod::calcCellCells // Number of faces per coarse cell labelList nFacesPerCell(nLocalCoarse, 0); - for (label faceI = 0; faceI < mesh.nInternalFaces(); faceI++) + for (label facei = 0; facei < mesh.nInternalFaces(); ++facei) { - const label own = agglom[faceOwner[faceI]]; - const label nei = agglom[faceNeighbour[faceI]]; + const label own = agglom[faceOwner[facei]]; + const label nei = agglom[faceNeighbour[facei]]; nFacesPerCell[own]++; nFacesPerCell[nei]++; @@ -599,18 +825,18 @@ void Foam::decompositionMethod::calcCellCells const labelList& offsets = cellCells.offsets(); // For internal faces is just offsetted owner and neighbour - for (label faceI = 0; faceI < mesh.nInternalFaces(); faceI++) + for (label facei = 0; facei < mesh.nInternalFaces(); ++facei) { - const label own = agglom[faceOwner[faceI]]; - const label nei = agglom[faceNeighbour[faceI]]; + const label own = agglom[faceOwner[facei]]; + const label nei = agglom[faceNeighbour[facei]]; const label ownIndex = offsets[own] + nFacesPerCell[own]++; const label neiIndex = offsets[nei] + nFacesPerCell[nei]++; m[ownIndex] = globalAgglom.toGlobal(nei); - w[ownIndex] = mag(mesh.faceAreas()[faceI]); + w[ownIndex] = mag(mesh.faceAreas()[facei]); m[neiIndex] = globalAgglom.toGlobal(own); - w[ownIndex] = mag(mesh.faceAreas()[faceI]); + w[ownIndex] = mag(mesh.faceAreas()[facei]); } // For boundary faces is offsetted coupled neighbour @@ -661,14 +887,14 @@ void Foam::decompositionMethod::calcCellCells label startIndex = cellCells.offsets()[0]; - forAll(cellCells, cellI) + forAll(cellCells, celli) { nbrCells.clear(); - nbrCells.insert(globalAgglom.toGlobal(cellI)); + nbrCells.insert(globalAgglom.toGlobal(celli)); - const label endIndex = cellCells.offsets()[cellI+1]; + const label endIndex = cellCells.offsets()[celli+1]; - for (label i = startIndex; i < endIndex; i++) + for (label i = startIndex; i < endIndex; ++i) { if (nbrCells.insert(cellCells.m()[i])) { @@ -678,8 +904,8 @@ void Foam::decompositionMethod::calcCellCells } } startIndex = endIndex; - cellCells.offsets()[cellI+1] = newIndex; - cellCellWeights.offsets()[cellI+1] = newIndex; + cellCells.offsets()[celli+1] = newIndex; + cellCellWeights.offsets()[celli+1] = newIndex; } cellCells.m().setSize(newIndex); @@ -753,7 +979,7 @@ void Foam::decompositionMethod::calcCellCells // labelList nFacesPerCell(nLocalCoarse, 0); // // // 1. Internal faces -// for (label facei = 0; facei < mesh.nInternalFaces(); facei++) +// for (label facei = 0; facei < mesh.nInternalFaces(); ++facei) // { // if (!blockedFace[facei]) // { @@ -880,7 +1106,7 @@ void Foam::decompositionMethod::calcCellCells // const labelList& offsets = cellCells.offsets(); // // // 1. For internal faces is just offsetted owner and neighbour -// for (label facei = 0; facei < mesh.nInternalFaces(); facei++) +// for (label facei = 0; facei < mesh.nInternalFaces(); ++facei) // { // if (!blockedFace[facei]) // { @@ -1032,7 +1258,7 @@ void Foam::decompositionMethod::calcCellCells // // label endIndex = cellCells.offsets()[celli+1]; // -// for (label i = startIndex; i < endIndex; i++) +// for (label i = startIndex; i < endIndex; ++i) // { // if (nbrCells.insert(cellCells.m()[i])) // { @@ -1180,11 +1406,11 @@ Foam::labelList Foam::decompositionMethod::decompose forAll(localRegion, celli) { - label regionI = localRegion[celli]; + const label regioni = localRegion[celli]; - if (regionCentres[regionI] == point::max) + if (regionCentres[regioni] == point::max) { - regionCentres[regionI] = mesh.cellCentres()[celli]; + regionCentres[regioni] = mesh.cellCentres()[celli]; } } @@ -1197,18 +1423,18 @@ Foam::labelList Foam::decompositionMethod::decompose { forAll(localRegion, celli) { - label regionI = localRegion[celli]; + const label regioni = localRegion[celli]; - regionWeights[regionI] += cellWeights[celli]; + regionWeights[regioni] += cellWeights[celli]; } } else { forAll(localRegion, celli) { - label regionI = localRegion[celli]; + const label regioni = localRegion[celli]; - regionWeights[regionI] += 1.0; + regionWeights[regioni] += 1.0; } } @@ -1224,11 +1450,11 @@ Foam::labelList Foam::decompositionMethod::decompose // Implement the explicitConnections since above decompose // does not know about them - forAll(explicitConnections, i) + forAll(explicitConnections, connectioni) { - const labelPair& baffle = explicitConnections[i]; - label f0 = baffle.first(); - label f1 = baffle.second(); + const labelPair& baffle = explicitConnections[connectioni]; + const label f0 = baffle.first(); + const label f1 = baffle.second(); if (!blockedFace[f0] && !blockedFace[f1]) { @@ -1292,7 +1518,7 @@ Foam::labelList Foam::decompositionMethod::decompose { if (!blockedFace[facei]) { - label own = mesh.faceOwner()[facei]; + const label own = mesh.faceOwner()[facei]; seedFaces[nUnblocked] = facei; seedData[nUnblocked] = minData(finalDecomp[own]); nUnblocked++; @@ -1361,10 +1587,8 @@ Foam::labelList Foam::decompositionMethod::decompose forAll(f, fp) { const labelList& pFaces = mesh.pointFaces()[f[fp]]; - forAll(pFaces, i) + for (const label facei : pFaces) { - label facei = pFaces[i]; - finalDecomp[mesh.faceOwner()[facei]] = proci; if (mesh.isInternalFace(facei)) { @@ -1433,9 +1657,9 @@ void Foam::decompositionMethod::setConstraints specifiedProcessorFaces.clear(); explicitConnections.clear(); - forAll(constraints_, constraintI) + forAll(constraints_, constrainti) { - constraints_[constraintI].add + constraints_[constrainti].add ( mesh, blockedFace, @@ -1457,9 +1681,9 @@ void Foam::decompositionMethod::applyConstraints labelList& decomposition ) { - forAll(constraints_, constraintI) + forAll(constraints_, constrainti) { - constraints_[constraintI].apply + constraints_[constrainti].apply ( mesh, blockedFace, diff --git a/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.H b/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.H index 75a797e1aeeb4a9965959f3816ac9ba802221087..96ad3afc982cd37d573148d8c99ce19a1b89cccf 100644 --- a/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.H +++ b/src/parallel/decompose/decompositionMethods/decompositionMethod/decompositionMethod.H @@ -25,7 +25,7 @@ Class Foam::decompositionMethod Description - Abstract base class for decomposition + Abstract base class for domain decomposition SourceFiles decompositionMethod.C @@ -43,29 +43,86 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class decompositionMethod Declaration + Class decompositionMethod Declaration \*---------------------------------------------------------------------------*/ class decompositionMethod { + // Private Member Functions + + //- Set PtrList of constraints by reading decompositionDict_. + void readConstraints(); + + //- Disallow default bitwise copy construct and assignment + decompositionMethod(const decompositionMethod&) = delete; + void operator=(const decompositionMethod&) = delete; + protected: + //- Selection type when handling the coefficients dictionary. + // To be used as a bit-mask for findCoeffsDict + enum selectionType + { + DEFAULT = 0, //!< Default request + EXACT = 1, //!< No fallback to "coeffs" if main name not found + MANDATORY = 2, //!< Fatal if dictionary could not be found + NULL_DICT = 4, //!< On failure, return dictionary::null instead + //!< of the top-level enclosing dictionary. + }; + + // Protected data + //- Top-level decomposition dictionary (eg, decomposeParDict) const dictionary& decompositionDict_; - label nProcessors_; + + //- Region-specific decomposition dictionary information + const dictionary& decompositionRegionDict_; + + //- Number of domains for the decomposition + label nDomains_; //- Optional constraints PtrList<decompositionConstraint> constraints_; -private: - // Private Member Functions + // Protected Member Functions - //- Disallow default bitwise copy construct and assignment - decompositionMethod(const decompositionMethod&); - void operator=(const decompositionMethod&); + //- Locate coeffsName dictionary or the fallback "coeffs" dictionary + //- within an enclosing dictionary. + // + // \param select choose to include "coeffs" in the search, make + // failure a FatalError, return dictionary::null instead on + // failure. + // + // \return the coefficients dictionary found. If nothing was found, + // return the enclosing dictionary or + // dictionary::null (depending on the select parameter). + static const dictionary& findCoeffsDict + ( + const dictionary& dict, + const word& coeffsName, + int select = selectionType::DEFAULT + ); + + + //- Locate coeffsName dictionary or the fallback "coeffs" dictionary. + // Searches both the region-specific decomposition dictionary + // and the top-level decomposition dictionary. + // + // \param select choose to include "coeffs" in the search, make + // failure a FatalError, return dictionary::null instead on + // failure. + // + // \return the coefficients dictionary found. If nothing was found, + // return the top-level (non-region) dictionary or + // dictionary::null (depending on the select parameter). + const dictionary& findCoeffsDict + ( + const word& coeffsName, + int select = selectionType::DEFAULT + ) const; public: @@ -82,9 +139,43 @@ public: decompositionMethod, dictionary, ( - const dictionary& decompositionDict + const dictionary& decompDict ), - (decompositionDict) + (decompDict) + ); + + declareRunTimeSelectionTable + ( + autoPtr, + decompositionMethod, + dictionaryRegion, + ( + const dictionary& decompDict, + const word& regionName + ), + (decompDict, regionName) + ); + + + // Static Methods + + //- Return the \c numberOfSubdomains entry from the dictionary + static label nDomains(const dictionary& decompDict); + + //- Return the \c numberOfSubdomains from a region within the + // "regions" sub-dictionary + static label nDomains + ( + const dictionary& decompDict, + const word& regionName + ); + + //- Return an optional region dictionary from "regions" sub-dictionary + // or dictionary::null on failure. + static const dictionary& optionalRegionDict + ( + const dictionary& decompDict, + const word& regionName ); @@ -93,14 +184,29 @@ public: //- Return a reference to the selected decomposition method static autoPtr<decompositionMethod> New ( - const dictionary& decompositionDict + const dictionary& decompDict + ); + + //- Return a reference to the selected decomposition method, + //- with region specification + static autoPtr<decompositionMethod> New + ( + const dictionary& decompDict, + const word& regionName ); // Constructors //- Construct given the decomposition dictionary - decompositionMethod(const dictionary& decompositionDict); + decompositionMethod(const dictionary& decompDict); + + //- Construct given the decomposition dictionary for specific region + decompositionMethod + ( + const dictionary& decompDict, + const word& regionName + ); //- Destructor @@ -110,9 +216,10 @@ public: // Member Functions - label nDomains() const + //- Number of domains + inline label nDomains() const { - return nProcessors_; + return nDomains_; } //- Is method parallel aware (i.e. does it synchronize domains across diff --git a/src/parallel/decompose/decompositionMethods/geomDecomp/geomDecomp.C b/src/parallel/decompose/decompositionMethods/geomDecomp/geomDecomp.C index 6f741b09598b7415b01320cd0ad58b351f2d06dd..1c2df26498a7051e11dda53e7ca1897b53791271 100644 --- a/src/parallel/decompose/decompositionMethods/geomDecomp/geomDecomp.C +++ b/src/parallel/decompose/decompositionMethods/geomDecomp/geomDecomp.C @@ -25,36 +25,29 @@ License #include "geomDecomp.H" -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // +// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // -Foam::geomDecomp::geomDecomp -( - const dictionary& decompositionDict, - const word& derivedType -) -: - decompositionMethod(decompositionDict), - geomDecomDict_(decompositionDict.optionalSubDict(derivedType + "Coeffs")), - n_(geomDecomDict_.lookup("n")), - delta_(readScalar(geomDecomDict_.lookup("delta"))), - rotDelta_(I) +void Foam::geomDecomp::readCoeffs() { - // check that the case makes sense : + coeffsDict_.readIfPresent("delta", delta_); + + coeffsDict_.lookup("n") >> n_; - if (nProcessors_ != n_.x()*n_.y()*n_.z()) + // Verify that the input makes sense + if (nDomains_ != n_.x()*n_.y()*n_.z()) { FatalErrorInFunction - << "Wrong number of processor divisions in geomDecomp:" << nl - << "Number of domains : " << nProcessors_ << nl + << "Wrong number of domain divisions in geomDecomp:" << nl + << "Number of domains : " << nDomains_ << nl << "Wanted decomposition : " << n_ << exit(FatalError); } - scalar d = 1 - 0.5*delta_*delta_; - scalar d2 = sqr(d); + const scalar d = 1 - 0.5*delta_*delta_; + const scalar d2 = sqr(d); - scalar a = delta_; - scalar a2 = sqr(a); + const scalar a = delta_; + const scalar a2 = sqr(a); rotDelta_ = tensor ( @@ -65,4 +58,41 @@ Foam::geomDecomp::geomDecomp } +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::geomDecomp::geomDecomp +( + const word& derivedType, + const dictionary& decompDict, + int select +) +: + decompositionMethod(decompDict), + coeffsDict_(findCoeffsDict(derivedType + "Coeffs", select)), + n_(1,1,1), + delta_(0.001), + rotDelta_(I) +{ + readCoeffs(); +} + + +Foam::geomDecomp::geomDecomp +( + const word& derivedType, + const dictionary& decompDict, + const word& regionName, + int select +) +: + decompositionMethod(decompDict, regionName), + coeffsDict_(findCoeffsDict(derivedType + "Coeffs", select)), + n_(1,1,1), + delta_(0.001), + rotDelta_(I) +{ + readCoeffs(); +} + + // ************************************************************************* // diff --git a/src/parallel/decompose/decompositionMethods/geomDecomp/geomDecomp.H b/src/parallel/decompose/decompositionMethods/geomDecomp/geomDecomp.H index e1538356ee7f735c17967775aa9da00789a7e8fc..7684a2ef4ee2092921bd0e4be4b4a07df363dbf0 100644 --- a/src/parallel/decompose/decompositionMethods/geomDecomp/geomDecomp.H +++ b/src/parallel/decompose/decompositionMethods/geomDecomp/geomDecomp.H @@ -25,7 +25,14 @@ Class Foam::geomDecomp Description - Geometrical domain decomposition + Base for geometrical domain decomposition methods + + Base coefficients: + \table + Property | Description | Required | Default + n | (nx ny nz) | yes + delta | delta for rotation matrix | no | 0.001 + \endtable SourceFiles geomDecomp.C @@ -42,36 +49,56 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class geomDecomp Declaration + Class geomDecomp Declaration \*---------------------------------------------------------------------------*/ class geomDecomp : public decompositionMethod { + // Private Member Functions + + //- Read input values and initialize the rotDelta_ + void readCoeffs(); + protected: // Protected data - const dictionary& geomDecomDict_; + //- Coefficients for all derived methods + const dictionary& coeffsDict_; Vector<label> n_; + + //- Default = 0.001 scalar delta_; + tensor rotDelta_; public: // Constructors - //- Construct given the decomposition dictionary - // and the derived type name + //- Construct for derived type name and decomposition dictionary geomDecomp ( - const dictionary& decompositionDict, - const word& derivedType + const word& derivedType, + const dictionary& decompDict, + int select = selectionType::DEFAULT ); + //- Construct for derived type name, decomposition dictionary + //- and region name + geomDecomp + ( + const word& derivedType, + const dictionary& decompDict, + const word& regionName, + int select = selectionType::DEFAULT + ); + + //- Return for every coordinate the wanted processor number. virtual labelList decompose ( diff --git a/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.C b/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.C index 658ae83058a7bc0c1dd965b1b6035e0d9ed220db..486a29ea04e1e9d5e22e0a2eccde7467c90e798a 100644 --- a/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.C +++ b/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.C @@ -3,7 +3,7 @@ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation - \\/ M anipulation | Copyright (C) 2015 OpenCFD Ltd. + \\/ M anipulation | Copyright (C) 2015-2017 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -40,44 +40,51 @@ namespace Foam hierarchGeomDecomp, dictionary ); + + addToRunTimeSelectionTable + ( + decompositionMethod, + hierarchGeomDecomp, + dictionaryRegion + ); } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // void Foam::hierarchGeomDecomp::setDecompOrder() { - const word order(geomDecomDict_.lookup("order")); - - if (order.size() != 3) - { - FatalIOErrorInFunction - ( - decompositionDict_ - ) << "number of characters in order (" << order << ") != 3" - << exit(FatalIOError); - } + word order; - for (label i = 0; i < 3; ++i) + if (coeffsDict_.readIfPresent("order", order)) { - if (order[i] == 'x') - { - decompOrder_[i] = 0; - } - else if (order[i] == 'y') - { - decompOrder_[i] = 1; - } - else if (order[i] == 'z') - { - decompOrder_[i] = 2; - } - else + if (order.size() != 3) { FatalIOErrorInFunction ( decompositionDict_ - ) << "Illegal decomposition order " << order << endl - << "It should only contain x, y or z" << exit(FatalError); + ) << "number of characters in order (" << order << ") != 3" + << exit(FatalIOError); + } + + for (int i = 0; i < 3; ++i) + { + // Change [x-z] -> [0-2] + + switch (order[i]) + { + case 'x': decompOrder_[i] = 0; break; + case 'y': decompOrder_[i] = 1; break; + case 'z': decompOrder_[i] = 2; break; + + default: + FatalIOErrorInFunction + ( + decompositionDict_ + ) << "Illegal decomposition order " << order << nl + << "It should only contain x, y or z" + << exit(FatalError); + break; + } } } } @@ -704,7 +711,7 @@ Foam::labelList Foam::hierarchGeomDecomp::decompose label allSize = points.size(); reduce(allSize, sumOp<label>()); - const label sizeTol = max(1, label(1e-3*allSize/nProcessors_)); + const label sizeTol = max(1, label(1e-3*allSize/nDomains_)); // Sort recursive sortComponent @@ -745,7 +752,7 @@ Foam::labelList Foam::hierarchGeomDecomp::decompose label allSize = points.size(); reduce(allSize, sumOp<label>()); - const label sizeTol = max(1, label(1e-3*allSize/nProcessors_)); + const label sizeTol = max(1, label(1e-3*allSize/nDomains_)); // Sort recursive sortComponent @@ -767,11 +774,24 @@ Foam::labelList Foam::hierarchGeomDecomp::decompose Foam::hierarchGeomDecomp::hierarchGeomDecomp ( - const dictionary& decompositionDict + const dictionary& decompDict +) +: + geomDecomp(typeName, decompDict), + decompOrder_({0,1,2}) +{ + setDecompOrder(); +} + + +Foam::hierarchGeomDecomp::hierarchGeomDecomp +( + const dictionary& decompDict, + const word& regionName ) : - geomDecomp(decompositionDict, typeName), - decompOrder_() + geomDecomp(typeName, decompDict, regionName), + decompOrder_({0,1,2}) { setDecompOrder(); } diff --git a/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.H b/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.H index 2df6080f5b5b93918b6acf238d13f41a9fb69aa6..91fbf6d877043873b38c0fd52d5d3a416ab20dc8 100644 --- a/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.H +++ b/src/parallel/decompose/decompositionMethods/hierarchGeomDecomp/hierarchGeomDecomp.H @@ -3,7 +3,7 @@ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation - \\/ M anipulation | + \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -25,9 +25,10 @@ Class Foam::hierarchGeomDecomp Description - Does hierarchical decomposition of points. Works by first sorting the - points in x direction into equal sized bins, then in y direction and - finally in z direction. + Does hierarchical decomposition of points, selectable as \c hierarchical. + + Works by first sorting the points in x direction into equal sized bins, + then in y direction and finally in z direction. Uses single array to hold decomposition which is indexed as if it is a 3 dimensional array: @@ -44,6 +45,13 @@ Description Since the domains are of equal size the maximum difference in size is n[0]*n[1] (or n[1]*n[2]?) (small anyway) + Method coefficients: + \table + Property | Description | Required | Default + n | (nx ny nz) | yes + delta | delta for rotation matrix | no | 0.001 + order | order of operation | no | xyz + \endtable SourceFiles hierarchGeomDecomp.C @@ -61,7 +69,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class hierarchGeomDecomp Declaration + Class hierarchGeomDecomp Declaration \*---------------------------------------------------------------------------*/ class hierarchGeomDecomp @@ -77,6 +85,7 @@ class hierarchGeomDecomp // Private Member Functions //- Convert ordering string ("xyz") into list of components. + // Checks for bad entries, but no check for duplicate entries. void setDecompOrder(); //- Evaluates the weighted sizes for each sorted point. @@ -155,8 +164,8 @@ class hierarchGeomDecomp ); //- Disallow default bitwise copy construct and assignment - void operator=(const hierarchGeomDecomp&); - hierarchGeomDecomp(const hierarchGeomDecomp&); + void operator=(const hierarchGeomDecomp&) = delete; + hierarchGeomDecomp(const hierarchGeomDecomp&) = delete; public: @@ -168,7 +177,14 @@ public: // Constructors //- Construct given the decomposition dictionary - hierarchGeomDecomp(const dictionary& decompositionDict); + hierarchGeomDecomp(const dictionary& decompDict); + + //- Construct for decomposition dictionary and region name + hierarchGeomDecomp + ( + const dictionary& decompDict, + const word& regionName + ); //- Destructor diff --git a/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.C b/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.C index 0c42d691f6c4e33b8f8f9385aeb582d10861aae8..23cbd33e3110a19cdf5fe106687020a39e8ffa40 100644 --- a/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.C +++ b/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.C @@ -3,7 +3,7 @@ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation - \\/ M anipulation | + \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -21,9 +21,6 @@ License You should have received a copy of the GNU General Public License along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. -Description - Decomposition given a cell-to-processor association in a file - \*---------------------------------------------------------------------------*/ #include "manualDecomp.H" @@ -43,21 +40,33 @@ namespace Foam manualDecomp, dictionary ); + + addToRunTimeSelectionTable + ( + decompositionMethod, + manualDecomp, + dictionaryRegion + ); } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::manualDecomp::manualDecomp(const dictionary& decompositionDict) +Foam::manualDecomp::manualDecomp(const dictionary& decompDict) : - decompositionMethod(decompositionDict), - decompDataFile_ - ( - decompositionDict.optionalSubDict - ( - word(decompositionDict.lookup("method")) + "Coeffs" - ).lookup("dataFile") - ) + decompositionMethod(decompDict), + dataFile_(findCoeffsDict(typeName + "Coeffs").lookup("dataFile")) +{} + + +Foam::manualDecomp::manualDecomp +( + const dictionary& decompDict, + const word& regionName +) +: + decompositionMethod(decompDict, regionName), + dataFile_(findCoeffsDict(typeName + "Coeffs").lookup("dataFile")) {} @@ -74,7 +83,7 @@ Foam::labelList Foam::manualDecomp::decompose ( IOobject ( - decompDataFile_, + dataFile_, mesh.facesInstance(), mesh, IOobject::MUST_READ, @@ -93,18 +102,18 @@ Foam::labelList Foam::manualDecomp::decompose << finalDecomp.size() << " Number of points: " << points.size() << ".\n" << "Manual decomposition data read from file " - << decompDataFile_ << "." << endl + << dataFile_ << "." << endl << exit(FatalError); } - if (min(finalDecomp) < 0 || max(finalDecomp) > nProcessors_ - 1) + if (min(finalDecomp) < 0 || max(finalDecomp) > nDomains_ - 1) { FatalErrorInFunction << "According to the decomposition, cells assigned to " << "impossible processor numbers. Min processor = " << min(finalDecomp) << " Max processor = " << max(finalDecomp) << ".\n" << "Manual decomposition data read from file " - << decompDataFile_ << "." << endl + << dataFile_ << "." << endl << exit(FatalError); } diff --git a/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.H b/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.H index c453bcf73d6e0f3a692faab429bef52b3f04dd4d..ac97c4dbb325852c0c3a82977fe17d1374743d3d 100644 --- a/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.H +++ b/src/parallel/decompose/decompositionMethods/manualDecomp/manualDecomp.H @@ -3,7 +3,7 @@ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation - \\/ M anipulation | + \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -25,7 +25,13 @@ Class Foam::manualDecomp Description - Decomposition given a cell-to-processor association in a file + Decompose based on cell-to-processor association in a file + + Method coefficients: + \table + Property | Description | Required | Default + dataFile | filename of cell decomposition data | yes | + \endtable SourceFiles manualDecomp.C @@ -50,14 +56,14 @@ class manualDecomp { // Private data - fileName decompDataFile_; + fileName dataFile_; // Private Member Functions //- Disallow default bitwise copy construct and assignment - void operator=(const manualDecomp&); - manualDecomp(const manualDecomp&); + void operator=(const manualDecomp&) = delete; + manualDecomp(const manualDecomp&) = delete; public: @@ -69,7 +75,15 @@ public: // Constructors //- Construct given the decomposition dictionary - manualDecomp(const dictionary& decompositionDict); + manualDecomp(const dictionary& decompDict); + + //- Construct given the decomposition dictionary and region name + manualDecomp + ( + const dictionary& decompDict, + const word& regionName + ); + //- Destructor virtual ~manualDecomp() diff --git a/src/parallel/decompose/decompositionMethods/metisLikeDecomp/metisLikeDecomp.C b/src/parallel/decompose/decompositionMethods/metisLikeDecomp/metisLikeDecomp.C index 02d283c5482edf73e2880748b9815757aca93e02..7c3b6bb7fee0680361b322f32529a603910fbfb1 100644 --- a/src/parallel/decompose/decompositionMethods/metisLikeDecomp/metisLikeDecomp.C +++ b/src/parallel/decompose/decompositionMethods/metisLikeDecomp/metisLikeDecomp.C @@ -150,9 +150,28 @@ Foam::label Foam::metisLikeDecomp::decomposeGeneral // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::metisLikeDecomp::metisLikeDecomp(const dictionary& decompositionDict) +Foam::metisLikeDecomp::metisLikeDecomp +( + const word& derivedType, + const dictionary& decompDict, + int select +) +: + decompositionMethod(decompDict), + coeffsDict_(findCoeffsDict(derivedType + "Coeffs", select)) +{} + + +Foam::metisLikeDecomp::metisLikeDecomp +( + const word& derivedType, + const dictionary& decompDict, + const word& regionName, + int select +) : - decompositionMethod(decompositionDict) + decompositionMethod(decompDict, regionName), + coeffsDict_(findCoeffsDict(derivedType + "Coeffs", select)) {} diff --git a/src/parallel/decompose/decompositionMethods/metisLikeDecomp/metisLikeDecomp.H b/src/parallel/decompose/decompositionMethods/metisLikeDecomp/metisLikeDecomp.H index 27b81bf3e68747a7611af162cde9a49b6a41d377..69af7acd3ca5b0ad734e04af826cd3a4087c7431 100644 --- a/src/parallel/decompose/decompositionMethods/metisLikeDecomp/metisLikeDecomp.H +++ b/src/parallel/decompose/decompositionMethods/metisLikeDecomp/metisLikeDecomp.H @@ -60,6 +60,12 @@ class metisLikeDecomp protected: + // Protected data + + //- Coefficients for all derived methods + const dictionary& coeffsDict_; + + // Protected Member Functions //- Serial and/or collect/distribute for parallel operation @@ -84,8 +90,29 @@ public: // Constructors - //- Construct given the decomposition dictionary - metisLikeDecomp(const dictionary& decompositionDict); + //- Construct for derived type name and decomposition dictionary. + // The default search for the coefficients will return dictionary::null + // on failure. This avoids a name clash of a metis "method" with the + // top level. + metisLikeDecomp + ( + const word& derivedType, + const dictionary& decompDict, + int select = selectionType::NULL_DICT + ); + + //- Construct for derived type name, decomposition dictionary + //- and region name + // The default search for the coefficients will return dictionary::null + // on failure. This avoids a name clash of a metis "method" with the + // top level. + metisLikeDecomp + ( + const word& derivedType, + const dictionary& decompDict, + const word& regionName, + int select = selectionType::NULL_DICT + ); //- Destructor diff --git a/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.C b/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.C index 1bdc02aea9d1dbc0d89c3b5adb920a788e7e9107..3b72aa6d888542c72b1dfc2871379b101fc3ecca 100644 --- a/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.C +++ b/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.C @@ -41,11 +41,209 @@ namespace Foam multiLevelDecomp, dictionary ); + + addToRunTimeSelectionTable + ( + decompositionMethod, + multiLevelDecomp, + dictionaryRegion + ); } // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // +void Foam::multiLevelDecomp::createMethodsDict() +{ + methodsDict_.clear(); + + word defaultMethod; + labelList domains; + + label nTotal = 0; + label nLevels = 0; + + // Found (non-recursive, no patterns) "method" and "domains" ? + // Allow as quick short-cut entry + if + ( + // non-recursive, no patterns + coeffsDict_.readIfPresent("method", defaultMethod, false, false) + // non-recursive, no patterns + && coeffsDict_.readIfPresent("domains", domains, false, false) + ) + { + // Short-cut version specified by method, domains only + + nTotal = (domains.empty() ? 0 : 1); + + for (const label n : domains) + { + nTotal *= n; + ++nLevels; + } + + if (nTotal == 1) + { + // Emit Warning + nTotal = nDomains(); + nLevels = 1; + + domains.setSize(1); + domains[0] = nTotal; + } + else if (nTotal > 0 && nTotal < nDomains() && !(nDomains() % nTotal)) + { + // nTotal < nDomains, but with an integral factor, + // which we insert as level 0 + ++nLevels; + + labelList old(std::move(domains)); + + domains.setSize(old.size()+1); + + domains[0] = nDomains() / nTotal; + forAll(old, i) + { + domains[i+1] = old[i]; + } + nTotal *= domains[0]; + + Info<<" inferred level0 with " << domains[0] + << " domains" << nl << nl; + } + + if (!nLevels || nTotal != nDomains()) + { + FatalErrorInFunction + << "Top level decomposition specifies " << nDomains() + << " domains which is not equal to the product of" + << " all sub domains " << nTotal + << exit(FatalError); + } + + // Create editable methods dictionaries + nLevels = 0; + + // Common coeffs dictionary + const dictionary& subMethodCoeffsDict + ( + findCoeffsDict + ( + coeffsDict_, + defaultMethod + "Coeffs", + selectionType::NULL_DICT + ) + ); + + for (const label n : domains) + { + const word levelName("level" + Foam::name(nLevels++)); + + entry* dictptr = methodsDict_.set(levelName, dictionary()); + + dictionary& dict = dictptr->dict(); + dict.add("method", defaultMethod); + dict.add("numberOfSubdomains", n); + + // Inject coeffs dictionary too + if (subMethodCoeffsDict.size()) + { + dict.add(subMethodCoeffsDict.dictName(), subMethodCoeffsDict); + } + } + } + else + { + // Specified by full dictionaries + + // Create editable methods dictionaries + // - Only consider sub-dictionaries with a "numberOfSubdomains" entry + // This automatically filters out any coeffs dictionaries + + forAllConstIters(coeffsDict_, iter) + { + word methodName; + + if + ( + iter().isDict() + // non-recursive, no patterns + && iter().dict().found("numberOfSubdomains", false, false) + ) + { + // No method specified? can use a default method? + + const bool addDefaultMethod + ( + !(iter().dict().found("method", false, false)) + && !defaultMethod.empty() + ); + + entry* e = methodsDict_.add(iter()); + + if (addDefaultMethod && e && e->isDict()) + { + e->dict().add("method", defaultMethod); + } + } + } + } +} + + +void Foam::multiLevelDecomp::setMethods() +{ + // Assuming methodsDict_ has be properly created, convert the method + // dictionaries to actual methods + + label nLevels = 0; + + methods_.clear(); + methods_.setSize(methodsDict_.size()); + forAllConstIters(methodsDict_, iter) + { + // Dictionary entries only + // - these method dictioaries are non-regional + if (iter().isDict()) + { + methods_.set + ( + nLevels++, + // non-verbose would be nicer + decompositionMethod::New(iter().dict()) + ); + } + } + + methods_.setSize(nLevels); + + // Verify that nTotal is correct based on what each method delivers + + Info<< nl + << "Decompose " << type() << " [" << nDomains() << "] in " + << nLevels << " levels:" << endl; + + label nTotal = 1; + forAll(methods_, i) + { + Info<< " level " << i << " : " << methods_[i].type() + << " [" << methods_[i].nDomains() << "]" << endl; + + nTotal *= methods_[i].nDomains(); + } + + if (nTotal != nDomains()) + { + FatalErrorInFunction + << "Top level decomposition specifies " << nDomains() + << " domains which is not equal to the product of" + << " all sub domains " << nTotal + << exit(FatalError); + } +} + + // Given a subset of cells determine the new global indices. The problem // is in the cells from neighbouring processors which need to be renumbered. void Foam::multiLevelDecomp::subsetGlobalCellCells @@ -277,7 +475,7 @@ void Foam::multiLevelDecomp::decompose // Get original level0 dictionary and modify numberOfSubdomains dictionary level0Dict; - forAllConstIter(dictionary, methodsDict_, iter) + forAllConstIters(methodsDict_, iter) { if (iter().isDict()) { @@ -367,42 +565,45 @@ void Foam::multiLevelDecomp::decompose // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::multiLevelDecomp::multiLevelDecomp(const dictionary& decompositionDict) +Foam::multiLevelDecomp::multiLevelDecomp(const dictionary& decompDict) : - decompositionMethod(decompositionDict), - methodsDict_(decompositionDict_.subDict(typeName + "Coeffs")) + decompositionMethod(decompDict), + coeffsDict_ + ( + findCoeffsDict + ( + typeName + "Coeffs", + (selectionType::EXACT | selectionType::MANDATORY) + ) + ), + methodsDict_(), + methods_() { - methods_.setSize(methodsDict_.size()); - label nLevels = 0; - forAllConstIter(dictionary, methodsDict_, iter) - { - // Ignore primitive entries which may be there for additional control - if (iter().isDict()) - { - methods_.set(nLevels++, decompositionMethod::New(iter().dict())); - } - } - - methods_.setSize(nLevels); + createMethodsDict(); + setMethods(); +} - label nTot = 1; - Info<< "decompositionMethod " << type() << " :" << endl; - forAll(methods_, i) - { - Info<< " level " << i << " decomposing with " << methods_[i].type() - << " into " << methods_[i].nDomains() << " subdomains." << endl; - nTot *= methods_[i].nDomains(); - } - - if (nTot != nDomains()) - { - FatalErrorInFunction - << "Top level decomposition specifies " << nDomains() - << " domains which is not equal to the product of" - << " all sub domains " << nTot - << exit(FatalError); - } +Foam::multiLevelDecomp::multiLevelDecomp +( + const dictionary& decompDict, + const word& regionName +) +: + decompositionMethod(decompDict, regionName), + coeffsDict_ + ( + findCoeffsDict + ( + typeName + "Coeffs", + (selectionType::EXACT | selectionType::MANDATORY) + ) + ), + methodsDict_(), + methods_() +{ + createMethodsDict(); + setMethods(); } @@ -417,6 +618,7 @@ bool Foam::multiLevelDecomp::parallelAware() const return false; } } + return true; } diff --git a/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.H b/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.H index d11f14280b050f3914c5ea8d0b133876e3203710..dcc40cd8dad4bc330d055179383f20b426dd53eb 100644 --- a/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.H +++ b/src/parallel/decompose/decompositionMethods/multiLevelDecomp/multiLevelDecomp.H @@ -25,7 +25,7 @@ Class Foam::multiLevelDecomp Description - Decomposition given using consecutive application of decomposers. + Decompose given using consecutive application of decomposers. SourceFiles multiLevelDecomp.C @@ -50,6 +50,10 @@ class multiLevelDecomp { // Private data + //- Original coefficients for this method + const dictionary& coeffsDict_; + + //- Rewritten dictionary of individual methods dictionary methodsDict_; PtrList<decompositionMethod> methods_; @@ -57,6 +61,13 @@ class multiLevelDecomp // Private Member Functions + //- Fill the methodsDict_ + void createMethodsDict(); + + //- Set methods based on the contents of the methodsDict_ + void setMethods(); + + //- Given connectivity across processors work out connectivity // for a (consistent) subset void subsetGlobalCellCells @@ -98,7 +109,14 @@ public: // Constructors //- Construct given the decomposition dictionary - multiLevelDecomp(const dictionary& decompositionDict); + multiLevelDecomp(const dictionary& decompDict); + + //- Construct given decomposition dictionary and region name + multiLevelDecomp + ( + const dictionary& decompDict, + const word& regionName + ); //- Destructor diff --git a/src/parallel/decompose/decompositionMethods/noDecomp/noDecomp.C b/src/parallel/decompose/decompositionMethods/noDecomp/noDecomp.C index e62e588b9ec353797486cc904707183f4e65dc37..9c4606fce566404b0e0a9af5a62734dd206186cb 100644 --- a/src/parallel/decompose/decompositionMethods/noDecomp/noDecomp.C +++ b/src/parallel/decompose/decompositionMethods/noDecomp/noDecomp.C @@ -3,7 +3,7 @@ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2012 OpenFOAM Foundation - \\/ M anipulation | + \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -39,14 +39,32 @@ namespace Foam dictionary, none ); + + addNamedToRunTimeSelectionTable + ( + decompositionMethod, + noDecomp, + dictionaryRegion, + none + ); } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::noDecomp::noDecomp(const dictionary& decompositionDict) +Foam::noDecomp::noDecomp(const dictionary& decompDict) +: + decompositionMethod(decompDict) +{} + + +Foam::noDecomp::noDecomp +( + const dictionary& decompDict, + const word& regionName +) : - decompositionMethod(decompositionDict) + decompositionMethod(decompDict, regionName) {} diff --git a/src/parallel/decompose/decompositionMethods/noDecomp/noDecomp.H b/src/parallel/decompose/decompositionMethods/noDecomp/noDecomp.H index 5c3459f16faaaf822a8f044d371be36fb827eb5b..74169998d27a139496f9cd3a7ea4ac7e7445674a 100644 --- a/src/parallel/decompose/decompositionMethods/noDecomp/noDecomp.H +++ b/src/parallel/decompose/decompositionMethods/noDecomp/noDecomp.H @@ -3,7 +3,7 @@ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2012-2015 OpenFOAM Foundation - \\/ M anipulation | + \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -25,7 +25,9 @@ Class Foam::noDecomp Description - Dummy decomposition method + A dummy decomposition method, selected as \c none. + + Method coefficients: \a none SourceFiles noDecomp.C @@ -52,8 +54,8 @@ class noDecomp // Private Member Functions //- Disallow default bitwise copy construct and assignment - void operator=(const noDecomp&); - noDecomp(const noDecomp&); + void operator=(const noDecomp&) = delete; + noDecomp(const noDecomp&) = delete; public: @@ -65,7 +67,15 @@ public: // Constructors //- Construct given the decomposition dictionary - noDecomp(const dictionary& decompositionDict); + noDecomp(const dictionary& decompDict); + + //- Construct given the decomposition dictionary and region name + noDecomp + ( + const dictionary& decompDict, + const word& regionName + ); + //- Destructor virtual ~noDecomp() @@ -74,15 +84,15 @@ public: // Member Functions - //- Manual decompose does not care about proc boundaries - is all - // up to the user. + //- Manual decompose does not care about proc boundaries - it is all + //- up to the user. virtual bool parallelAware() const { return true; } - //- Return for every coordinate the wanted processor number. Use the - // mesh connectivity (if needed) + //- Return for every coordinate the wanted processor number. + // Use the mesh connectivity (if needed) virtual labelList decompose ( const polyMesh& mesh, @@ -93,8 +103,8 @@ public: return labelList(cc.size(), Pstream::myProcNo()); } - //- Return for every coordinate the wanted processor number. Explicitly - // provided connectivity - does not use mesh_. + //- Return for every coordinate the wanted processor number. + // Explicitly provided connectivity - does not use mesh_. // The connectivity is equal to mesh.cellCells() except for // - in parallel the cell numbers are global cell numbers (starting // from 0 at processor0 and then incrementing all through the diff --git a/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.C b/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.C index a91b743a18e3532a7fac5c5d6bdc7574e07064cc..ece25f250f86d8b9a23cf9716fda145316614540 100644 --- a/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.C +++ b/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.C @@ -3,7 +3,7 @@ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation - \\/ M anipulation | + \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -41,8 +41,16 @@ namespace Foam simpleGeomDecomp, dictionary ); + + addToRunTimeSelectionTable + ( + decompositionMethod, + simpleGeomDecomp, + dictionaryRegion + ); } + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // assignToProcessorGroup : given nCells cells and nProcGroup processor @@ -297,9 +305,19 @@ Foam::labelList Foam::simpleGeomDecomp::decomposeOneProc // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::simpleGeomDecomp::simpleGeomDecomp(const dictionary& decompositionDict) +Foam::simpleGeomDecomp::simpleGeomDecomp(const dictionary& decompDict) +: + geomDecomp(typeName, decompDict) +{} + + +Foam::simpleGeomDecomp::simpleGeomDecomp +( + const dictionary& decompDict, + const word& regionName +) : - geomDecomp(decompositionDict, typeName) + geomDecomp(typeName, decompDict, regionName) {} diff --git a/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.H b/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.H index 9b32d1c50844a25df92786746a36e7b7c45aaf16..c5abc336d9c150288e5858a1d0df7668a067e267 100644 --- a/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.H +++ b/src/parallel/decompose/decompositionMethods/simpleGeomDecomp/simpleGeomDecomp.H @@ -25,6 +25,14 @@ Class Foam::simpleGeomDecomp Description + Simple geometric decomposition, selectable as \c simple + + Method coefficients: + \table + Property | Description | Required | Default + n | (nx ny nz) | yes + delta | delta for rotation matrix | no | 0.001 + \endtable SourceFiles simpleGeomDecomp.C @@ -40,7 +48,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class simpleGeomDecomp Declaration + Class simpleGeomDecomp Declaration \*---------------------------------------------------------------------------*/ class simpleGeomDecomp @@ -69,8 +77,8 @@ class simpleGeomDecomp ) const; //- Disallow default bitwise copy construct and assignment - void operator=(const simpleGeomDecomp&); - simpleGeomDecomp(const simpleGeomDecomp&); + void operator=(const simpleGeomDecomp&) = delete; + simpleGeomDecomp(const simpleGeomDecomp&) = delete; public: @@ -81,8 +89,15 @@ public: // Constructors - //- Construct given the decomposition dictionary - simpleGeomDecomp(const dictionary& decompositionDict); + //- Construct given decomposition dictionary + simpleGeomDecomp(const dictionary& decompDict); + + //- Construct given decomposition dictionary and region name + simpleGeomDecomp + ( + const dictionary& decompDict, + const word& regionName + ); //- Destructor diff --git a/src/parallel/decompose/decompositionMethods/structuredDecomp/structuredDecomp.C b/src/parallel/decompose/decompositionMethods/structuredDecomp/structuredDecomp.C index 2d9dbeff3fa6829be5bc8217877ba40c0f44f2d0..a2a68a871ecbb439b28c521517243dfd2e977548 100644 --- a/src/parallel/decompose/decompositionMethods/structuredDecomp/structuredDecomp.C +++ b/src/parallel/decompose/decompositionMethods/structuredDecomp/structuredDecomp.C @@ -46,10 +46,10 @@ namespace Foam // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::structuredDecomp::structuredDecomp(const dictionary& decompositionDict) +Foam::structuredDecomp::structuredDecomp(const dictionary& decompDict) : - decompositionMethod(decompositionDict), - methodDict_(decompositionDict_.optionalSubDict(typeName + "Coeffs")), + decompositionMethod(decompDict), + methodDict_(findCoeffsDict(typeName + "Coeffs", selectionType::MANDATORY)), patches_(methodDict_.lookup("patches")) { methodDict_.set("numberOfSubdomains", nDomains()); @@ -76,20 +76,16 @@ Foam::labelList Foam::structuredDecomp::decompose const labelHashSet patchIDs(pbm.patchSet(patches_)); label nFaces = 0; - forAllConstIter(labelHashSet, patchIDs, iter) + for (const label patchi : patchIDs) { - nFaces += pbm[iter.key()].size(); + nFaces += pbm[patchi].size(); } // Extract a submesh. labelHashSet patchCells(2*nFaces); - forAllConstIter(labelHashSet, patchIDs, iter) + for (const label patchi : patchIDs) { - const labelUList& fc = pbm[iter.key()].faceCells(); - forAll(fc, i) - { - patchCells.insert(fc[i]); - } + patchCells.insert(pbm[patchi].faceCells()); } // Subset the layer of cells next to the patch @@ -118,9 +114,9 @@ Foam::labelList Foam::structuredDecomp::decompose labelList patchFaces(nFaces); List<topoDistanceData> patchData(nFaces); nFaces = 0; - forAllConstIter(labelHashSet, patchIDs, iter) + for (const label patchi : patchIDs) { - const polyPatch& pp = pbm[iter.key()]; + const polyPatch& pp = pbm[patchi]; const labelUList& fc = pp.faceCells(); forAll(fc, i) { diff --git a/src/parallel/decompose/decompositionMethods/structuredDecomp/structuredDecomp.H b/src/parallel/decompose/decompositionMethods/structuredDecomp/structuredDecomp.H index a2374f40a05732e188ca109f91cf360853fe9968..171a51be01cfde4e41919f613b8fc524f62b1654 100644 --- a/src/parallel/decompose/decompositionMethods/structuredDecomp/structuredDecomp.H +++ b/src/parallel/decompose/decompositionMethods/structuredDecomp/structuredDecomp.H @@ -25,7 +25,7 @@ Class Foam::structuredDecomp Description - Decomposition by walking out decomposition of patch cells mesh. + Walk out decomposition of patch cells mesh - selectable as \c structured. SourceFiles structuredDecomp.C @@ -41,7 +41,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class structuredDecomp Declaration + Class structuredDecomp Declaration \*---------------------------------------------------------------------------*/ class structuredDecomp @@ -60,8 +60,8 @@ class structuredDecomp // Private Member Functions //- Disallow default bitwise copy construct and assignment - void operator=(const structuredDecomp&); - structuredDecomp(const structuredDecomp&); + void operator=(const structuredDecomp&) = delete; + structuredDecomp(const structuredDecomp&) = delete; public: @@ -73,7 +73,7 @@ public: // Constructors //- Construct given the decomposition dictionary - structuredDecomp(const dictionary& decompositionDict); + structuredDecomp(const dictionary& decompDict); //- Destructor diff --git a/src/parallel/decompose/kahipDecomp/kahipDecomp.C b/src/parallel/decompose/kahipDecomp/kahipDecomp.C index 2bf6d8840577d14f70efacc3909d069e36dcc31d..7774934163e21b59f63ca17b4daea6b9b5a8d737 100644 --- a/src/parallel/decompose/kahipDecomp/kahipDecomp.C +++ b/src/parallel/decompose/kahipDecomp/kahipDecomp.C @@ -38,7 +38,20 @@ License namespace Foam { defineTypeNameAndDebug(kahipDecomp, 0); - addToRunTimeSelectionTable(decompositionMethod, kahipDecomp, dictionary); + + addToRunTimeSelectionTable + ( + decompositionMethod, + kahipDecomp, + dictionary + ); + + addToRunTimeSelectionTable + ( + decompositionMethod, + kahipDecomp, + dictionaryRegion + ); } @@ -73,9 +86,6 @@ Foam::label Foam::kahipDecomp::decomposeSerial int seed = 0; bool verbose = false; - const dictionary* coeffsDictPtr = - decompositionDict_.subDictPtr("kahipCoeffs"); - #if WM_LABEL_SIZE == 64 if (xadj.size()-1 > INT_MAX) { @@ -120,109 +130,91 @@ Foam::label Foam::kahipDecomp::decomposeSerial } } - // Additional sizing parameters (testing only) - std::map<std::string, std::vector<int>> sizingParams; + kahipConfig = + configNames.lookupOrDefault("config", coeffsDict_, kahipConfig); - // Check for user supplied weights and decomp options - if (coeffsDictPtr) - { - const dictionary& coeffDict = *coeffsDictPtr; + coeffsDict_.readIfPresent("imbalance", imbalance); + coeffsDict_.readIfPresent("verbose", verbose); - //- Find the key in the dictionary and return the corresponding - // enumeration element based on its name. - // Return the default value if the key was not found in the dictionary. - // Fatal if the enumerated name was incorrect. + Info<< "kahipDecomp :" + << " config=" << configNames[kahipConfig] + << " imbalance=" << imbalance; - kahipConfig = - configNames.lookupOrDefault("config", coeffDict, kahipConfig); + if (coeffsDict_.readIfPresent("seed", seed)) + { + Info<< " seed=" << seed; + } - coeffDict.readIfPresent("imbalance", imbalance); - coeffDict.readIfPresent("verbose", verbose); + // Additional sizing parameters (testing only) + std::map<std::string, std::vector<int>> sizingParams; + + List<int> labels; + if + ( + coeffsDict_.readIfPresent("hierarchy", labels) + && !labels.empty() + ) + { + std::vector<int> vec; + vec.reserve(labels.size()+1); - Info<< "kahipDecomp :" - << " config=" << configNames[kahipConfig] - << " imbalance=" << imbalance; + // Verify sizing - List<int> labels; - if - ( - coeffDict.readIfPresent("hierarchy", labels) - && !labels.empty() - ) + int n = 1; + for (auto val : labels) { - std::vector<int> vec; - vec.reserve(labels.size()+1); + n *= val; + vec.push_back(val); + } - // Verify sizing + if (n != nDomains_) + { + // Size mismatch. Try to correct. - int n = 1; - for (auto val : labels) + if (nDomains_ % n) { - n *= val; - vec.push_back(val); - } + WarningInFunction + << "Mismatch in number of processors and " + << "hierarchy specified" << flatOutput(labels) << endl; - if (n != nProcessors_) - { - // Size mismatch. Try to correct. - - if (nProcessors_ % n) - { - WarningInFunction - << "Mismatch in number of processors and " - << "hierarchy specified" << flatOutput(labels) << endl; - - vec.clear(); - } - else - { - // Evenly divisible, add extra hierarchy level - vec.push_back(nProcessors_ / n); - } + vec.clear(); } - - if (!vec.empty()) + else { - sizingParams["hierarchy"] = std::move(vec); - - Info<< " hierarchy=" << flatOutput(labels); + // Evenly divisible, add extra hierarchy level + vec.push_back(nDomains_ / n); } } - if - ( - coeffDict.readIfPresent("distance", labels) - && !labels.empty() - ) + if (!vec.empty()) { - std::vector<int> vec(labels.size()); - - forAll(labels, i) - { - vec[i] = labels[i]; - } - - sizingParams["distance"] = std::move(vec); - - Info<< " distance=" << flatOutput(labels); + sizingParams["hierarchy"] = std::move(vec); + Info<< " hierarchy=" << flatOutput(labels); } + } + + if + ( + coeffsDict_.readIfPresent("distance", labels) + && !labels.empty() + ) + { + std::vector<int> vec(labels.size()); - if (coeffDict.readIfPresent("seed", seed)) + forAll(labels, i) { - Info<< " seed=" << seed; + vec[i] = labels[i]; } - Info<< endl; - } - else - { - Info<< "kahipDecomp :" - << " config=" << configNames[kahipConfig] - << " imbalance=" << imbalance << endl; + sizingParams["distance"] = std::move(vec); + Info<< " distance=" << flatOutput(labels); } + Info<< endl; + + // Number of partitions - int nParts = nProcessors_; + int nParts = nDomains_; // Output: number of cut edges int edgeCut = 0; @@ -322,9 +314,19 @@ Foam::label Foam::kahipDecomp::decomposeSerial // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::kahipDecomp::kahipDecomp(const dictionary& decompositionDict) +Foam::kahipDecomp::kahipDecomp(const dictionary& decompDict) +: + metisLikeDecomp(typeName, decompDict, selectionType::NULL_DICT) +{} + + +Foam::kahipDecomp::kahipDecomp +( + const dictionary& decompDict, + const word& regionName +) : - metisLikeDecomp(decompositionDict) + metisLikeDecomp(typeName, decompDict, regionName, selectionType::NULL_DICT) {} diff --git a/src/parallel/decompose/kahipDecomp/kahipDecomp.H b/src/parallel/decompose/kahipDecomp/kahipDecomp.H index c399a68e01043043cc5bd8893b000113af7a6315..7084836a1660f1194023010351fbd1839cdb06e0 100644 --- a/src/parallel/decompose/kahipDecomp/kahipDecomp.H +++ b/src/parallel/decompose/kahipDecomp/kahipDecomp.H @@ -31,6 +31,8 @@ Description When run in parallel will collect the entire graph on to the master, decompose and send back. + Coefficients dictionary: \a kahipCoeffs, \a coeffs. + \verbatim numberOfSubdomains N; method kahip; @@ -42,12 +44,12 @@ Description } \endverbatim - Where the coefficients dictionary is optional, as are all its entries: + Method coefficients: \table - Property | Description | Default value - config | fast / eco / strong | fast - imbalance | imbalance on cells between domains | 0.01 - seed | initial value for random number generator | 0 + Property | Description | Required | Default + config | fast / eco / strong | no | fast + imbalance | imbalance on cells between domains | no | 0.01 + seed | initial value for random number generator | no | 0 \endtable SourceFiles @@ -114,7 +116,14 @@ public: // Constructors //- Construct given the decomposition dictionary - kahipDecomp(const dictionary& decompositionDict); + kahipDecomp(const dictionary& decompDict); + + //- Construct given the decomposition dictionary and region name + kahipDecomp + ( + const dictionary& decompDict, + const word& regionName + ); //- Destructor diff --git a/src/parallel/decompose/metisDecomp/metisDecomp.C b/src/parallel/decompose/metisDecomp/metisDecomp.C index efd0d64b1fa3165c51bcba85de9efa8411e0d00e..d6a4f5ea983df8e50905719c1b7cd50034e0b7fc 100644 --- a/src/parallel/decompose/metisDecomp/metisDecomp.C +++ b/src/parallel/decompose/metisDecomp/metisDecomp.C @@ -3,7 +3,7 @@ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation - \\/ M anipulation | Copyright (C) 2016 OpenCFD Ltd. + \\/ M anipulation | Copyright (C) 2016-2017 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -39,7 +39,20 @@ extern "C" namespace Foam { defineTypeNameAndDebug(metisDecomp, 0); - addToRunTimeSelectionTable(decompositionMethod, metisDecomp, dictionary); + + addToRunTimeSelectionTable + ( + decompositionMethod, + metisDecomp, + dictionary + ); + + addToRunTimeSelectionTable + ( + decompositionMethod, + metisDecomp, + dictionaryRegion + ); } @@ -148,19 +161,19 @@ Foam::label Foam::metisDecomp::decomposeSerial { processorWeights /= sum(processorWeights); - if (processorWeights.size() != nProcessors_) + if (processorWeights.size() != nDomains_) { FatalErrorInFunction << "Number of processor weights " << processorWeights.size() - << " does not equal number of domains " << nProcessors_ + << " does not equal number of domains " << nDomains_ << exit(FatalError); } } } label ncon = 1; - label nProcs = nProcessors_; + label nProcs = nDomains_; // Output: cell -> processor addressing decomp.setSize(numCells); @@ -213,9 +226,19 @@ Foam::label Foam::metisDecomp::decomposeSerial // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::metisDecomp::metisDecomp(const dictionary& decompositionDict) +Foam::metisDecomp::metisDecomp(const dictionary& decompDict) +: + metisLikeDecomp(typeName, decompDict, selectionType::NULL_DICT) +{} + + +Foam::metisDecomp::metisDecomp +( + const dictionary& decompDict, + const word& regionName +) : - metisLikeDecomp(decompositionDict) + metisLikeDecomp(typeName, decompDict, regionName, selectionType::NULL_DICT) {} diff --git a/src/parallel/decompose/metisDecomp/metisDecomp.H b/src/parallel/decompose/metisDecomp/metisDecomp.H index d037fab95fecd93e5276f240cb30fcc626cbcdae..65e8f75182f340026f3a4c2a718c19670ba71646 100644 --- a/src/parallel/decompose/metisDecomp/metisDecomp.H +++ b/src/parallel/decompose/metisDecomp/metisDecomp.H @@ -30,24 +30,26 @@ Description When run in parallel will collect the entire graph on to the master, decompose and send back. + Coefficients dictionary: \a metisCoeffs, \a coeffs. + \verbatim numberOfSubdomains N; method metis; metisCoeffs { - method recursive; // k-way + method recursive; // k-way options ( ...); - processorWeights ( ... ); + processorWeights ( ... ); } \endverbatim - Where the coefficients dictionary is optional, as are all its entries: + Method coefficients: \table - Property | Description | Default value - method | recursive / k-way | recursive - options | metis options | - processorWeights | list of weighting per partition | + Property | Description | Required | Default + method | recursive / k-way | no | recursive + options | metis options | no + processorWeights | list of weighting per partition | no \endtable SourceFiles @@ -97,7 +99,14 @@ public: // Constructors //- Construct given the decomposition dictionary - metisDecomp(const dictionary& decompositionDict); + metisDecomp(const dictionary& decompDict); + + //- Construct given the decomposition dictionary and region name + metisDecomp + ( + const dictionary& decompDict, + const word& regionName + ); //- Destructor diff --git a/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C b/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C index 610de99d68ae08056909258ebf7ebb03e42961f1..08a146053e285ea30b4354afac0e2d88f12ba09a 100644 --- a/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C +++ b/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C @@ -228,7 +228,20 @@ License namespace Foam { defineTypeNameAndDebug(ptscotchDecomp, 0); - addToRunTimeSelectionTable(decompositionMethod, ptscotchDecomp, dictionary); + + addToRunTimeSelectionTable + ( + decompositionMethod, + ptscotchDecomp, + dictionary + ); + + addToRunTimeSelectionTable + ( + decompositionMethod, + ptscotchDecomp, + dictionaryRegion + ); } // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // @@ -478,56 +491,50 @@ Foam::label Foam::ptscotchDecomp::decompose } // Dump graph - if (decompositionDict_.found("scotchCoeffs")) + if (coeffsDict_.lookupOrDefault("writeGraph", false)) { - const dictionary& scotchCoeffs = - decompositionDict_.subDict("scotchCoeffs"); + OFstream str + ( + graphPath_ + "_" + Foam::name(Pstream::myProcNo()) + ".dgr" + ); - if (scotchCoeffs.lookupOrDefault("writeGraph", false)) + Pout<< "Dumping Scotch graph file to " << str.name() << endl + << "Use this in combination with dgpart." << endl; + + globalIndex globalCells(xadjSize-1); + + // Distributed graph file (.grf) + const label version = 2; + str << version << nl; + // Number of files (procglbnbr) + str << Pstream::nProcs(); + // My file number (procloc) + str << ' ' << Pstream::myProcNo() << nl; + + // Total number of vertices (vertglbnbr) + str << globalCells.size(); + // Total number of connections (edgeglbnbr) + str << ' ' << returnReduce(xadj[xadjSize-1], sumOp<label>()) << nl; + // Local number of vertices (vertlocnbr) + str << xadjSize-1; + // Local number of connections (edgelocnbr) + str << ' ' << xadj[xadjSize-1] << nl; + // Numbering starts from 0 + label baseval = 0; + // 100*hasVertlabels+10*hasEdgeWeights+1*hasVertWeighs + str << baseval << ' ' << "000" << nl; + for (label celli = 0; celli < xadjSize-1; celli++) { - OFstream str - ( - graphPath_ + "_" + Foam::name(Pstream::myProcNo()) + ".dgr" - ); - - Pout<< "Dumping Scotch graph file to " << str.name() << endl - << "Use this in combination with dgpart." << endl; - - globalIndex globalCells(xadjSize-1); - - // Distributed graph file (.grf) - label version = 2; - str << version << nl; - // Number of files (procglbnbr) - str << Pstream::nProcs(); - // My file number (procloc) - str << ' ' << Pstream::myProcNo() << nl; - - // Total number of vertices (vertglbnbr) - str << globalCells.size(); - // Total number of connections (edgeglbnbr) - str << ' ' << returnReduce(xadj[xadjSize-1], sumOp<label>()) - << nl; - // Local number of vertices (vertlocnbr) - str << xadjSize-1; - // Local number of connections (edgelocnbr) - str << ' ' << xadj[xadjSize-1] << nl; - // Numbering starts from 0 - label baseval = 0; - // 100*hasVertlabels+10*hasEdgeWeights+1*hasVertWeighs - str << baseval << ' ' << "000" << nl; - for (label celli = 0; celli < xadjSize-1; celli++) - { - label start = xadj[celli]; - label end = xadj[celli+1]; - str << end-start; + const label start = xadj[celli]; + const label end = xadj[celli+1]; - for (label i = start; i < end; i++) - { - str << ' ' << adjncy[i]; - } - str << nl; + str << end-start; // size + + for (label i = start; i < end; i++) + { + str << ' ' << adjncy[i]; } + str << nl; } } @@ -538,27 +545,19 @@ Foam::label Foam::ptscotchDecomp::decompose SCOTCH_Strat stradat; check(SCOTCH_stratInit(&stradat), "SCOTCH_stratInit"); - if (decompositionDict_.found("scotchCoeffs")) + string strategy; + if (coeffsDict_.readIfPresent("strategy", strategy)) { - const dictionary& scotchCoeffs = - decompositionDict_.subDict("scotchCoeffs"); - - - string strategy; - if (scotchCoeffs.readIfPresent("strategy", strategy)) + if (debug) { - if (debug) - { - Info<< "ptscotchDecomp : Using strategy " << strategy << endl; - } - SCOTCH_stratDgraphMap(&stradat, strategy.c_str()); - //fprintf(stdout, "S\tStrat="); - //SCOTCH_stratSave(&stradat, stdout); - //fprintf(stdout, "\n"); + Info<< "ptscotchDecomp : Using strategy " << strategy << endl; } + SCOTCH_stratDgraphMap(&stradat, strategy.c_str()); + //fprintf(stdout, "S\tStrat="); + //SCOTCH_stratSave(&stradat, stdout); + //fprintf(stdout, "\n"); } - // Graph // ~~~~~ @@ -632,7 +631,6 @@ Foam::label Foam::ptscotchDecomp::decompose } - if (debug) { Pout<< "SCOTCH_dgraphInit" << endl; @@ -697,14 +695,11 @@ Foam::label Foam::ptscotchDecomp::decompose check(SCOTCH_archInit(&archdat), "SCOTCH_archInit"); List<label> processorWeights; - if (decompositionDict_.found("scotchCoeffs")) - { - const dictionary& scotchCoeffs = - decompositionDict_.subDict("scotchCoeffs"); - - scotchCoeffs.readIfPresent("processorWeights", processorWeights); - } - if (processorWeights.size()) + if + ( + coeffsDict_.readIfPresent("processorWeights", processorWeights) + && processorWeights.size() + ) { if (debug) { @@ -716,7 +711,7 @@ Foam::label Foam::ptscotchDecomp::decompose ( SCOTCH_archCmpltw ( - &archdat, nProcessors_, processorWeights.begin() + &archdat, nDomains_, processorWeights.begin() ), "SCOTCH_archCmpltw" ); @@ -729,7 +724,7 @@ Foam::label Foam::ptscotchDecomp::decompose } check ( - SCOTCH_archCmplt(&archdat, nProcessors_), + SCOTCH_archCmplt(&archdat, nDomains_), "SCOTCH_archCmplt" ); } @@ -778,7 +773,7 @@ Foam::label Foam::ptscotchDecomp::decompose // SCOTCH_dgraphPart // ( // &grafdat, - // nProcessors_, // partnbr + // nDomains_, // partnbr // &stradat, // const SCOTCH_Strat * // finalDecomp.begin() // parttab // ), @@ -802,9 +797,21 @@ Foam::label Foam::ptscotchDecomp::decompose // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::ptscotchDecomp::ptscotchDecomp(const dictionary& decompositionDict) +Foam::ptscotchDecomp::ptscotchDecomp(const dictionary& decompDict) +: + decompositionMethod(decompDict), + coeffsDict_(findCoeffsDict("scotchCoeffs", selectionType::NULL_DICT)) +{} + + +Foam::ptscotchDecomp::ptscotchDecomp +( + const dictionary& decompDict, + const word& regionName +) : - decompositionMethod(decompositionDict) + decompositionMethod(decompDict, regionName), + coeffsDict_(findCoeffsDict("scotchCoeffs", selectionType::NULL_DICT)) {} diff --git a/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.H b/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.H index a9146ae9e6ffb920872d42f5f8272b3786765851..9d613cd9280fc4c56f62b372515fb6470820495a 100644 --- a/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.H +++ b/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.H @@ -26,8 +26,11 @@ Class Description PTScotch domain decomposition. + For the main details about how to define the strategies, see scotchDecomp. + Coefficients dictionary: \a scotchCoeffs, \a coeffs. + Nonetheless, when decomposing in parallel, using <tt>writeGraph=true</tt> will write out \c .dgr files for debugging. For example, use these files with \c dgpart as follows: @@ -57,7 +60,7 @@ namespace Foam { /*---------------------------------------------------------------------------*\ - Class ptscotchDecomp Declaration + Class ptscotchDecomp Declaration \*---------------------------------------------------------------------------*/ class ptscotchDecomp @@ -66,6 +69,9 @@ class ptscotchDecomp { // Private data + //- Original coefficients for this method + dictionary coeffsDict_; + //- Output path and name for optional grf file. fileName graphPath_; @@ -111,8 +117,12 @@ public: // Constructors - //- Construct given the decomposition dictionary and mesh - ptscotchDecomp(const dictionary& decompositionDict); + //- Construct given the decomposition dictionary + ptscotchDecomp(const dictionary& decompDict); + + + //- Construct given the decomposition dictionary and region name + ptscotchDecomp(const dictionary& decompDict, const word& regionName); //- Destructor diff --git a/src/parallel/decompose/scotchDecomp/scotchDecomp.C b/src/parallel/decompose/scotchDecomp/scotchDecomp.C index 88f14fac7caf97de1f98830116d2fc4770bef8ba..a29ecc63f76b3c04ca955e13a48b2f6a578e5f78 100644 --- a/src/parallel/decompose/scotchDecomp/scotchDecomp.C +++ b/src/parallel/decompose/scotchDecomp/scotchDecomp.C @@ -155,6 +155,13 @@ namespace Foam scotchDecomp, dictionary ); + + addToRunTimeSelectionTable + ( + decompositionMethod, + scotchDecomp, + dictionaryRegion + ); } // * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * // @@ -184,11 +191,8 @@ Foam::label Foam::scotchDecomp::decomposeSerial List<label>& decomp ) { - const dictionary* coeffsDictPtr = - decompositionDict_.subDictPtr("scotchCoeffs"); - // Dump graph - if (coeffsDictPtr && coeffsDictPtr->lookupOrDefault("writeGraph", false)) + if (coeffsDict_.lookupOrDefault("writeGraph", false)) { OFstream str(graphPath_); @@ -230,20 +234,17 @@ Foam::label Foam::scotchDecomp::decomposeSerial SCOTCH_Strat stradat; check(SCOTCH_stratInit(&stradat), "SCOTCH_stratInit"); - if (coeffsDictPtr) + string strategy; + if (coeffsDict_.readIfPresent("strategy", strategy)) { - string strategy; - if (coeffsDictPtr->readIfPresent("strategy", strategy)) + if (debug) { - if (debug) - { - Info<< "scotchDecomp : Using strategy " << strategy << endl; - } - SCOTCH_stratGraphMap(&stradat, strategy.c_str()); - //fprintf(stdout, "S\tStrat="); - //SCOTCH_stratSave(&stradat, stdout); - //fprintf(stdout, "\n"); + Info<< "scotchDecomp : Using strategy " << strategy << endl; } + SCOTCH_stratGraphMap(&stradat, strategy.c_str()); + //fprintf(stdout, "S\tStrat="); + //SCOTCH_stratSave(&stradat, stdout); + //fprintf(stdout, "\n"); } @@ -330,8 +331,7 @@ Foam::label Foam::scotchDecomp::decomposeSerial List<label> processorWeights; if ( - coeffsDictPtr - && coeffsDictPtr->readIfPresent("processorWeights", processorWeights) + coeffsDict_.readIfPresent("processorWeights", processorWeights) && processorWeights.size() ) { @@ -344,7 +344,7 @@ Foam::label Foam::scotchDecomp::decomposeSerial ( SCOTCH_archCmpltw ( - &archdat, nProcessors_, processorWeights.begin() + &archdat, nDomains_, processorWeights.begin() ), "SCOTCH_archCmpltw" ); @@ -353,7 +353,7 @@ Foam::label Foam::scotchDecomp::decomposeSerial { check ( - SCOTCH_archCmplt(&archdat, nProcessors_), + SCOTCH_archCmplt(&archdat, nDomains_), "SCOTCH_archCmplt" ); @@ -433,7 +433,7 @@ Foam::label Foam::scotchDecomp::decomposeSerial // SCOTCH_graphPart // ( // &grafdat, - // nProcessors_, // partnbr + // nDomains_, // partnbr // &stradat, // const SCOTCH_Strat * // decomp.begin() // parttab // ), @@ -453,9 +453,19 @@ Foam::label Foam::scotchDecomp::decomposeSerial // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -Foam::scotchDecomp::scotchDecomp(const dictionary& decompositionDict) +Foam::scotchDecomp::scotchDecomp(const dictionary& decompDict) +: + metisLikeDecomp(typeName, decompDict, selectionType::NULL_DICT) +{} + + +Foam::scotchDecomp::scotchDecomp +( + const dictionary& decompDict, + const word& regionName +) : - metisLikeDecomp(decompositionDict) + metisLikeDecomp(typeName, decompDict, regionName, selectionType::NULL_DICT) {} diff --git a/src/parallel/decompose/scotchDecomp/scotchDecomp.H b/src/parallel/decompose/scotchDecomp/scotchDecomp.H index ca182253d7ccce272342dcd07585fa5a835f9772..a32a682f30dd3eb786360585622c57343f7f1328 100644 --- a/src/parallel/decompose/scotchDecomp/scotchDecomp.H +++ b/src/parallel/decompose/scotchDecomp/scotchDecomp.H @@ -26,10 +26,13 @@ Class Description Scotch domain decomposition. + When run in parallel will collect the whole graph on to the master, decompose and send back. Use ptscotchDecomp for proper distributed decomposition. + Coefficients dictionary: \a scotchCoeffs, \a coeffs. + Quoting from the Scotch forum, on the 2008-08-22 10:09, Francois PELLEGRINI posted the following details: \verbatim @@ -262,8 +265,15 @@ public: // Constructors - //- Construct given the decomposition dictionary and mesh - scotchDecomp(const dictionary& decompositionDict); + //- Construct given the decomposition dictionary + scotchDecomp(const dictionary& decompDict); + + //- Construct given the decomposition dictionary and region name + scotchDecomp + ( + const dictionary& decompDict, + const word& regionName + ); //- Destructor diff --git a/tutorials/IO/fileHandler/system/decomposeParDict b/tutorials/IO/fileHandler/system/decomposeParDict index 341581df062ab96de94f4c45669795c7a0f8813d..df7138cff9f0e54e16e032f795bfccd8ac2173a1 100644 --- a/tutorials/IO/fileHandler/system/decomposeParDict +++ b/tutorials/IO/fileHandler/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,12 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (4 1 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (4 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (4 1 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } distributed no; diff --git a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/decomposeParDict b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/decomposeParDict index 138625c7da8204f29c3935cef7554223317a03c3..47cf5911d3c18e73bab3d365f1979709cbc67da3 100644 --- a/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/decomposeParDict +++ b/tutorials/basic/overLaplacianDyMFoam/heatTransfer/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,11 +18,11 @@ numberOfSubdomains 2; method hierarchical; -hierarchicalCoeffs +coeffs { n (2 1 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/decomposeParDict b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/decomposeParDict index f6b97abcd50a442e505d3bf1fe7dc8d167bf2ec5..e62ff29c03478732a67a15469b0055546d204e61 100644 --- a/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/decomposeParDict +++ b/tutorials/combustion/PDRFoam/flamePropagationWithObstacles/system/decomposeParDict @@ -10,31 +10,20 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -numberOfSubdomains 4; +numberOfSubdomains 4; -method simple; +method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "decompositionData"; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "decompositionData"; } // ************************************************************************* // diff --git a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/decomposeParDict b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/decomposeParDict index 3f544b2738469edd0f82fc37016d0e98b3e4fdb1..a5b0041fbf39a82e3e086171cd7373564da2ba25 100644 --- a/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/decomposeParDict +++ b/tutorials/combustion/XiDyMFoam/annularCombustorTurbine/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,11 +18,11 @@ numberOfSubdomains 6; method hierarchical; -hierarchicalCoeffs +coeffs { - n ( 6 1 1 ); - delta 0.001; - order xyz; + n (6 1 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } preservePatches (cyclic0 cyclic1 ami0 ami1); diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/decomposeParDict b/tutorials/combustion/fireFoam/LES/compartmentFire/system/decomposeParDict index 9a3167e3401c9b9c2d54184ba292c5853a739bd5..1aa2fb3b07a3c55d2f8b8b5d47ecad509dce89f4 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/decomposeParDict +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,27 +18,4 @@ numberOfSubdomains 8; method scotch; -simpleCoeffs -{ - n ( 4 1 4 ); - delta 0.001; -} - -hierarchicalCoeffs -{ - n ( 1 2 2 ); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "cellDecomposition"; -} - -metisCoeffs -{ -} - - // ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/decomposeParDict b/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/decomposeParDict index 183eff948af3d941b15ef7a653ea388d325cfc01..2f9021fa9e3cc09b3fd4ef7aa954252fd6836427 100644 --- a/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/decomposeParDict +++ b/tutorials/combustion/fireFoam/LES/compartmentFire/system/panelRegion/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -26,27 +25,9 @@ structuredCoeffs simpleCoeffs { - n ( 5 1 4 ); - delta 0.001; + n (5 1 4); + delta 0.001; } } - -hierarchicalCoeffs -{ - n ( 1 2 2 ); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "cellDecomposition"; -} - -metisCoeffs -{ -} - - // ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/decomposeParDict b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/decomposeParDict index b1c15391bc71ce368f8740e0d555b3953f145d3f..7182f3d1a1e98abe0c862ca218c3129a6806d03c 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/decomposeParDict +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,26 +18,12 @@ numberOfSubdomains 6; method simple; -simpleCoeffs -{ - n (1 3 2); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 2 2); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "cellDecomposition"; -} - -scotchCoeffs +coeffs { + n (1 3 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "cellDecomposition"; } // ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/decomposeParDict b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/decomposeParDict index c08a60ec1daa91b5a493f03198ff0468154cbb04..8428f9470d53d3050437c35584c798edc5b4804b 100644 --- a/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/decomposeParDict +++ b/tutorials/combustion/fireFoam/LES/oppositeBurningPanels/system/panelRegion/decomposeParDict @@ -10,14 +10,12 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 6; - method structured; structuredCoeffs @@ -33,21 +31,12 @@ structuredCoeffs } } - -hierarchicalCoeffs -{ - n (1 2 2); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "cellDecomposition"; -} - -metisCoeffs +coeffs { + n (1 2 3); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "cellDecomposition"; } // ************************************************************************* // diff --git a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/decomposeParDict b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/decomposeParDict index a2496cc2234dc590da21bade6b24afa6b37ced6c..58435778b83c2b033e4058ae7e3246ef8394972f 100644 --- a/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/decomposeParDict +++ b/tutorials/combustion/fireFoam/LES/smallPoolFire3D/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 4; method hierarchical; -simpleCoeffs -{ - n (1 2 2); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 2 2); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "cellDecomposition"; +coeffs + n (1 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "cellDecomposition"; } diff --git a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/decomposeParDict b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/decomposeParDict index 5126da72cdc2ec14c654aec86ba8bd9b3f5f2b61..84dc5aecf5420b0023dc91b021e760661ddf16b9 100644 --- a/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/decomposeParDict +++ b/tutorials/combustion/reactingFoam/RAS/DLR_A_LTS/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,27 +18,12 @@ numberOfSubdomains 6; method simple; -simpleCoeffs +coeffs { - n (1 1 6); - delta 0.001; + n (1 1 6); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } -hierarchicalCoeffs -{ - n ( 1 1 1 ); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - - // ************************************************************************* // diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/decomposeParDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/decomposeParDict index ede2181dfeeee7a102669796ed3d681ebe89b00d..415cda309aa944f386298d23cc12e32169f872b7 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/decomposeParDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2DLTS_GRI_TDAC/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,11 +18,11 @@ numberOfSubdomains 4; method hierarchical; -hierarchicalCoeffs +coeffs { n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/decomposeParDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/decomposeParDict index 02feb195c5e7c4ce581f0f6e7187785d0a60d558..415cda309aa944f386298d23cc12e32169f872b7 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/decomposeParDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | +| \\ / O peration | Version: plus | | \\ / A nd | Web: www.OpenFOAM.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,11 +18,11 @@ numberOfSubdomains 4; method hierarchical; -hierarchicalCoeffs +coeffs { n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/decomposeParDict b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/decomposeParDict index ede2181dfeeee7a102669796ed3d681ebe89b00d..415cda309aa944f386298d23cc12e32169f872b7 100644 --- a/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/decomposeParDict +++ b/tutorials/combustion/reactingFoam/laminar/counterFlowFlame2D_GRI_TDAC/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,11 +18,11 @@ numberOfSubdomains 4; method hierarchical; -hierarchicalCoeffs +coeffs { n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/decomposeParDict b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/decomposeParDict index 86fb26d38039367a109768fd72bf3a2c15d7fee6..56c4070c754636b45ba517ef796e5cbebe8d2779 100644 --- a/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/decomposeParDict +++ b/tutorials/compressible/rhoCentralFoam/LadenburgJet60psi/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,27 +18,13 @@ numberOfSubdomains 8; method simple; -simpleCoeffs +coeffs { - n (8 1 1); - delta 0.001; + n (8 1 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - // ************************************************************************* // diff --git a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/decomposeParDict b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/decomposeParDict index 20edb36158fefaa1a2b0679b42514dfa8053835b..87f1a305f0dde3822a1b5a84b1d53b1fe562f8f0 100644 --- a/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/decomposeParDict +++ b/tutorials/compressible/rhoPimpleAdiabaticFoam/rutlandVortex2D/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,11 +18,11 @@ numberOfSubdomains 3; method hierarchical; -hierarchicalCoeffs +coeffs { - n (3 1 1); - delta 0.001; - order xyz; + n (3 1 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/decomposeParDict b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/decomposeParDict index d34bb5a026204cf6d3b6c148b2a5badd9748775f..b27efc23b92a517e54a65ca512f095be7728810d 100644 --- a/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/decomposeParDict +++ b/tutorials/compressible/rhoPimpleFoam/RAS/squareBendLiq/system/decomposeParDict @@ -31,13 +31,4 @@ hierarchicalCoeffs order xyz; } -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - // ************************************************************************* // diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/decomposeParDict b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/decomposeParDict index 0903cf53158a4c18e07a56aea53beb52e4928632..2ccf121cd38f8dbf0b04c5c04b764c20e7b3f625 100644 --- a/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/decomposeParDict +++ b/tutorials/compressible/rhoPimpleFoam/laminar/helmholtzResonance/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/decomposeParDict b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/decomposeParDict index 8427b2c142c019f5b751aa7c95fb6c5cf466b56c..7e1f9ae4302d8b0cda75cfb5665b211f3488d308 100644 --- a/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/decomposeParDict +++ b/tutorials/compressible/rhoSimpleFoam/gasMixing/injectorPipe/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,11 +18,11 @@ numberOfSubdomains 8; method hierarchical; -hierarchicalCoeffs +coeffs { - n ( 2 2 2 ); - delta 0.001; - order xyz; + n (2 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } preservePatches (); diff --git a/tutorials/compressible/rhoSimpleFoam/squareBend/system/decomposeParDict b/tutorials/compressible/rhoSimpleFoam/squareBend/system/decomposeParDict index 0ab23bff191475c4fd7034cb13cd6f7b55ab9698..b27efc23b92a517e54a65ca512f095be7728810d 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBend/system/decomposeParDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBend/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -32,14 +31,4 @@ hierarchicalCoeffs order xyz; } -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - - // ************************************************************************* // diff --git a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/decomposeParDict b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/decomposeParDict index 0ab23bff191475c4fd7034cb13cd6f7b55ab9698..b27efc23b92a517e54a65ca512f095be7728810d 100644 --- a/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/decomposeParDict +++ b/tutorials/compressible/rhoSimpleFoam/squareBendLiq/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -32,14 +31,4 @@ hierarchicalCoeffs order xyz; } -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - - // ************************************************************************* // diff --git a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/decomposeParDict b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/decomposeParDict index a456e9fc859a2d1445bb21f0ae902fc742f5f8c8..86086b4912975b9ee91f1297520411cf9bb914b2 100644 --- a/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/decomposeParDict +++ b/tutorials/compressible/sonicFoam/RAS/nacaAirfoil/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,18 +18,11 @@ numberOfSubdomains 6; method simple; -simpleCoeffs +coeffs { - n (3 2 1); - delta 0.001; + n (3 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (3 2 1); - delta 0.001; - order xyz; -} - - // ************************************************************************* // diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/decomposeParDict b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/decomposeParDict index 0c9252b9ad3059016ca05fc7db9c0892d5812512..6cf530be19dd4679beab4deba2c7d18607fa58e3 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/decomposeParDict +++ b/tutorials/discreteMethods/dsmcFoam/freeSpacePeriodic/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,27 +18,12 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (1 2 2); - delta 0.001; + n (1 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - // ************************************************************************* // diff --git a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/decomposeParDict b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/decomposeParDict index 0c9252b9ad3059016ca05fc7db9c0892d5812512..6cf530be19dd4679beab4deba2c7d18607fa58e3 100644 --- a/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/decomposeParDict +++ b/tutorials/discreteMethods/dsmcFoam/freeSpaceStream/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,27 +18,12 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (1 2 2); - delta 0.001; + n (1 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - // ************************************************************************* // diff --git a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/decomposeParDict b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/decomposeParDict index 61f7f8c0dd831d296986030ff9e8c44bf3540e2a..5092045209040261535188d9d660c1013e78d7df 100644 --- a/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/decomposeParDict +++ b/tutorials/discreteMethods/dsmcFoam/supersonicCorner/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,27 +18,11 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - - // ************************************************************************* // diff --git a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/decomposeParDict b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/decomposeParDict index 61f7f8c0dd831d296986030ff9e8c44bf3540e2a..5092045209040261535188d9d660c1013e78d7df 100644 --- a/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/decomposeParDict +++ b/tutorials/discreteMethods/dsmcFoam/wedge15Ma5/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,27 +18,11 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - - // ************************************************************************* // diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/decomposeParDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/decomposeParDict index fb9d7877dc2fe91ccf400fe1476887591ec0a04d..3bac4854f0b122a5f9dcba7c9f707e0510c46e5b 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/decomposeParDict +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeArgon/system/decomposeParDict @@ -15,34 +15,15 @@ FoamFile // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - numberOfSubdomains 2; method simple; -simpleCoeffs -{ - n (2 1 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs +coeffs { - dataFile ""; + n (2 1 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -distributed no; - -roots -( -); - - // ************************************************************************* // diff --git a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/decomposeParDict b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/decomposeParDict index c4d7c417233a399abfba32e1a73c3e3278478860..55b2a30194c0f0e332a7f7499dc942a891ad1c50 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/decomposeParDict +++ b/tutorials/discreteMethods/molecularDynamics/mdEquilibrationFoam/periodicCubeWater/system/decomposeParDict @@ -15,34 +15,16 @@ FoamFile // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots -( -); - // ************************************************************************* // diff --git a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/decomposeParDict b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/decomposeParDict index e1dbbc6af0f19e4d2d70b920eb762413a27053ea..ce2d6502b1d56e553f2b31d8dd4428eb12dd5c0b 100644 --- a/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/decomposeParDict +++ b/tutorials/discreteMethods/molecularDynamics/mdFoam/nanoNozzle/system/decomposeParDict @@ -15,34 +15,15 @@ FoamFile // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - numberOfSubdomains 4; method scotch; -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs +coeffs { - dataFile ""; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -distributed no; - -roots -( -); - - // ************************************************************************* // diff --git a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/decomposeParDict b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/decomposeParDict index 5c21df91e4f13184fbe5d8071d21671dbb7543a3..079c19746768822a38246f4e5d402e09f9f26bb9 100644 --- a/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/decomposeParDict +++ b/tutorials/heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,23 +18,13 @@ numberOfSubdomains 2; method scotch; -simpleCoeffs -{ - n (4 1 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (3 2 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "cellDecomposition"; -} +//coeffs +//{ +// n (3 2 1); +// delta 0.001; +// order xyz; +// dataFile "cellDecomposition"; +//} // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/bottomWater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/bottomWater/decomposeParDict deleted file mode 100644 index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/bottomWater/decomposeParDict +++ /dev/null @@ -1,72 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -//- Keep owner and neighbour on same processor for faces in zones: -// preserveFaceZones (heater solid1 solid3); - -method scotch; -// method hierarchical; -// method simple; -// method manual; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -scotchCoeffs -{ - //processorWeights - //( - // 1 - // 1 - // 1 - // 1 - //); - //writeGraph true; - //strategy "b"; -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/bottomWater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/bottomWater/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/bottomWater/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/decomposeParDict index 916ce1f4e204d4cee21cee1822ededf16b2b7ed0..bc03b02cb93adbd3e57ecbbaa5db708dc1c8a3f9 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/decomposeParDict @@ -10,11 +10,8 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; @@ -27,34 +24,12 @@ method scotch; // method simple; // method manual; -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs +coeffs { n (2 2 1); - delta 0.001; - order xyz; -} - - -manualCoeffs -{ + //delta 0.001; // default=0.001 + //order xyz; // default=xzy dataFile "decompositionData"; } - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/heater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/heater/decomposeParDict deleted file mode 100644 index 91ef8baa9e4462c98d8c4cacd8dc2529a008fdba..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/heater/decomposeParDict +++ /dev/null @@ -1,44 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object decomposeParDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -scotchCoeffs -{ -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/heater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/heater/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/heater/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/leftSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/leftSolid/decomposeParDict deleted file mode 100644 index 91ef8baa9e4462c98d8c4cacd8dc2529a008fdba..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/leftSolid/decomposeParDict +++ /dev/null @@ -1,44 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object decomposeParDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -scotchCoeffs -{ -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/leftSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/leftSolid/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/leftSolid/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/rightSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/rightSolid/decomposeParDict deleted file mode 100644 index 91ef8baa9e4462c98d8c4cacd8dc2529a008fdba..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/rightSolid/decomposeParDict +++ /dev/null @@ -1,44 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object decomposeParDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -scotchCoeffs -{ -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/rightSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/rightSolid/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/rightSolid/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/topAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/topAir/decomposeParDict deleted file mode 100644 index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/topAir/decomposeParDict +++ /dev/null @@ -1,72 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -//- Keep owner and neighbour on same processor for faces in zones: -// preserveFaceZones (heater solid1 solid3); - -method scotch; -// method hierarchical; -// method simple; -// method manual; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -scotchCoeffs -{ - //processorWeights - //( - // 1 - // 1 - // 1 - // 1 - //); - //writeGraph true; - //strategy "b"; -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/topAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/topAir/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/topAir/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/decomposeParDict deleted file mode 100644 index ffe8be78e47eae2bf64e33d69105d0884f8eeea1..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/decomposeParDict +++ /dev/null @@ -1,44 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/air/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/decomposeParDict index 1bdeb6b7ad97e043458b2ea4af44217ce1d4ee10..c1498e9029e2a590cf602fe8f26d21b66dd1fc9e 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/decomposeParDict @@ -10,38 +10,24 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs +coeffs { n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "decompositionData"; } scotchCoeffs { } -manualCoeffs -{ - dataFile "decompositionData"; -} - // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/decomposeParDict deleted file mode 100644 index ffe8be78e47eae2bf64e33d69105d0884f8eeea1..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/decomposeParDict +++ /dev/null @@ -1,44 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/floor/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/decomposeParDict deleted file mode 100644 index ffe8be78e47eae2bf64e33d69105d0884f8eeea1..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/decomposeParDict +++ /dev/null @@ -1,44 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalSolarLoad/system/solid/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/Allmesh b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/Allmesh new file mode 100755 index 0000000000000000000000000000000000000000..7f27e81ea3b8060659269bd4e3d75c12971e8b4a --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/Allmesh @@ -0,0 +1,26 @@ +#!/bin/sh +cd ${0%/*} || exit 1 # Run from this directory +. $WM_PROJECT_DIR/bin/tools/RunFunctions # Tutorial run functions + +runApplication blockMesh +runApplication topoSet +runApplication splitMeshRegions -cellZones -overwrite + +# Remove fluid fields from solid regions (important for post-processing) +for i in heater leftSolid rightSolid +do + rm -f 0*/$i/{nut,alphat,epsilon,k,U,p_rgh} +done + +for i in bottomWater topAir heater leftSolid rightSolid +do + runApplication -s $i changeDictionary -region $i +done + + +echo +echo "Creating files for paraview post-processing" +echo +paraFoam -touchAll + +#------------------------------------------------------------------------------ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/Allrun b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/Allrun index 5cf86d4458f6b06da2f0d9f4f5e34acd5faab0d5..efb377ca892c3f9c4ebb2d71d563ad862b98bc55 100755 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/Allrun +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/Allrun @@ -2,22 +2,7 @@ cd ${0%/*} || exit 1 # Run from this directory . $WM_PROJECT_DIR/bin/tools/RunFunctions # Tutorial run functions -runApplication blockMesh -runApplication topoSet -runApplication splitMeshRegions -cellZones -overwrite - -# remove fluid fields from solid regions (important for post-processing) -for i in heater leftSolid rightSolid -do - rm -f 0*/$i/{nut,alphat,epsilon,k,U,p_rgh} -done - - -for i in bottomWater topAir heater leftSolid rightSolid -do - runApplication -s $i changeDictionary -region $i -done - +runApplication ./Allmesh #-- Run on single processor #runApplication $(getApplication) @@ -31,10 +16,4 @@ runParallel $(getApplication) # Reconstruct runApplication reconstructPar -allRegions - -echo -echo "creating files for paraview post-processing" -echo -paraFoam -touchAll - #------------------------------------------------------------------------------ diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/README.txt b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/README.txt index 647f11981d3984198560d99dcbf2e7ef5833ee40..a50b770783cbce9ff7ce80fd29f73ff1348fd17b 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/README.txt +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/README.txt @@ -1,2 +1,6 @@ -The 0/ field files contain nonsense patchFields. All interesting -work is done using the changeDictionaryDicts. +- The 0/ field files contain nonsense patchFields. + All interesting work is done using the changeDictionaryDicts. + +- The uses region-specific decomposition for the heater. + This can be useful when the solid region is relatively small and a + normal decomposition would result in very few cells per process. diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/decomposeParDict deleted file mode 100644 index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/decomposeParDict +++ /dev/null @@ -1,72 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -//- Keep owner and neighbour on same processor for faces in zones: -// preserveFaceZones (heater solid1 solid3); - -method scotch; -// method hierarchical; -// method simple; -// method manual; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -scotchCoeffs -{ - //processorWeights - //( - // 1 - // 1 - // 1 - // 1 - //); - //writeGraph true; - //strategy "b"; -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/bottomWater/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/decomposeParDict index 916ce1f4e204d4cee21cee1822ededf16b2b7ed0..e630d52119812f1ca4e10efdeb5be194b1de3266 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/decomposeParDict @@ -10,11 +10,8 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; @@ -23,38 +20,29 @@ numberOfSubdomains 4; // preserveFaceZones (heater solid1 solid3); method scotch; + // method hierarchical; // method simple; // method manual; -simpleCoeffs +regions { - n (2 2 1); - delta 0.001; + heater + { + numberOfSubdomains 1; + method none; + + coeffs + { + n (1 1 1); + delta 0.001; + } + } } -hierarchicalCoeffs +coeffs { - n (2 2 1); - delta 0.001; - order xyz; + n (2 2 1); } - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/decomposeParDict deleted file mode 100644 index 91ef8baa9e4462c98d8c4cacd8dc2529a008fdba..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/decomposeParDict +++ /dev/null @@ -1,44 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object decomposeParDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -scotchCoeffs -{ -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/heater/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/decomposeParDict deleted file mode 100644 index 91ef8baa9e4462c98d8c4cacd8dc2529a008fdba..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/decomposeParDict +++ /dev/null @@ -1,44 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object decomposeParDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -scotchCoeffs -{ -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/leftSolid/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/decomposeParDict deleted file mode 100644 index 91ef8baa9e4462c98d8c4cacd8dc2529a008fdba..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/decomposeParDict +++ /dev/null @@ -1,44 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object decomposeParDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -scotchCoeffs -{ -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/rightSolid/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/decomposeParDict deleted file mode 100644 index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/decomposeParDict +++ /dev/null @@ -1,72 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -//- Keep owner and neighbour on same processor for faces in zones: -// preserveFaceZones (heater solid1 solid3); - -method scotch; -// method hierarchical; -// method simple; -// method manual; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -scotchCoeffs -{ - //processorWeights - //( - // 1 - // 1 - // 1 - // 1 - //); - //writeGraph true; - //strategy "b"; -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/system/topAir/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/decomposeParDict index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..7263dc66d4ab81b8564c66f1ab7dfdeb659e9260 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/bottomAir/decomposeParDict @@ -10,11 +10,8 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; @@ -27,17 +24,12 @@ method scotch; // method simple; // method manual; -simpleCoeffs +coeffs { n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "decompositionData"; } scotchCoeffs @@ -53,20 +45,4 @@ scotchCoeffs //strategy "b"; } -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict index 742a2495dfc905d4656c9dcbfdae184dd421e8de..747b5114b73dac97b0632688eea1e670ee4bbe30 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/decomposeParDict @@ -10,11 +10,8 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; @@ -27,17 +24,12 @@ method hierarchical; // method simple; // method manual; -simpleCoeffs +coeffs { n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "decompositionData"; } scotchCoeffs @@ -53,20 +45,4 @@ scotchCoeffs //strategy "b"; } -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/decomposeParDict index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..6f60341487a3c0f21b33a99bd257a6d51b459db9 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/heater/decomposeParDict @@ -10,11 +10,8 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; @@ -27,17 +24,12 @@ method scotch; // method simple; // method manual; -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs +coeffs { n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "decompositionData"; } scotchCoeffs @@ -53,20 +45,5 @@ scotchCoeffs //strategy "b"; } -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/decomposeParDict deleted file mode 100644 index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/decomposeParDict +++ /dev/null @@ -1,72 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -//- Keep owner and neighbour on same processor for faces in zones: -// preserveFaceZones (heater solid1 solid3); - -method scotch; -// method hierarchical; -// method simple; -// method manual; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -scotchCoeffs -{ - //processorWeights - //( - // 1 - // 1 - // 1 - // 1 - //); - //writeGraph true; - //strategy "b"; -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..d6dd0b5c0636316931ced9573920d72e86821030 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/leftSolid/decomposeParDict @@ -0,0 +1 @@ +../heater/decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/decomposeParDict deleted file mode 100644 index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/decomposeParDict +++ /dev/null @@ -1,72 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -//- Keep owner and neighbour on same processor for faces in zones: -// preserveFaceZones (heater solid1 solid3); - -method scotch; -// method hierarchical; -// method simple; -// method manual; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -scotchCoeffs -{ - //processorWeights - //( - // 1 - // 1 - // 1 - // 1 - //); - //writeGraph true; - //strategy "b"; -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..d6dd0b5c0636316931ced9573920d72e86821030 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/rightSolid/decomposeParDict @@ -0,0 +1 @@ +../heater/decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/decomposeParDict deleted file mode 100644 index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/decomposeParDict +++ /dev/null @@ -1,72 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -//- Keep owner and neighbour on same processor for faces in zones: -// preserveFaceZones (heater solid1 solid3); - -method scotch; -// method hierarchical; -// method simple; -// method manual; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -scotchCoeffs -{ - //processorWeights - //( - // 1 - // 1 - // 1 - // 1 - //); - //writeGraph true; - //strategy "b"; -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..3523816fd8c788c5a2aa7e8d88445e06a904b3ff --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/system/topAir/decomposeParDict @@ -0,0 +1 @@ +../bottomAir/decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/decomposeParDict deleted file mode 100644 index 0d50f520e43d3ae32220887e13bae91efe0c5713..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/decomposeParDict +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method scotch; - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/cabin/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/decomposeParDict index 0d50f520e43d3ae32220887e13bae91efe0c5713..2ccf121cd38f8dbf0b04c5c04b764c20e7b3f625 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/decomposeParDict @@ -10,16 +10,12 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; method scotch; - // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/windshield/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/windshield/decomposeParDict deleted file mode 100644 index 0d50f520e43d3ae32220887e13bae91efe0c5713..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/windshield/decomposeParDict +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method scotch; - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/windshield/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/windshield/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/windshield/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/cabin/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/cabin/decomposeParDict deleted file mode 100644 index e0a1bb5397accfbb9f619f6243a620eeba05dd2f..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/cabin/decomposeParDict +++ /dev/null @@ -1,29 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object decomposeParDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method simple; - -simpleCoeffs -{ - n (1 2 2); - delta 0.001; -} - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/cabin/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/cabin/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/cabin/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/decomposeParDict index e0a1bb5397accfbb9f619f6243a620eeba05dd2f..93b519fc7d134a7065acb6c6163113feb573c77e 100644 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,11 +18,9 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { n (1 2 2); - delta 0.001; } - // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/exterior/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/exterior/decomposeParDict deleted file mode 100644 index e0a1bb5397accfbb9f619f6243a620eeba05dd2f..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/exterior/decomposeParDict +++ /dev/null @@ -1,29 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object decomposeParDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method simple; - -simpleCoeffs -{ - n (1 2 2); - delta 0.001; -} - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/exterior/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/exterior/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/exterior/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/decomposeParDict deleted file mode 100644 index e0a1bb5397accfbb9f619f6243a620eeba05dd2f..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/decomposeParDict +++ /dev/null @@ -1,29 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object decomposeParDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method simple; - -simpleCoeffs -{ - n (1 2 2); - delta 0.001; -} - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/ice/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/decomposeParDict index d7b4b378864c705976d51dc47b4cf07551bb3607..fbeb943163d17e86ede0e9cce6c9d2a3705cbe22 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/air/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,27 +18,11 @@ numberOfSubdomains 4; method scotch; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - - // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/decomposeParDict index d7b4b378864c705976d51dc47b4cf07551bb3607..fbeb943163d17e86ede0e9cce6c9d2a3705cbe22 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,27 +18,11 @@ numberOfSubdomains 4; method scotch; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - - // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/decomposeParDict index 61f7f8c0dd831d296986030ff9e8c44bf3540e2a..5092045209040261535188d9d660c1013e78d7df 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/heatExchanger/system/porous/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,27 +18,11 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - - // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/decomposeParDict index 5448946b393246ebd70ba0b83352f9c4d257c619..22490ad0e50a658a510aafc9d56cba42822f46bb 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/jouleHeatingSolid/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,5 +18,4 @@ numberOfSubdomains 4; method scotch; - // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/decomposeParDict deleted file mode 100644 index ffe8be78e47eae2bf64e33d69105d0884f8eeea1..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/decomposeParDict +++ /dev/null @@ -1,44 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/bottomAir/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/decomposeParDict index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..b3f8705217e0353b47da1fc4184a3c93564de6cd 100644 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/decomposeParDict +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/decomposeParDict @@ -10,11 +10,8 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; @@ -27,46 +24,17 @@ method scotch; // method simple; // method manual; -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs +coeffs { n (2 2 1); - delta 0.001; - order xyz; } scotchCoeffs { - //processorWeights - //( - // 1 - // 1 - // 1 - // 1 - //); + //processorWeights ( 1 1 1 1 ); //writeGraph true; //strategy "b"; } -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - // ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/decomposeParDict deleted file mode 100644 index 222243ec9501037594d2f9e0c37fce88d67698c2..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/decomposeParDict +++ /dev/null @@ -1,46 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - - -method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - - -manualCoeffs -{ - dataFile "decompositionData"; -} - - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/heater/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/leftSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/leftSolid/decomposeParDict deleted file mode 100644 index 222243ec9501037594d2f9e0c37fce88d67698c2..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/leftSolid/decomposeParDict +++ /dev/null @@ -1,46 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - - -method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - - -manualCoeffs -{ - dataFile "decompositionData"; -} - - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/leftSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/leftSolid/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/leftSolid/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/rightSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/rightSolid/decomposeParDict deleted file mode 100644 index 222243ec9501037594d2f9e0c37fce88d67698c2..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/rightSolid/decomposeParDict +++ /dev/null @@ -1,46 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - - -method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - - -manualCoeffs -{ - dataFile "decompositionData"; -} - - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/rightSolid/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/rightSolid/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/rightSolid/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/decomposeParDict deleted file mode 100644 index ffe8be78e47eae2bf64e33d69105d0884f8eeea1..0000000000000000000000000000000000000000 --- a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/decomposeParDict +++ /dev/null @@ -1,44 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - note "mesh decomposition control dictionary"; - location "system"; - object decomposeParDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -numberOfSubdomains 4; - -method scotch; - -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - - -manualCoeffs -{ - dataFile "decompositionData"; -} - - -// ************************************************************************* // diff --git a/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/decomposeParDict b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/decomposeParDict new file mode 120000 index 0000000000000000000000000000000000000000..46638e60f61f453fde97c51772ad6111792db0f6 --- /dev/null +++ b/tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeaterRadiation/system/topAir/decomposeParDict @@ -0,0 +1 @@ +../decomposeParDict \ No newline at end of file diff --git a/tutorials/incompressible/icoFoam/cavityMappingTest/system/coarseMesh/decomposeParDict b/tutorials/incompressible/icoFoam/cavityMappingTest/system/coarseMesh/decomposeParDict index cf5823a268b17fd8933f76576d5cef47162faec6..2ccf121cd38f8dbf0b04c5c04b764c20e7b3f625 100644 --- a/tutorials/incompressible/icoFoam/cavityMappingTest/system/coarseMesh/decomposeParDict +++ b/tutorials/incompressible/icoFoam/cavityMappingTest/system/coarseMesh/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,5 +18,4 @@ numberOfSubdomains 4; method scotch; - // ************************************************************************* // diff --git a/tutorials/incompressible/icoFoam/cavityMappingTest/system/decomposeParDict b/tutorials/incompressible/icoFoam/cavityMappingTest/system/decomposeParDict index cf5823a268b17fd8933f76576d5cef47162faec6..2ccf121cd38f8dbf0b04c5c04b764c20e7b3f625 100644 --- a/tutorials/incompressible/icoFoam/cavityMappingTest/system/decomposeParDict +++ b/tutorials/incompressible/icoFoam/cavityMappingTest/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,5 +18,4 @@ numberOfSubdomains 4; method scotch; - // ************************************************************************* // diff --git a/tutorials/incompressible/lumpedPointMotion/building/steady/system/decomposeParDict b/tutorials/incompressible/lumpedPointMotion/building/steady/system/decomposeParDict index e155f990eb497199da0f66eaa2fba67d52ca7717..9cd763c3f7e15fc45d104354bf7ecc57dbf2fb7b 100644 --- a/tutorials/incompressible/lumpedPointMotion/building/steady/system/decomposeParDict +++ b/tutorials/incompressible/lumpedPointMotion/building/steady/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -20,11 +19,11 @@ method scotch; // method hierarchical; -hierarchicalCoeffs +coeffs { - n (3 2 1); - delta 0.001; - order xyz; + n (3 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/incompressible/overPimpleDyMFoam/cylinder/cylinderAndBackground/system/decomposeParDict b/tutorials/incompressible/overPimpleDyMFoam/cylinder/cylinderAndBackground/system/decomposeParDict index 29610a20d888080443c389945459a889bb0985ea..415cda309aa944f386298d23cc12e32169f872b7 100644 --- a/tutorials/incompressible/overPimpleDyMFoam/cylinder/cylinderAndBackground/system/decomposeParDict +++ b/tutorials/incompressible/overPimpleDyMFoam/cylinder/cylinderAndBackground/system/decomposeParDict @@ -10,21 +10,19 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; - method hierarchical; -hierarchicalCoeffs +coeffs { n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/incompressible/overPimpleDyMFoam/simpleRotor/system/decomposeParDict b/tutorials/incompressible/overPimpleDyMFoam/simpleRotor/system/decomposeParDict index 805c936e8773880bddf85bd0205c77016d84652e..8fa48d97e2ba9f46244320b031c4365052bf708a 100644 --- a/tutorials/incompressible/overPimpleDyMFoam/simpleRotor/system/decomposeParDict +++ b/tutorials/incompressible/overPimpleDyMFoam/simpleRotor/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,11 +18,11 @@ numberOfSubdomains 3; method hierarchical; -hierarchicalCoeffs +coeffs { n (3 1 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/incompressible/overPimpleDyMFoam/twoSimpleRotors/system/decomposeParDict b/tutorials/incompressible/overPimpleDyMFoam/twoSimpleRotors/system/decomposeParDict index 2e73b80199c46efa6acc5a8a33e9c5fbb6c397b8..8fa48d97e2ba9f46244320b031c4365052bf708a 100644 --- a/tutorials/incompressible/overPimpleDyMFoam/twoSimpleRotors/system/decomposeParDict +++ b/tutorials/incompressible/overPimpleDyMFoam/twoSimpleRotors/system/decomposeParDict @@ -10,21 +10,19 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 3; - method hierarchical; -hierarchicalCoeffs +coeffs { n (3 1 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/incompressible/overSimpleFoam/aeroFoil/aeroFoil_snappyHexMesh/system/decomposeParDict b/tutorials/incompressible/overSimpleFoam/aeroFoil/aeroFoil_snappyHexMesh/system/decomposeParDict index f70b376fabb6dec49a7ec5c0e536446952692f16..91e32fc1521163331690056a6153060a9eea3d98 100644 --- a/tutorials/incompressible/overSimpleFoam/aeroFoil/aeroFoil_snappyHexMesh/system/decomposeParDict +++ b/tutorials/incompressible/overSimpleFoam/aeroFoil/aeroFoil_snappyHexMesh/system/decomposeParDict @@ -18,22 +18,11 @@ numberOfSubdomains 3; method simple; -simpleCoeffs +coeffs { - n (1 3 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (3 2 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "cellDecomposition"; + n (1 3 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/incompressible/overSimpleFoam/aeroFoil/background_overset/system/decomposeParDict b/tutorials/incompressible/overSimpleFoam/aeroFoil/background_overset/system/decomposeParDict index 5a457a752003f61bd4651e953791e75b814fe8cb..f1b18226f652df92338ddc7a533bc2ef1b91a1ef 100644 --- a/tutorials/incompressible/overSimpleFoam/aeroFoil/background_overset/system/decomposeParDict +++ b/tutorials/incompressible/overSimpleFoam/aeroFoil/background_overset/system/decomposeParDict @@ -18,22 +18,11 @@ numberOfSubdomains 8; method hierarchical; -simpleCoeffs +coeffs { - n (1 3 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (8 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "cellDecomposition"; + n (8 1 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/mixerVesselAMI2D/system/decomposeParDict b/tutorials/incompressible/pimpleDyMFoam/mixerVesselAMI2D/system/decomposeParDict index 441b8bdbbb42b1fdb606b8f5be42a7ac0a22a3b2..a57967483dc6872a5c674b5be9ddff964267c235 100644 --- a/tutorials/incompressible/pimpleDyMFoam/mixerVesselAMI2D/system/decomposeParDict +++ b/tutorials/incompressible/pimpleDyMFoam/mixerVesselAMI2D/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/tutorials/incompressible/pimpleDyMFoam/oscillatingInletACMI2D/system/decomposeParDict b/tutorials/incompressible/pimpleDyMFoam/oscillatingInletACMI2D/system/decomposeParDict index 82389e7cf3a9d51d8ec2233dc35ac68f00170907..1cda0c79246699a189da718798dffa9c5ad06657 100644 --- a/tutorials/incompressible/pimpleDyMFoam/oscillatingInletACMI2D/system/decomposeParDict +++ b/tutorials/incompressible/pimpleDyMFoam/oscillatingInletACMI2D/system/decomposeParDict @@ -12,19 +12,17 @@ FoamFile class dictionary; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; method scotch; -hierarchicalCoeffs +coeffs { - n (1 4 1); - delta 0.001; - order xyz; + n (1 4 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } - // ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/propeller/system/decomposeParDict b/tutorials/incompressible/pimpleDyMFoam/propeller/system/decomposeParDict index 85ea74b3b7994d01f27d4fd5b7253b2581c3a013..a967dc8e37aa0da9e1fa74141fd45a56e4e5f7aa 100644 --- a/tutorials/incompressible/pimpleDyMFoam/propeller/system/decomposeParDict +++ b/tutorials/incompressible/pimpleDyMFoam/propeller/system/decomposeParDict @@ -12,19 +12,17 @@ FoamFile class dictionary; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; method hierarchical; -hierarchicalCoeffs +coeffs { - n (1 4 1); - delta 0.001; - order xyz; + n (1 4 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } - // ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/decomposeParDict b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/decomposeParDict index f6b939ebccfef6b974a67cd96d7a5c207ede4433..5092045209040261535188d9d660c1013e78d7df 100644 --- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/decomposeParDict +++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,18 +18,11 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - - // ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion_snappyHexMesh/system/decomposeParDict b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion_snappyHexMesh/system/decomposeParDict index 6202e242f50f19297d8dc407442ed23a132e8ae3..91e32fc1521163331690056a6153060a9eea3d98 100644 --- a/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion_snappyHexMesh/system/decomposeParDict +++ b/tutorials/incompressible/pimpleDyMFoam/wingMotion/wingMotion_snappyHexMesh/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 3; method simple; -simpleCoeffs +coeffs { - n (1 3 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (3 2 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "cellDecomposition"; + n (1 3 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/incompressible/pimpleFoam/LES/channel395/system/decomposeParDict b/tutorials/incompressible/pimpleFoam/LES/channel395/system/decomposeParDict index 064765b0d0a5a177abb4ff30bdb973712e4a688a..4ec2ca98ac49433bd5387c32abeaa585b8fc249d 100644 --- a/tutorials/incompressible/pimpleFoam/LES/channel395/system/decomposeParDict +++ b/tutorials/incompressible/pimpleFoam/LES/channel395/system/decomposeParDict @@ -10,126 +10,20 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; -//- Keep owner and neighbour on same processor for faces in zones: -// preserveFaceZones (heater solid1 solid3); - -//- Keep owner and neighbour on same processor for faces in patches: -// (makes sense only for cyclic patches) -//preservePatches (cyclic_half0 cyclic_half1); - -//- Keep all of faceSet on a single processor. This puts all cells -// connected with a point, edge or face on the same processor. -// (just having face connected cells might not guarantee a balanced -// decomposition) -// The processor can be -1 (the decompositionMethod chooses the processor -// for a good load balance) or explicitly provided (upsets balance). -//singleProcessorFaceSets ((f0 -1)); - - -//- Use the volScalarField named here as a weight for each cell in the -// decomposition. For example, use a particle population field to decompose -// for a balanced number of particles in a lagrangian simulation. -// weightField dsmcRhoNMean; - -// method scotch; -// method hierarchical; method simple; -// method metis; -// method manual; -// method multiLevel; -// method structured; // does 2D decomposition of structured mesh -multiLevelCoeffs -{ - // Decomposition methods to apply in turn. This is like hierarchical but - // fully general - every method can be used at every level. - - level0 - { - numberOfSubdomains 64; - //method simple; - //simpleCoeffs - //{ - // n (2 1 1); - // delta 0.001; - //} - method scotch; - } - level1 - { - numberOfSubdomains 4; - method scotch; - } -} - -// Desired output - -simpleCoeffs +coeffs { n (1 2 2); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 2 1); - delta 0.001; - order xyz; -} - -metisCoeffs -{ - /* - processorWeights - ( - 1 - 1 - 1 - 1 - ); - */ -} - -scotchCoeffs -{ - //processorWeights - //( - // 1 - // 1 - // 1 - // 1 - //); - //writeGraph true; - //strategy "b"; -} - -manualCoeffs -{ - dataFile "decompositionData"; -} - -structuredCoeffs -{ - // Patches to do 2D decomposition on. Structured mesh only; cells have - // to be in 'columns' on top of patches. - patches (bottomPatch); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -//// Is the case distributed? Note: command-line argument -roots takes -//// precedence -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); // ************************************************************************* // diff --git a/tutorials/incompressible/pimpleFoam/LES/channel395DFSEM/system/decomposeParDict b/tutorials/incompressible/pimpleFoam/LES/channel395DFSEM/system/decomposeParDict index 0a7cc129c122b0a07b57a11c873b3b298cc6a424..a027d1dbe9d26299d4031521378666f134fa9e84 100644 --- a/tutorials/incompressible/pimpleFoam/LES/channel395DFSEM/system/decomposeParDict +++ b/tutorials/incompressible/pimpleFoam/LES/channel395DFSEM/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,11 +18,11 @@ numberOfSubdomains 8; method hierarchical; -hierarchicalCoeffs +coeffs { n (4 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } diff --git a/tutorials/incompressible/pimpleFoam/LES/vortexShed/system/decomposeParDict b/tutorials/incompressible/pimpleFoam/LES/vortexShed/system/decomposeParDict index d429acabdf67663b044b2f07ed2ec38300ea5d0a..db26a8c487f2497303edca14479627501cf5b8a8 100644 --- a/tutorials/incompressible/pimpleFoam/LES/vortexShed/system/decomposeParDict +++ b/tutorials/incompressible/pimpleFoam/LES/vortexShed/system/decomposeParDict @@ -12,17 +12,16 @@ FoamFile class dictionary; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; + n (2 2 1); + //delta 0.001; // default=0.001 } diff --git a/tutorials/incompressible/pisoFoam/LES/motorBike/motorBike/system/decomposeParDict b/tutorials/incompressible/pisoFoam/LES/motorBike/motorBike/system/decomposeParDict index 0be1973c5f56e906126a0ecf1ad3eecf54a477cf..c8d493ee9879fb957598cf3845b5ab94d2b123aa 100644 --- a/tutorials/incompressible/pisoFoam/LES/motorBike/motorBike/system/decomposeParDict +++ b/tutorials/incompressible/pisoFoam/LES/motorBike/motorBike/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,23 +18,11 @@ numberOfSubdomains 8; method hierarchical; -simpleCoeffs +coeffs { - n (4 1 1); - delta 0.001; + n (4 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (4 2 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "cellDecomposition"; -} - - // ************************************************************************* // diff --git a/tutorials/incompressible/pisoFoam/LES/motorBike/motorBike/system/decomposeParDict.hierarchical b/tutorials/incompressible/pisoFoam/LES/motorBike/motorBike/system/decomposeParDict.hierarchical index 0be1973c5f56e906126a0ecf1ad3eecf54a477cf..349b598d3eef71b1ea2dd35a633da8bddcdde458 100644 --- a/tutorials/incompressible/pisoFoam/LES/motorBike/motorBike/system/decomposeParDict.hierarchical +++ b/tutorials/incompressible/pisoFoam/LES/motorBike/motorBike/system/decomposeParDict.hierarchical @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 8; method hierarchical; -simpleCoeffs +coeffs { - n (4 1 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (4 2 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "cellDecomposition"; + n (4 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } diff --git a/tutorials/incompressible/pisoFoam/LES/motorBike/motorBike/system/decomposeParDict.ptscotch b/tutorials/incompressible/pisoFoam/LES/motorBike/motorBike/system/decomposeParDict.ptscotch index 59fee527f04af9b4a9d40800c865850c92af7fed..f3d9d8baf90d0414067866e57c1ae44efdb9ba14 100644 --- a/tutorials/incompressible/pisoFoam/LES/motorBike/motorBike/system/decomposeParDict.ptscotch +++ b/tutorials/incompressible/pisoFoam/LES/motorBike/motorBike/system/decomposeParDict.ptscotch @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,23 +18,11 @@ numberOfSubdomains 8; method ptscotch; -simpleCoeffs +coeffs { - n (4 1 1); - delta 0.001; + n (4 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (4 2 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "cellDecomposition"; -} - - // ************************************************************************* // diff --git a/tutorials/incompressible/pisoFoam/LES/pitzDailyMapped/system/decomposeParDict b/tutorials/incompressible/pisoFoam/LES/pitzDailyMapped/system/decomposeParDict index 880edbdd8d79daceadb66df874fc677db4a48fe9..efb47b5d70a896b4154952a0d9579b1a1a5e13ba 100644 --- a/tutorials/incompressible/pisoFoam/LES/pitzDailyMapped/system/decomposeParDict +++ b/tutorials/incompressible/pisoFoam/LES/pitzDailyMapped/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,27 +18,4 @@ numberOfSubdomains 8; method scotch; -simpleCoeffs -{ - n (2 1 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - - // ************************************************************************* // diff --git a/tutorials/incompressible/porousSimpleFoam/straightDuctImplicit/system/decomposeParDict b/tutorials/incompressible/porousSimpleFoam/straightDuctImplicit/system/decomposeParDict index 2fd87ad2ac5d001a9d7361ea8a587560bd5dd1a7..fdf2b548b49e94e1f61162ffd0c4fcaeb81b1e85 100644 --- a/tutorials/incompressible/porousSimpleFoam/straightDuctImplicit/system/decomposeParDict +++ b/tutorials/incompressible/porousSimpleFoam/straightDuctImplicit/system/decomposeParDict @@ -19,27 +19,15 @@ numberOfSubdomains 4; //method simple; method hierarchical; -simpleCoeffs +coeffs { - n (2 2 2); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; roots ( ); - // ************************************************************************* // diff --git a/tutorials/incompressible/simpleFoam/motorBike/system/decomposeParDict.6 b/tutorials/incompressible/simpleFoam/motorBike/system/decomposeParDict.6 index db5f0cd2c283170f048d8113451c047d7f062452..72ccf6fe1e1877cb3b7c1b8a902f6b02f983c79a 100644 --- a/tutorials/incompressible/simpleFoam/motorBike/system/decomposeParDict.6 +++ b/tutorials/incompressible/simpleFoam/motorBike/system/decomposeParDict.6 @@ -12,7 +12,6 @@ FoamFile class dictionary; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 6; @@ -20,23 +19,12 @@ numberOfSubdomains 6; method hierarchical; // method ptscotch; -simpleCoeffs -{ - n (6 1 1); - delta 0.001; -} - -hierarchicalCoeffs +coeffs { - n (3 2 1); - delta 0.001; - order xyz; + n (3 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "cellDecomposition"; } -manualCoeffs -{ - dataFile "cellDecomposition"; -} - - // ************************************************************************* // diff --git a/tutorials/incompressible/simpleFoam/pipeCyclic/system/decomposeParDict b/tutorials/incompressible/simpleFoam/pipeCyclic/system/decomposeParDict index 8eef9939739813e9af329010ff26b46b84e23eaf..22d0a558b3d3446501b1019a2a7900eaa50df0ef 100644 --- a/tutorials/incompressible/simpleFoam/pipeCyclic/system/decomposeParDict +++ b/tutorials/incompressible/simpleFoam/pipeCyclic/system/decomposeParDict @@ -12,7 +12,6 @@ FoamFile class dictionary; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 5; diff --git a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/system/decomposeParDict b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/system/decomposeParDict index d2ba4aab9fc9a8b28b4a6824a48543f33501e3ce..eb1dcb53fa5d631184a3f0c6ddb31575fa1e309f 100644 --- a/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/system/decomposeParDict +++ b/tutorials/incompressible/simpleFoam/pitzDailyExptInlet/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,10 @@ numberOfSubdomains 4; method hierarchical; -simpleCoeffs -{ - n (2 1 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; +coeffs + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/incompressible/simpleFoam/turbineSiting/system/decomposeParDict.hierarchical b/tutorials/incompressible/simpleFoam/turbineSiting/system/decomposeParDict.hierarchical index 0ec2cc47f72549c41c119a2d918a127fd17fd9fb..f9bc71739dcc3c910a5a82ea67fb5084d09007cf 100644 --- a/tutorials/incompressible/simpleFoam/turbineSiting/system/decomposeParDict.hierarchical +++ b/tutorials/incompressible/simpleFoam/turbineSiting/system/decomposeParDict.hierarchical @@ -19,11 +19,11 @@ numberOfSubdomains 4; method hierarchical; -hierarchicalCoeffs +coeffs { n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/lagrangian/DPMFoam/Goldschmidt/system/decomposeParDict b/tutorials/lagrangian/DPMFoam/Goldschmidt/system/decomposeParDict index a7f9749028cd9f66146ea5136bff52056c6b8ca3..0ad5e3237fa21fbf4e8d6f643bce136a2538e76e 100644 --- a/tutorials/lagrangian/DPMFoam/Goldschmidt/system/decomposeParDict +++ b/tutorials/lagrangian/DPMFoam/Goldschmidt/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,10 +18,10 @@ numberOfSubdomains 6; method simple; -simpleCoeffs +coeffs { - n (1 6 1); - delta 0.001; + n (1 6 1); + //delta 0.001; // default=0.001 } // ************************************************************************* // diff --git a/tutorials/lagrangian/MPPICFoam/Goldschmidt/system/decomposeParDict b/tutorials/lagrangian/MPPICFoam/Goldschmidt/system/decomposeParDict index 60a43cac78835f07688d1a94e6ce18f647b57fa0..9a39c07902c4b9536c20d97a64da336afa51e932 100644 --- a/tutorials/lagrangian/MPPICFoam/Goldschmidt/system/decomposeParDict +++ b/tutorials/lagrangian/MPPICFoam/Goldschmidt/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,10 +18,10 @@ numberOfSubdomains 5; method simple; -simpleCoeffs +coeffs { - n (1 5 1); - delta 0.001; + n (1 5 1); + //delta 0.001; // default=0.001 } // ************************************************************************* // diff --git a/tutorials/lagrangian/MPPICFoam/cyclone/system/decomposeParDict b/tutorials/lagrangian/MPPICFoam/cyclone/system/decomposeParDict index 7990b000489c7d73dd661af6bcd20fd9799512d3..1561b79e382bad5de4abc81e1ee9e3715b0c8b2c 100644 --- a/tutorials/lagrangian/MPPICFoam/cyclone/system/decomposeParDict +++ b/tutorials/lagrangian/MPPICFoam/cyclone/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,10 +18,11 @@ numberOfSubdomains 12; method simple; -simpleCoeffs +coeffs { - n (2 2 3); - delta 0.001; + n (2 2 3); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/decomposeParDict b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/decomposeParDict index d7b4b378864c705976d51dc47b4cf07551bb3607..12a2e8b434d8d798bb52d61272f1457095543c68 100644 --- a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/decomposeParDict +++ b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 4; method scotch; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/lagrangian/icoUncoupledKinematicParcelFoam/hopper/hopperEmptying/system/decomposeParDict b/tutorials/lagrangian/icoUncoupledKinematicParcelFoam/hopper/hopperEmptying/system/decomposeParDict index 341581df062ab96de94f4c45669795c7a0f8813d..5539e64d77b02f978a6db87c0b8eadb47ee64a8a 100644 --- a/tutorials/lagrangian/icoUncoupledKinematicParcelFoam/hopper/hopperEmptying/system/decomposeParDict +++ b/tutorials/lagrangian/icoUncoupledKinematicParcelFoam/hopper/hopperEmptying/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,23 +18,13 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (4 1 1); - delta 0.001; + n (4 1 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (4 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} distributed no; diff --git a/tutorials/lagrangian/icoUncoupledKinematicParcelFoam/hopper/hopperInitialState/system/decomposeParDict b/tutorials/lagrangian/icoUncoupledKinematicParcelFoam/hopper/hopperInitialState/system/decomposeParDict index 341581df062ab96de94f4c45669795c7a0f8813d..a0bc43d99a86b51393787ea1b3a9acc2995189b3 100644 --- a/tutorials/lagrangian/icoUncoupledKinematicParcelFoam/hopper/hopperInitialState/system/decomposeParDict +++ b/tutorials/lagrangian/icoUncoupledKinematicParcelFoam/hopper/hopperInitialState/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (4 1 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (4 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (4 1 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/lagrangian/reactingParcelFoam/cylinder/system/decomposeParDict b/tutorials/lagrangian/reactingParcelFoam/cylinder/system/decomposeParDict index 35ee29db3d0a0dfdab34997765e08a3c1e917c54..4e024e7a6c09d9ab36cc19b52b94e1f115a5becb 100644 --- a/tutorials/lagrangian/reactingParcelFoam/cylinder/system/decomposeParDict +++ b/tutorials/lagrangian/reactingParcelFoam/cylinder/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,17 +18,12 @@ numberOfSubdomains 4; method metis; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } metisCoeffs @@ -37,11 +31,6 @@ metisCoeffs processorWeights ( 1 1 1 1 ); } -manualCoeffs -{ - dataFile ""; -} - distributed no; roots ( ); diff --git a/tutorials/lagrangian/reactingParcelFoam/filter/system/decomposeParDict b/tutorials/lagrangian/reactingParcelFoam/filter/system/decomposeParDict index f50ab8d7166465675623b8b2d2ba23d1c18510f6..549f7540a5367e58a6120797e0996069ce554072 100644 --- a/tutorials/lagrangian/reactingParcelFoam/filter/system/decomposeParDict +++ b/tutorials/lagrangian/reactingParcelFoam/filter/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -25,23 +24,12 @@ preserveFaceZones cycRight ); -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - - // ************************************************************************* // diff --git a/tutorials/lagrangian/reactingParcelFoam/hotBoxes/system/decomposeParDict b/tutorials/lagrangian/reactingParcelFoam/hotBoxes/system/decomposeParDict index 547c0a1e4d3aafd5d12ba455b32ecda8ec5ef0ff..ae9f4ce29225dd0b8cd855911f54766719d27317 100644 --- a/tutorials/lagrangian/reactingParcelFoam/hotBoxes/system/decomposeParDict +++ b/tutorials/lagrangian/reactingParcelFoam/hotBoxes/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/tutorials/lagrangian/reactingParcelFoam/hotBoxes/system/wallFilmRegion.orig/decomposeParDict b/tutorials/lagrangian/reactingParcelFoam/hotBoxes/system/wallFilmRegion.orig/decomposeParDict index 547c0a1e4d3aafd5d12ba455b32ecda8ec5ef0ff..ae9f4ce29225dd0b8cd855911f54766719d27317 100644 --- a/tutorials/lagrangian/reactingParcelFoam/hotBoxes/system/wallFilmRegion.orig/decomposeParDict +++ b/tutorials/lagrangian/reactingParcelFoam/hotBoxes/system/wallFilmRegion.orig/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/tutorials/lagrangian/reactingParcelFoam/rivuletPanel/system/decomposeParDict b/tutorials/lagrangian/reactingParcelFoam/rivuletPanel/system/decomposeParDict index 35ee29db3d0a0dfdab34997765e08a3c1e917c54..7ebff6fbccb49bad5aa0512caef154d7d33f06e6 100644 --- a/tutorials/lagrangian/reactingParcelFoam/rivuletPanel/system/decomposeParDict +++ b/tutorials/lagrangian/reactingParcelFoam/rivuletPanel/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,17 +18,12 @@ numberOfSubdomains 4; method metis; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } metisCoeffs @@ -37,14 +31,9 @@ metisCoeffs processorWeights ( 1 1 1 1 ); } -manualCoeffs -{ - dataFile ""; -} distributed no; roots ( ); - // ************************************************************************* // diff --git a/tutorials/lagrangian/reactingParcelFoam/splashPanel/system/decomposeParDict b/tutorials/lagrangian/reactingParcelFoam/splashPanel/system/decomposeParDict index 35ee29db3d0a0dfdab34997765e08a3c1e917c54..4e024e7a6c09d9ab36cc19b52b94e1f115a5becb 100644 --- a/tutorials/lagrangian/reactingParcelFoam/splashPanel/system/decomposeParDict +++ b/tutorials/lagrangian/reactingParcelFoam/splashPanel/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,17 +18,12 @@ numberOfSubdomains 4; method metis; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } metisCoeffs @@ -37,11 +31,6 @@ metisCoeffs processorWeights ( 1 1 1 1 ); } -manualCoeffs -{ - dataFile ""; -} - distributed no; roots ( ); diff --git a/tutorials/mesh/foamyHexMesh/blob/system/backgroundMeshDecomposition/decomposeParDict b/tutorials/mesh/foamyHexMesh/blob/system/backgroundMeshDecomposition/decomposeParDict index 4051a53530039dc7b8aa67774809f148339010a4..dfcc2d40e8667a072d59223ae62ba2ce0aa21f4f 100644 --- a/tutorials/mesh/foamyHexMesh/blob/system/backgroundMeshDecomposition/decomposeParDict +++ b/tutorials/mesh/foamyHexMesh/blob/system/backgroundMeshDecomposition/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -21,27 +20,15 @@ method scotch; //method ptscotch; // method hierarchical; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 1 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; roots ( ); - // ************************************************************************* // diff --git a/tutorials/mesh/foamyHexMesh/blob/system/decomposeParDict b/tutorials/mesh/foamyHexMesh/blob/system/decomposeParDict index 4051a53530039dc7b8aa67774809f148339010a4..a1ba0095f6b25276a06a598bacf6ed5393832970 100644 --- a/tutorials/mesh/foamyHexMesh/blob/system/decomposeParDict +++ b/tutorials/mesh/foamyHexMesh/blob/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -21,27 +20,11 @@ method scotch; //method ptscotch; // method hierarchical; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; + n (2 1 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (2 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - - // ************************************************************************* // diff --git a/tutorials/mesh/foamyHexMesh/flange/system/backgroundMeshDecomposition/decomposeParDict b/tutorials/mesh/foamyHexMesh/flange/system/backgroundMeshDecomposition/decomposeParDict index 552d5ce1ccdbde53e5fd00d3448672e48b87ee74..f5d7a5b38812c1dc384bad4fcd8ba3112dae605f 100644 --- a/tutorials/mesh/foamyHexMesh/flange/system/backgroundMeshDecomposition/decomposeParDict +++ b/tutorials/mesh/foamyHexMesh/flange/system/backgroundMeshDecomposition/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -20,27 +19,15 @@ numberOfSubdomains 8; //method scotch; method hierarchical; -simpleCoeffs +coeffs { - n (2 2 2); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 2); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; roots ( ); - // ************************************************************************* // diff --git a/tutorials/mesh/foamyHexMesh/flange/system/decomposeParDict b/tutorials/mesh/foamyHexMesh/flange/system/decomposeParDict index 552d5ce1ccdbde53e5fd00d3448672e48b87ee74..f5d7a5b38812c1dc384bad4fcd8ba3112dae605f 100644 --- a/tutorials/mesh/foamyHexMesh/flange/system/decomposeParDict +++ b/tutorials/mesh/foamyHexMesh/flange/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -20,27 +19,15 @@ numberOfSubdomains 8; //method scotch; method hierarchical; -simpleCoeffs +coeffs { - n (2 2 2); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 2); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; roots ( ); - // ************************************************************************* // diff --git a/tutorials/mesh/foamyHexMesh/mixerVessel/constant/triSurface/surfaceProcess.sh b/tutorials/mesh/foamyHexMesh/mixerVessel/constant/triSurface/surfaceProcess.sh index 2e97357bc223160a24e2d611349dac991ebb7608..d5d581ca741295fcaab37b51dfafaf264e39f339 100755 --- a/tutorials/mesh/foamyHexMesh/mixerVessel/constant/triSurface/surfaceProcess.sh +++ b/tutorials/mesh/foamyHexMesh/mixerVessel/constant/triSurface/surfaceProcess.sh @@ -1,10 +1,8 @@ #!/bin/sh - -cd ${0%/*} || exit 1 # Run from this directory +cd ${0%/*} || exit 1 # Run from this directory cp rawSurfaces/*.stl . - # Vessel surface surfaceAdd outlet.stl vessel.stl vessel.stl @@ -30,5 +28,4 @@ mv stirrer_bafflePart_0.stl stirrer_baffles.stl surfaceCheck stirrer_baffles.stl mv stirrer_baffles_0.obj stirrer_baffles_plate.obj - #------------------------------------------------------------------------------ diff --git a/tutorials/mesh/foamyHexMesh/mixerVessel/system/decomposeParDict b/tutorials/mesh/foamyHexMesh/mixerVessel/system/decomposeParDict index 33bdcf393fb68ce92604d83c0359b13e392f1b8e..ab5a462de87daf8eec5cc6297dd615d4e29a25a2 100644 --- a/tutorials/mesh/foamyHexMesh/mixerVessel/system/decomposeParDict +++ b/tutorials/mesh/foamyHexMesh/mixerVessel/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -21,27 +20,11 @@ numberOfSubdomains 8; method hierarchical; //method scotch; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; + n (2 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } -hierarchicalCoeffs -{ - n (2 2 2); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - - // ************************************************************************* // diff --git a/tutorials/mesh/foamyQuadMesh/OpenCFD/system/decomposeParDict b/tutorials/mesh/foamyQuadMesh/OpenCFD/system/decomposeParDict index acb913f174261c65d96ef6d3e56f5332d7e84d45..a5229e0e188e6dc16535a257fef5790bd073e7bb 100644 --- a/tutorials/mesh/foamyQuadMesh/OpenCFD/system/decomposeParDict +++ b/tutorials/mesh/foamyQuadMesh/OpenCFD/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 8; method hierarchical; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 2); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/system/decomposeParDict b/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/system/decomposeParDict index 938ed79f6fcc21234207006ff814afee5c986916..26d0ca5bd31ed73b9734d5cdc4e0b50791feb037 100644 --- a/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/system/decomposeParDict +++ b/tutorials/mesh/moveDynamicMesh/SnakeRiverCanyon/system/decomposeParDict @@ -10,32 +10,19 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 2; method hierarchical; -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs +coeffs { n (2 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ + //delta 0.001; // default=0.001 + //order xyz; // default=xzy dataFile "decompositionData"; } diff --git a/tutorials/mesh/moveDynamicMesh/relativeMotion/box2D_moveDynamicMesh/system/decomposeParDict b/tutorials/mesh/moveDynamicMesh/relativeMotion/box2D_moveDynamicMesh/system/decomposeParDict index 35eae8f99c60c3e7d54b784a39e97c1d2bcc871a..f1e7dbf0bb7c5aa0d67de2061721969faa448947 100644 --- a/tutorials/mesh/moveDynamicMesh/relativeMotion/box2D_moveDynamicMesh/system/decomposeParDict +++ b/tutorials/mesh/moveDynamicMesh/relativeMotion/box2D_moveDynamicMesh/system/decomposeParDict @@ -12,18 +12,17 @@ FoamFile class dictionary; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; method hierarchical; -hierarchicalCoeffs +coeffs { - n (2 2 1); - delta 0.001; - order xyz; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } diff --git a/tutorials/mesh/moveDynamicMesh/relativeMotion/box_snappyHexMesh/system/decomposeParDict b/tutorials/mesh/moveDynamicMesh/relativeMotion/box_snappyHexMesh/system/decomposeParDict index 35eae8f99c60c3e7d54b784a39e97c1d2bcc871a..f1e7dbf0bb7c5aa0d67de2061721969faa448947 100644 --- a/tutorials/mesh/moveDynamicMesh/relativeMotion/box_snappyHexMesh/system/decomposeParDict +++ b/tutorials/mesh/moveDynamicMesh/relativeMotion/box_snappyHexMesh/system/decomposeParDict @@ -12,18 +12,17 @@ FoamFile class dictionary; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; method hierarchical; -hierarchicalCoeffs +coeffs { - n (2 2 1); - delta 0.001; - order xyz; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } diff --git a/tutorials/mesh/parallel/filter/system/decomposeParDict b/tutorials/mesh/parallel/filter/system/decomposeParDict index 099ae341f54c2a368e62b2e18bb522c41b9916b2..61f2bb65241c0284d0787af0080d4bc838cf614f 100644 --- a/tutorials/mesh/parallel/filter/system/decomposeParDict +++ b/tutorials/mesh/parallel/filter/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -25,23 +24,5 @@ preserveFaceZones cycRight ); -simpleCoeffs -{ - n ( 2 2 1 ); - delta 0.001; -} - -hierarchicalCoeffs -{ - n ( 1 1 1 ); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - // ************************************************************************* // diff --git a/tutorials/mesh/snappyHexMesh/flange/system/decomposeParDict b/tutorials/mesh/snappyHexMesh/flange/system/decomposeParDict index 37e6377198c64a0b191d2570c7b6661269ebec3d..e2e3c3f1b2b93f077cadc09bd0e3362e55703236 100644 --- a/tutorials/mesh/snappyHexMesh/flange/system/decomposeParDict +++ b/tutorials/mesh/snappyHexMesh/flange/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,17 +18,11 @@ numberOfSubdomains 4; method ptscotch; //simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } metisCoeffs @@ -37,11 +30,6 @@ metisCoeffs processorWeights ( 1 1 1 1 ); } -manualCoeffs -{ - dataFile ""; -} - distributed no; roots ( ); diff --git a/tutorials/mesh/snappyHexMesh/gap_detection/system/decomposeParDict b/tutorials/mesh/snappyHexMesh/gap_detection/system/decomposeParDict index bd6966b65742a22ff982a1b75500a9d9cd1c7cb5..5e433b7724344eddbdf279b4184ab23c87ab4a76 100644 --- a/tutorials/mesh/snappyHexMesh/gap_detection/system/decomposeParDict +++ b/tutorials/mesh/snappyHexMesh/gap_detection/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | +| \\ / O peration | Version: plus | | \\ / A nd | Web: www.OpenFOAM.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,12 @@ numberOfSubdomains 8; method hierarchical; -simpleCoeffs +coeffs { - n ( 4 1 1 ); - delta 0.001; -} - -hierarchicalCoeffs -{ - n ( 2 2 2 ); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "cellDecomposition"; + n (2 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "cellDecomposition"; } diff --git a/tutorials/multiphase/MPPICInterFoam/twoPhasePachuka/system/decomposeParDict b/tutorials/multiphase/MPPICInterFoam/twoPhasePachuka/system/decomposeParDict index c9e6d266a88dba71eb882695a152ea0b1f0d320a..90346c353d26558b97b82175d1cd320003bec741 100644 --- a/tutorials/multiphase/MPPICInterFoam/twoPhasePachuka/system/decomposeParDict +++ b/tutorials/multiphase/MPPICInterFoam/twoPhasePachuka/system/decomposeParDict @@ -12,18 +12,17 @@ FoamFile class dictionary; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; method hierarchical; -hierarchicalCoeffs +coeffs { - n (1 1 4); - delta 0.001; - order xyz; + n (1 1 4); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } diff --git a/tutorials/multiphase/cavitatingFoam/LES/throttle3D/system/decomposeParDict b/tutorials/multiphase/cavitatingFoam/LES/throttle3D/system/decomposeParDict index 61f7f8c0dd831d296986030ff9e8c44bf3540e2a..a5c698cbb820137ca015f0fd5b990ada334710b4 100644 --- a/tutorials/multiphase/cavitatingFoam/LES/throttle3D/system/decomposeParDict +++ b/tutorials/multiphase/cavitatingFoam/LES/throttle3D/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/decomposeParDict b/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/decomposeParDict index 4b8c326537f15ea0b64d16cdabaea4e65302fae4..ca0d5710b3a331b4d98f0189a0d33b03f924d9ce 100644 --- a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/decomposeParDict +++ b/tutorials/multiphase/compressibleInterDyMFoam/laminar/sloshingTank2D/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 16; method hierarchical; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (4 2 2); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (4 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/decomposeParDict b/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/decomposeParDict index c79d985331a367d854cf5e8808a4c3f0062f251a..2040beb9839624fe7e1948c43272ee6e0ecac663 100644 --- a/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/decomposeParDict +++ b/tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,10 +18,10 @@ numberOfSubdomains 2; method simple; -simpleCoeffs +coeffs { n (2 1 1); - delta 0.001; + //delta 0.001; // default=0.001 } diff --git a/tutorials/multiphase/compressibleInterFoam/laminar/depthCharge3D/system/decomposeParDict b/tutorials/multiphase/compressibleInterFoam/laminar/depthCharge3D/system/decomposeParDict index b8678d7c9693c1161f44340ec9a890873c627548..02447c453627f75d641a548ab456bcac13fa4efb 100644 --- a/tutorials/multiphase/compressibleInterFoam/laminar/depthCharge3D/system/decomposeParDict +++ b/tutorials/multiphase/compressibleInterFoam/laminar/depthCharge3D/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 4; method hierarchical; -simpleCoeffs +coeffs { - n (1 4 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 4 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (1 4 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/multiphase/compressibleMultiphaseInterFoam/laminar/damBreak4phase/system/decomposeParDict b/tutorials/multiphase/compressibleMultiphaseInterFoam/laminar/damBreak4phase/system/decomposeParDict index 61f7f8c0dd831d296986030ff9e8c44bf3540e2a..a5c698cbb820137ca015f0fd5b990ada334710b4 100644 --- a/tutorials/multiphase/compressibleMultiphaseInterFoam/laminar/damBreak4phase/system/decomposeParDict +++ b/tutorials/multiphase/compressibleMultiphaseInterFoam/laminar/damBreak4phase/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/multiphase/interDyMFoam/RAS/DTCHull/system/decomposeParDict b/tutorials/multiphase/interDyMFoam/RAS/DTCHull/system/decomposeParDict index a024bf31cbdcca4d5db40b20cbeb2c7b475e866d..efb47b5d70a896b4154952a0d9579b1a1a5e13ba 100644 --- a/tutorials/multiphase/interDyMFoam/RAS/DTCHull/system/decomposeParDict +++ b/tutorials/multiphase/interDyMFoam/RAS/DTCHull/system/decomposeParDict @@ -7,11 +7,10 @@ \*---------------------------------------------------------------------------*/ FoamFile { - version 2.0; - format ascii; - class dictionary; - location "system"; - object decomposeParDict; + version 2.0; + format ascii; + class dictionary; + object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,33 +18,4 @@ numberOfSubdomains 8; method scotch; -simpleCoeffs -{ - n (2 1 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -metisCoeffs -{ -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots -( -); - - // ************************************************************************* // diff --git a/tutorials/multiphase/interDyMFoam/RAS/floatingObject/system/decomposeParDict b/tutorials/multiphase/interDyMFoam/RAS/floatingObject/system/decomposeParDict index 02a34be82be5dd5617457365e4aba606186ab65d..bfce791340ab21be81c67084f7e6cc74d014b53d 100644 --- a/tutorials/multiphase/interDyMFoam/RAS/floatingObject/system/decomposeParDict +++ b/tutorials/multiphase/interDyMFoam/RAS/floatingObject/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,27 +18,5 @@ numberOfSubdomains 8; method scotch; -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - // ************************************************************************* // diff --git a/tutorials/multiphase/interDyMFoam/RAS/mixerVesselAMI/system/decomposeParDict b/tutorials/multiphase/interDyMFoam/RAS/mixerVesselAMI/system/decomposeParDict index 07354668609524e16384c4b47dd773caff96c641..83c7978f9fdc6f02bf37035c0fc4f60178ae1dca 100644 --- a/tutorials/multiphase/interDyMFoam/RAS/mixerVesselAMI/system/decomposeParDict +++ b/tutorials/multiphase/interDyMFoam/RAS/mixerVesselAMI/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/tutorials/multiphase/interDyMFoam/RAS/motorBike/system/decomposeParDict b/tutorials/multiphase/interDyMFoam/RAS/motorBike/system/decomposeParDict index 5c5ab00ebfc94484731517b280f97de5a97d5a57..5af511273b6864bd0b088b9b95ecb6c1e5b6ea77 100644 --- a/tutorials/multiphase/interDyMFoam/RAS/motorBike/system/decomposeParDict +++ b/tutorials/multiphase/interDyMFoam/RAS/motorBike/system/decomposeParDict @@ -20,7 +20,6 @@ numberOfSubdomains 5; method hierarchical; // method ptscotch; - // Optional decomposition constraints constraints { @@ -33,22 +32,12 @@ constraints } -simpleCoeffs -{ - n (4 1 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (5 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs +coeffs { - dataFile "cellDecomposition"; + n (5 1 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "cellDecomposition"; } diff --git a/tutorials/multiphase/interDyMFoam/laminar/damBreakWithObstacle/system/decomposeParDict b/tutorials/multiphase/interDyMFoam/laminar/damBreakWithObstacle/system/decomposeParDict index 84b7774d501e37c6a3216a5dc80fc0630d16a3fa..aa616c6c806696a3aa3f43a74b2075d108db133b 100644 --- a/tutorials/multiphase/interDyMFoam/laminar/damBreakWithObstacle/system/decomposeParDict +++ b/tutorials/multiphase/interDyMFoam/laminar/damBreakWithObstacle/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,27 +18,4 @@ numberOfSubdomains 6; method scotch; -simpleCoeffs -{ - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; -} - -distributed no; - -roots ( ); - - // ************************************************************************* // diff --git a/tutorials/multiphase/interDyMFoam/laminar/sloshingTank2D/system/decomposeParDict b/tutorials/multiphase/interDyMFoam/laminar/sloshingTank2D/system/decomposeParDict index 4b8c326537f15ea0b64d16cdabaea4e65302fae4..ca0d5710b3a331b4d98f0189a0d33b03f924d9ce 100644 --- a/tutorials/multiphase/interDyMFoam/laminar/sloshingTank2D/system/decomposeParDict +++ b/tutorials/multiphase/interDyMFoam/laminar/sloshingTank2D/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 16; method hierarchical; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (4 2 2); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (4 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/multiphase/interDyMFoam/laminar/sloshingTank2D3DoF/system/decomposeParDict b/tutorials/multiphase/interDyMFoam/laminar/sloshingTank2D3DoF/system/decomposeParDict index 4b8c326537f15ea0b64d16cdabaea4e65302fae4..ca0d5710b3a331b4d98f0189a0d33b03f924d9ce 100644 --- a/tutorials/multiphase/interDyMFoam/laminar/sloshingTank2D3DoF/system/decomposeParDict +++ b/tutorials/multiphase/interDyMFoam/laminar/sloshingTank2D3DoF/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 16; method hierarchical; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (4 2 2); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (4 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/multiphase/interDyMFoam/laminar/sloshingTank3D/system/decomposeParDict b/tutorials/multiphase/interDyMFoam/laminar/sloshingTank3D/system/decomposeParDict index 4b8c326537f15ea0b64d16cdabaea4e65302fae4..ca0d5710b3a331b4d98f0189a0d33b03f924d9ce 100644 --- a/tutorials/multiphase/interDyMFoam/laminar/sloshingTank3D/system/decomposeParDict +++ b/tutorials/multiphase/interDyMFoam/laminar/sloshingTank3D/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 16; method hierarchical; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (4 2 2); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (4 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/multiphase/interDyMFoam/laminar/sloshingTank3D3DoF/system/decomposeParDict b/tutorials/multiphase/interDyMFoam/laminar/sloshingTank3D3DoF/system/decomposeParDict index 4b8c326537f15ea0b64d16cdabaea4e65302fae4..a3b79da8ff8dedb4e3ec6b43f63d003feee910fe 100644 --- a/tutorials/multiphase/interDyMFoam/laminar/sloshingTank3D3DoF/system/decomposeParDict +++ b/tutorials/multiphase/interDyMFoam/laminar/sloshingTank3D3DoF/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,12 @@ numberOfSubdomains 16; method hierarchical; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (4 2 2); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (4 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } distributed no; diff --git a/tutorials/multiphase/interDyMFoam/laminar/sloshingTank3D6DoF/system/decomposeParDict b/tutorials/multiphase/interDyMFoam/laminar/sloshingTank3D6DoF/system/decomposeParDict index 4b8c326537f15ea0b64d16cdabaea4e65302fae4..a3b79da8ff8dedb4e3ec6b43f63d003feee910fe 100644 --- a/tutorials/multiphase/interDyMFoam/laminar/sloshingTank3D6DoF/system/decomposeParDict +++ b/tutorials/multiphase/interDyMFoam/laminar/sloshingTank3D6DoF/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,12 @@ numberOfSubdomains 16; method hierarchical; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (4 2 2); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (4 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } distributed no; diff --git a/tutorials/multiphase/interDyMFoam/laminar/testTubeMixer/system/decomposeParDict b/tutorials/multiphase/interDyMFoam/laminar/testTubeMixer/system/decomposeParDict index 4b8c326537f15ea0b64d16cdabaea4e65302fae4..a3b79da8ff8dedb4e3ec6b43f63d003feee910fe 100644 --- a/tutorials/multiphase/interDyMFoam/laminar/testTubeMixer/system/decomposeParDict +++ b/tutorials/multiphase/interDyMFoam/laminar/testTubeMixer/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,12 @@ numberOfSubdomains 16; method hierarchical; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (4 2 2); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (4 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } distributed no; diff --git a/tutorials/multiphase/interFoam/RAS/DTCHull/system/decomposeParDict b/tutorials/multiphase/interFoam/RAS/DTCHull/system/decomposeParDict index a024bf31cbdcca4d5db40b20cbeb2c7b475e866d..db0c617244e19600132538b97bcb3919c7a04b99 100644 --- a/tutorials/multiphase/interFoam/RAS/DTCHull/system/decomposeParDict +++ b/tutorials/multiphase/interFoam/RAS/DTCHull/system/decomposeParDict @@ -7,11 +7,10 @@ \*---------------------------------------------------------------------------*/ FoamFile { - version 2.0; - format ascii; - class dictionary; - location "system"; - object decomposeParDict; + version 2.0; + format ascii; + class dictionary; + object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,26 +18,11 @@ numberOfSubdomains 8; method scotch; -simpleCoeffs +coeffs { - n (2 1 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -metisCoeffs -{ -} - -manualCoeffs -{ - dataFile ""; + n (2 2 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/multiphase/interFoam/RAS/damBreak/damBreak/system/decomposeParDict b/tutorials/multiphase/interFoam/RAS/damBreak/damBreak/system/decomposeParDict index 61f7f8c0dd831d296986030ff9e8c44bf3540e2a..a5c698cbb820137ca015f0fd5b990ada334710b4 100644 --- a/tutorials/multiphase/interFoam/RAS/damBreak/damBreak/system/decomposeParDict +++ b/tutorials/multiphase/interFoam/RAS/damBreak/damBreak/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/multiphase/interFoam/laminar/damBreak/damBreak/system/decomposeParDict b/tutorials/multiphase/interFoam/laminar/damBreak/damBreak/system/decomposeParDict index 61f7f8c0dd831d296986030ff9e8c44bf3540e2a..51ea6cd9f26b23636ec57f1a04bce7fc0da4eb80 100644 --- a/tutorials/multiphase/interFoam/laminar/damBreak/damBreak/system/decomposeParDict +++ b/tutorials/multiphase/interFoam/laminar/damBreak/damBreak/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,10 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 1); + //delta 0.001; // default=0.001 } distributed no; diff --git a/tutorials/multiphase/interFoam/laminar/vofToLagrangian/eulerianInjection/system/decomposeParDict b/tutorials/multiphase/interFoam/laminar/vofToLagrangian/eulerianInjection/system/decomposeParDict index 0573ee2a16c1350384d481bcc65d52b3a4fa4cb8..175381fc75b22977a3014f0d6935fc5b4a337a67 100644 --- a/tutorials/multiphase/interFoam/laminar/vofToLagrangian/eulerianInjection/system/decomposeParDict +++ b/tutorials/multiphase/interFoam/laminar/vofToLagrangian/eulerianInjection/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,12 +18,11 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { n (2 1 2); - delta 0.001; + //delta 0.001; // default=0.001 } - // ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/laminar/vofToLagrangian/lagrangianDistributionInjection/system/decomposeParDict b/tutorials/multiphase/interFoam/laminar/vofToLagrangian/lagrangianDistributionInjection/system/decomposeParDict index 09cbfd15750dea37bce52a361a4d3545718c334f..175381fc75b22977a3014f0d6935fc5b4a337a67 100644 --- a/tutorials/multiphase/interFoam/laminar/vofToLagrangian/lagrangianDistributionInjection/system/decomposeParDict +++ b/tutorials/multiphase/interFoam/laminar/vofToLagrangian/lagrangianDistributionInjection/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,10 +18,10 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { n (2 1 2); - delta 0.001; + //delta 0.001; // default=0.001 } diff --git a/tutorials/multiphase/interFoam/laminar/vofToLagrangian/lagrangianParticleInjection/system/decomposeParDict b/tutorials/multiphase/interFoam/laminar/vofToLagrangian/lagrangianParticleInjection/system/decomposeParDict index 09cbfd15750dea37bce52a361a4d3545718c334f..b2b80856503e23cf2796314a530e222c196cf72c 100644 --- a/tutorials/multiphase/interFoam/laminar/vofToLagrangian/lagrangianParticleInjection/system/decomposeParDict +++ b/tutorials/multiphase/interFoam/laminar/vofToLagrangian/lagrangianParticleInjection/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,11 +18,11 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { n (2 1 2); - delta 0.001; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } - // ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/laminar/waveExampleCnoidal/system/decomposeParDict b/tutorials/multiphase/interFoam/laminar/waveExampleCnoidal/system/decomposeParDict index 301d97027b8aa1815be46c6525b8a54c5f6b6de1..1af1406f9577d50b307a78dc8075ee9aabd8998e 100644 --- a/tutorials/multiphase/interFoam/laminar/waveExampleCnoidal/system/decomposeParDict +++ b/tutorials/multiphase/interFoam/laminar/waveExampleCnoidal/system/decomposeParDict @@ -19,11 +19,11 @@ numberOfSubdomains 2; method hierarchical; -hierarchicalCoeffs +coeffs { n (2 1 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/laminar/waveExampleSolitary/system/decomposeParDict b/tutorials/multiphase/interFoam/laminar/waveExampleSolitary/system/decomposeParDict index 301d97027b8aa1815be46c6525b8a54c5f6b6de1..1af1406f9577d50b307a78dc8075ee9aabd8998e 100644 --- a/tutorials/multiphase/interFoam/laminar/waveExampleSolitary/system/decomposeParDict +++ b/tutorials/multiphase/interFoam/laminar/waveExampleSolitary/system/decomposeParDict @@ -19,11 +19,11 @@ numberOfSubdomains 2; method hierarchical; -hierarchicalCoeffs +coeffs { n (2 1 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/laminar/waveExampleSolitaryGrimshaw/system/decomposeParDict b/tutorials/multiphase/interFoam/laminar/waveExampleSolitaryGrimshaw/system/decomposeParDict index 301d97027b8aa1815be46c6525b8a54c5f6b6de1..1af1406f9577d50b307a78dc8075ee9aabd8998e 100644 --- a/tutorials/multiphase/interFoam/laminar/waveExampleSolitaryGrimshaw/system/decomposeParDict +++ b/tutorials/multiphase/interFoam/laminar/waveExampleSolitaryGrimshaw/system/decomposeParDict @@ -19,11 +19,11 @@ numberOfSubdomains 2; method hierarchical; -hierarchicalCoeffs +coeffs { n (2 1 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/laminar/waveExampleSolitaryMcCowan/system/decomposeParDict b/tutorials/multiphase/interFoam/laminar/waveExampleSolitaryMcCowan/system/decomposeParDict index 301d97027b8aa1815be46c6525b8a54c5f6b6de1..1af1406f9577d50b307a78dc8075ee9aabd8998e 100644 --- a/tutorials/multiphase/interFoam/laminar/waveExampleSolitaryMcCowan/system/decomposeParDict +++ b/tutorials/multiphase/interFoam/laminar/waveExampleSolitaryMcCowan/system/decomposeParDict @@ -19,11 +19,11 @@ numberOfSubdomains 2; method hierarchical; -hierarchicalCoeffs +coeffs { n (2 1 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/laminar/waveExampleStokesI/system/decomposeParDict b/tutorials/multiphase/interFoam/laminar/waveExampleStokesI/system/decomposeParDict index 301d97027b8aa1815be46c6525b8a54c5f6b6de1..1af1406f9577d50b307a78dc8075ee9aabd8998e 100644 --- a/tutorials/multiphase/interFoam/laminar/waveExampleStokesI/system/decomposeParDict +++ b/tutorials/multiphase/interFoam/laminar/waveExampleStokesI/system/decomposeParDict @@ -19,11 +19,11 @@ numberOfSubdomains 2; method hierarchical; -hierarchicalCoeffs +coeffs { n (2 1 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/laminar/waveExampleStokesII/system/decomposeParDict b/tutorials/multiphase/interFoam/laminar/waveExampleStokesII/system/decomposeParDict index 301d97027b8aa1815be46c6525b8a54c5f6b6de1..1af1406f9577d50b307a78dc8075ee9aabd8998e 100644 --- a/tutorials/multiphase/interFoam/laminar/waveExampleStokesII/system/decomposeParDict +++ b/tutorials/multiphase/interFoam/laminar/waveExampleStokesII/system/decomposeParDict @@ -19,11 +19,11 @@ numberOfSubdomains 2; method hierarchical; -hierarchicalCoeffs +coeffs { n (2 1 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/laminar/waveExampleStokesV/system/decomposeParDict b/tutorials/multiphase/interFoam/laminar/waveExampleStokesV/system/decomposeParDict index 57c7bea5e33d5df6b8b44bd1f87c1a5d95fcbf79..1af1406f9577d50b307a78dc8075ee9aabd8998e 100644 --- a/tutorials/multiphase/interFoam/laminar/waveExampleStokesV/system/decomposeParDict +++ b/tutorials/multiphase/interFoam/laminar/waveExampleStokesV/system/decomposeParDict @@ -1,7 +1,7 @@ /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | +| \\ / O peration | Version: plus | | \\ / A nd | Web: www.OpenFOAM.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ @@ -19,11 +19,11 @@ numberOfSubdomains 2; method hierarchical; -hierarchicalCoeffs +coeffs { n (2 1 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/multiphase/interIsoFoam/damBreak/system/decomposeParDict b/tutorials/multiphase/interIsoFoam/damBreak/system/decomposeParDict index b2904624d351c464ff314a3e2e57f6dfde1176b9..a5c698cbb820137ca015f0fd5b990ada334710b4 100644 --- a/tutorials/multiphase/interIsoFoam/damBreak/system/decomposeParDict +++ b/tutorials/multiphase/interIsoFoam/damBreak/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n ( 2 2 1 ); - delta 0.001; -} - -hierarchicalCoeffs -{ - n ( 1 1 1 ); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/multiphase/interIsoFoam/discInReversedVortexFlow/system/decomposeParDict b/tutorials/multiphase/interIsoFoam/discInReversedVortexFlow/system/decomposeParDict index 70dd6defca7ea929fb855c912d35f28633bd8d49..bfec08236bf40a28008650857b5a955dfc9fee31 100644 --- a/tutorials/multiphase/interIsoFoam/discInReversedVortexFlow/system/decomposeParDict +++ b/tutorials/multiphase/interIsoFoam/discInReversedVortexFlow/system/decomposeParDict @@ -1,17 +1,15 @@ -/*---------------------------------------------------------------------------*\ +/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: plus | | \\ / A nd | Web: www.OpenFOAM.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ - FoamFile { version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } @@ -21,10 +19,10 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 1 2); - delta 0.001; + n (2 1 2); + //delta 0.001; // default=0.001 } // ************************************************************************* // diff --git a/tutorials/multiphase/interIsoFoam/sphereInReversedVortexFlow/system/decomposeParDict b/tutorials/multiphase/interIsoFoam/sphereInReversedVortexFlow/system/decomposeParDict index b8a6f06f4f58af0561a4a1d43652fbd6ba348b8c..16bd8f8975d32a5005f6c8729201b6138ead975a 100644 --- a/tutorials/multiphase/interIsoFoam/sphereInReversedVortexFlow/system/decomposeParDict +++ b/tutorials/multiphase/interIsoFoam/sphereInReversedVortexFlow/system/decomposeParDict @@ -1,31 +1,28 @@ -/*---------------------------------------------------------------------------*\ +/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: plus | +| \\ / O peration | Version: plus | | \\ / A nd | Web: www.OpenFOAM.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ - FoamFile { version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - numberOfSubdomains 8; method simple; -simpleCoeffs +coeffs { - n (2 2 2); - delta 0.001; + n (2 2 2); + //delta 0.001; // default=0.001 } // ************************************************************************* // diff --git a/tutorials/multiphase/interIsoFoam/standingWave/system/decomposeParDict b/tutorials/multiphase/interIsoFoam/standingWave/system/decomposeParDict index 28839d76e1c3259378a8a35330871cb3f7c06947..7ef82657522c4dbcfc91e4be1ea510e02f9ecc01 100644 --- a/tutorials/multiphase/interIsoFoam/standingWave/system/decomposeParDict +++ b/tutorials/multiphase/interIsoFoam/standingWave/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 1; method simple; -simpleCoeffs +coeffs { - n ( 2 1 2 ); - delta 0.001; -} - -hierarchicalCoeffs -{ - n ( 1 1 1 ); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 1 2); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/multiphase/interMixingFoam/laminar/damBreak/system/decomposeParDict b/tutorials/multiphase/interMixingFoam/laminar/damBreak/system/decomposeParDict index 61f7f8c0dd831d296986030ff9e8c44bf3540e2a..a5c698cbb820137ca015f0fd5b990ada334710b4 100644 --- a/tutorials/multiphase/interMixingFoam/laminar/damBreak/system/decomposeParDict +++ b/tutorials/multiphase/interMixingFoam/laminar/damBreak/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,11 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } distributed no; diff --git a/tutorials/multiphase/interPhaseChangeDyMFoam/propeller/system/decomposeParDict b/tutorials/multiphase/interPhaseChangeDyMFoam/propeller/system/decomposeParDict index 85ea74b3b7994d01f27d4fd5b7253b2581c3a013..dd28232901931cc5151baa9826227133a5998e96 100644 --- a/tutorials/multiphase/interPhaseChangeDyMFoam/propeller/system/decomposeParDict +++ b/tutorials/multiphase/interPhaseChangeDyMFoam/propeller/system/decomposeParDict @@ -19,11 +19,11 @@ numberOfSubdomains 4; method hierarchical; -hierarchicalCoeffs +coeffs { - n (1 4 1); - delta 0.001; - order xyz; + n (1 4 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } diff --git a/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/decomposeParDict b/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/decomposeParDict index 61f7f8c0dd831d296986030ff9e8c44bf3540e2a..52a9b4bbef1d32a6cead7071a1e6ce448cbb70f0 100644 --- a/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/decomposeParDict +++ b/tutorials/multiphase/interPhaseChangeFoam/cavitatingBullet/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,12 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } distributed no; diff --git a/tutorials/multiphase/multiphaseEulerFoam/damBreak4phase/system/decomposeParDict b/tutorials/multiphase/multiphaseEulerFoam/damBreak4phase/system/decomposeParDict index 61f7f8c0dd831d296986030ff9e8c44bf3540e2a..52a9b4bbef1d32a6cead7071a1e6ce448cbb70f0 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/damBreak4phase/system/decomposeParDict +++ b/tutorials/multiphase/multiphaseEulerFoam/damBreak4phase/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,12 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } distributed no; diff --git a/tutorials/multiphase/multiphaseEulerFoam/damBreak4phaseFine/system/decomposeParDict b/tutorials/multiphase/multiphaseEulerFoam/damBreak4phaseFine/system/decomposeParDict index 61f7f8c0dd831d296986030ff9e8c44bf3540e2a..52a9b4bbef1d32a6cead7071a1e6ce448cbb70f0 100644 --- a/tutorials/multiphase/multiphaseEulerFoam/damBreak4phaseFine/system/decomposeParDict +++ b/tutorials/multiphase/multiphaseEulerFoam/damBreak4phaseFine/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,12 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } distributed no; diff --git a/tutorials/multiphase/multiphaseInterDyMFoam/laminar/mixerVesselAMI2D/system/decomposeParDict b/tutorials/multiphase/multiphaseInterDyMFoam/laminar/mixerVesselAMI2D/system/decomposeParDict index 441b8bdbbb42b1fdb606b8f5be42a7ac0a22a3b2..a57967483dc6872a5c674b5be9ddff964267c235 100644 --- a/tutorials/multiphase/multiphaseInterDyMFoam/laminar/mixerVesselAMI2D/system/decomposeParDict +++ b/tutorials/multiphase/multiphaseInterDyMFoam/laminar/mixerVesselAMI2D/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/system/decomposeParDict b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/system/decomposeParDict index 61f7f8c0dd831d296986030ff9e8c44bf3540e2a..52a9b4bbef1d32a6cead7071a1e6ce448cbb70f0 100644 --- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/system/decomposeParDict +++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phase/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,12 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } distributed no; diff --git a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/system/decomposeParDict b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/system/decomposeParDict index 61f7f8c0dd831d296986030ff9e8c44bf3540e2a..52a9b4bbef1d32a6cead7071a1e6ce448cbb70f0 100644 --- a/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/system/decomposeParDict +++ b/tutorials/multiphase/multiphaseInterFoam/laminar/damBreak4phaseFine/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - location "system"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,22 +18,12 @@ numberOfSubdomains 4; method simple; -simpleCoeffs +coeffs { - n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (1 1 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile ""; + n (2 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile ""; } distributed no; diff --git a/tutorials/multiphase/overInterDyMFoam/floatingBody/background/system/decomposeParDict b/tutorials/multiphase/overInterDyMFoam/floatingBody/background/system/decomposeParDict index ede2181dfeeee7a102669796ed3d681ebe89b00d..415cda309aa944f386298d23cc12e32169f872b7 100644 --- a/tutorials/multiphase/overInterDyMFoam/floatingBody/background/system/decomposeParDict +++ b/tutorials/multiphase/overInterDyMFoam/floatingBody/background/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,11 +18,11 @@ numberOfSubdomains 4; method hierarchical; -hierarchicalCoeffs +coeffs { n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/RAS/bubbleColumnEvaporatingReacting/system/decomposeParDict b/tutorials/multiphase/reactingTwoPhaseEulerFoam/RAS/bubbleColumnEvaporatingReacting/system/decomposeParDict index df31c866a549ef1ecc8d135176e33fb22b99dadf..d2300c105f8399f515e194313664a54b93c6a595 100644 --- a/tutorials/multiphase/reactingTwoPhaseEulerFoam/RAS/bubbleColumnEvaporatingReacting/system/decomposeParDict +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/RAS/bubbleColumnEvaporatingReacting/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,11 +18,11 @@ numberOfSubdomains 6; method hierarchical; -hierarchicalCoeffs +coeffs { n (1 6 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/bubbleColumnEvaporating/system/decomposeParDict b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/bubbleColumnEvaporating/system/decomposeParDict index df31c866a549ef1ecc8d135176e33fb22b99dadf..d2300c105f8399f515e194313664a54b93c6a595 100644 --- a/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/bubbleColumnEvaporating/system/decomposeParDict +++ b/tutorials/multiphase/reactingTwoPhaseEulerFoam/laminar/bubbleColumnEvaporating/system/decomposeParDict @@ -10,7 +10,6 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; object decomposeParDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // @@ -19,11 +18,11 @@ numberOfSubdomains 6; method hierarchical; -hierarchicalCoeffs +coeffs { n (1 6 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy } // ************************************************************************* // diff --git a/tutorials/preProcessing/createZeroDirectory/motorBike/system/decomposeParDict b/tutorials/preProcessing/createZeroDirectory/motorBike/system/decomposeParDict index eb9bb3ad5e9eb308ebcceb21be97e305af2ea724..6836cf8888946495126761343c7d63cb102d9c46 100644 --- a/tutorials/preProcessing/createZeroDirectory/motorBike/system/decomposeParDict +++ b/tutorials/preProcessing/createZeroDirectory/motorBike/system/decomposeParDict @@ -20,22 +20,12 @@ numberOfSubdomains 6; method hierarchical; // method ptscotch; -simpleCoeffs +coeffs { - n (4 1 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (3 2 1); - delta 0.001; - order xyz; -} - -manualCoeffs -{ - dataFile "cellDecomposition"; + n (3 2 1); + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "cellDecomposition"; } diff --git a/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/bottomAir/decomposeParDict b/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/bottomAir/decomposeParDict index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..7263dc66d4ab81b8564c66f1ab7dfdeb659e9260 100644 --- a/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/bottomAir/decomposeParDict +++ b/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/bottomAir/decomposeParDict @@ -10,11 +10,8 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; @@ -27,17 +24,12 @@ method scotch; // method simple; // method manual; -simpleCoeffs +coeffs { n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "decompositionData"; } scotchCoeffs @@ -53,20 +45,4 @@ scotchCoeffs //strategy "b"; } -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - // ************************************************************************* // diff --git a/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/decomposeParDict b/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/decomposeParDict index 742a2495dfc905d4656c9dcbfdae184dd421e8de..747b5114b73dac97b0632688eea1e670ee4bbe30 100644 --- a/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/decomposeParDict +++ b/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/decomposeParDict @@ -10,11 +10,8 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; @@ -27,17 +24,12 @@ method hierarchical; // method simple; // method manual; -simpleCoeffs +coeffs { n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "decompositionData"; } scotchCoeffs @@ -53,20 +45,4 @@ scotchCoeffs //strategy "b"; } -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - // ************************************************************************* // diff --git a/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/heater/decomposeParDict b/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/heater/decomposeParDict index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..7263dc66d4ab81b8564c66f1ab7dfdeb659e9260 100644 --- a/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/heater/decomposeParDict +++ b/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/heater/decomposeParDict @@ -10,11 +10,8 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; @@ -27,17 +24,12 @@ method scotch; // method simple; // method manual; -simpleCoeffs +coeffs { n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "decompositionData"; } scotchCoeffs @@ -53,20 +45,4 @@ scotchCoeffs //strategy "b"; } -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - // ************************************************************************* // diff --git a/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/leftSolid/decomposeParDict b/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/leftSolid/decomposeParDict index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..7263dc66d4ab81b8564c66f1ab7dfdeb659e9260 100644 --- a/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/leftSolid/decomposeParDict +++ b/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/leftSolid/decomposeParDict @@ -10,11 +10,8 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; @@ -27,17 +24,12 @@ method scotch; // method simple; // method manual; -simpleCoeffs +coeffs { n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "decompositionData"; } scotchCoeffs @@ -53,20 +45,4 @@ scotchCoeffs //strategy "b"; } -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - // ************************************************************************* // diff --git a/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/rightSolid/decomposeParDict b/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/rightSolid/decomposeParDict index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..7263dc66d4ab81b8564c66f1ab7dfdeb659e9260 100644 --- a/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/rightSolid/decomposeParDict +++ b/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/rightSolid/decomposeParDict @@ -10,11 +10,8 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; @@ -27,17 +24,12 @@ method scotch; // method simple; // method manual; -simpleCoeffs +coeffs { n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "decompositionData"; } scotchCoeffs @@ -53,20 +45,4 @@ scotchCoeffs //strategy "b"; } -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - // ************************************************************************* // diff --git a/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/topAir/decomposeParDict b/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/topAir/decomposeParDict index 1a49f7a69bed1efebdb77131e1ec3ecd9c743fb0..7263dc66d4ab81b8564c66f1ab7dfdeb659e9260 100644 --- a/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/topAir/decomposeParDict +++ b/tutorials/preProcessing/createZeroDirectory/snappyMultiRegionHeater/system/topAir/decomposeParDict @@ -10,11 +10,8 @@ FoamFile version 2.0; format ascii; class dictionary; - note "mesh decomposition control dictionary"; - location "system"; object decomposeParDict; } - // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // numberOfSubdomains 4; @@ -27,17 +24,12 @@ method scotch; // method simple; // method manual; -simpleCoeffs +coeffs { n (2 2 1); - delta 0.001; -} - -hierarchicalCoeffs -{ - n (2 2 1); - delta 0.001; - order xyz; + //delta 0.001; // default=0.001 + //order xyz; // default=xzy + dataFile "decompositionData"; } scotchCoeffs @@ -53,20 +45,4 @@ scotchCoeffs //strategy "b"; } -manualCoeffs -{ - dataFile "decompositionData"; -} - - -//// Is the case distributed -//distributed yes; -//// Per slave (so nProcs-1 entries) the directory above the case. -//roots -//( -// "/tmp" -// "/tmp" -//); - - // ************************************************************************* //