ENH: region-wise decomposition specification for decomposeParDict

Within decomposeParDict, it is now possible to specify a different
  decomposition method, methods coefficients or number of subdomains
  for each region individually.

  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.

  Any optional method coefficients can be specified in a general
  "coeffs" entry or a method-specific one, eg "metisCoeffs".

  For multiLevel, only the method-specific "multiLevelCoeffs" dictionary
  is used, and is also mandatory.

----

ENH: shortcut specification for multiLevel.

  In addition to the longer dictionary form, it is also possible to
  use a shorter notation for multiLevel decomposition when the same
  decomposition method applies to each level.
This commit is contained in:
Mark Olesen
2017-11-09 12:30:24 +01:00
parent 69ea4976ac
commit a9ffcab5af
211 changed files with 2416 additions and 3933 deletions

View File

@ -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 ( );
// ************************************************************************* //

View File

@ -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 ( );
// ************************************************************************* //

View File

@ -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 ( );
// ************************************************************************* //

View File

@ -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 ( );
// ************************************************************************* //

View File

@ -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
#------------------------------------------------------------------------------

View File

@ -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 ( );
// ************************************************************************* //

View File

@ -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;

View File

@ -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";
}

View File

@ -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
}

View File

@ -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
}

View File

@ -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 "";
}
// ************************************************************************* //

View File

@ -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 ( );

View File

@ -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";
}