CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Pre-Processing (https://www.cfd-online.com/Forums/openfoam-pre-processing/)
-   -   Scotch decomposition error (https://www.cfd-online.com/Forums/openfoam-pre-processing/224603-scotch-decomposition-error.html)

KokuraCloud February 26, 2020 06:51

Scotch decomposition error
 
Hello everyone,

I've been trying to decompose my 2-D Mesh using scotch.
Unfortunately every cell gets distributed to the same processor 0.
The remaining 3 processors wont get any cells.

Did this happen to anyone else? I'd appreciate any kind of help. :)

- Mirko

Code:

Calculating distribution of cells
Selecting decompositionMethod scotch

Finished decomposition in 0.01 s

Calculating original mesh data

Distributing cells to processors

Distributing faces to processors

Distributing points to processors

Constructing processor meshes

Processor 0
    Number of cells = 14400
    Number of processor patches = 0
    Number of processor faces = 0
    Number of boundary faces = 29820

Processor 1
    Number of cells = 0
    Number of processor patches = 0
    Number of processor faces = 0
    Number of boundary faces = 0

Processor 2
    Number of cells = 0
    Number of processor patches = 0
    Number of processor faces = 0
    Number of boundary faces = 0

Processor 3
    Number of cells = 0
    Number of processor patches = 0
    Number of processor faces = 0
    Number of boundary faces = 0

Number of processor faces = 0
Max number of cells = 14400 (300% above average 3600)
Max number of processor patches = 0 (-100% above average 1)
Max number of faces between processors = 0 (-100% above average 1)

Time = 0

Processor 0: field transfer
Processor 1: field transfer
--> FOAM Warning :
    From function Foam::polyMesh::polyMesh(const Foam::IOobject&)
    in file meshes/polyMesh/polyMesh.C at line 330
    no points in mesh
--> FOAM Warning :
    From function Foam::polyMesh::polyMesh(const Foam::IOobject&)
    in file meshes/polyMesh/polyMesh.C at line 335
    no cells in mesh
Processor 2: field transfer
--> FOAM Warning :
    From function Foam::polyMesh::polyMesh(const Foam::IOobject&)
    in file meshes/polyMesh/polyMesh.C at line 330
    no points in mesh
--> FOAM Warning :
    From function Foam::polyMesh::polyMesh(const Foam::IOobject&)
    in file meshes/polyMesh/polyMesh.C at line 335
    no cells in mesh
Processor 3: field transfer
--> FOAM Warning :
    From function Foam::polyMesh::polyMesh(const Foam::IOobject&)
    in file meshes/polyMesh/polyMesh.C at line 330
    no points in mesh
--> FOAM Warning :
    From function Foam::polyMesh::polyMesh(const Foam::IOobject&)
    in file meshes/polyMesh/polyMesh.C at line 335
    no cells in mesh

Code:

numberOfSubdomains 4;

method        scotch;

scotchCoeffs
{
  processorWeights
  (
      1
      1
      1
      1
  );

}

manualCoeffs
{
    dataFile    "cellDist";
}

simpleCoeffs
{
    n          (2 2 1);
    delta    0.001;
}

distributed    no;

roots          ( );


louisgag April 7, 2020 02:46

Hi,
I assume you didn't get a reply because there is not enough information to see an "error" in your input files... Did you solve it? Otherwise you may want to share your full decomposeParDict...

agustinvo April 7, 2020 15:36

Hi,


I found the same error in OpenFOAM-7.


This is my decomposeParDict:
Code:

/*--------------------------------*- C++ -*----------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  2.3.0                                |
|  \\  /    A nd          | Web:      www.OpenFOAM.org                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version    2.0;
    format      ascii;
    class      dictionary;
    object      decomposeParDict;
}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

numberOfSubdomains 4;

method          scotch;

// ************************************************************************* //

Code:

Decomposing mesh region0

Create mesh

Calculating distribution of cells
 Foam::decompositionMethod::New
{
    numberOfSubdomains 4;
    method          scotch;
}

Selecting decompositionMethod scotch

Finished decomposition in 0.1 s

Calculating original mesh data

Distributing cells to processors

Distributing faces to processors

Distributing points to processors

Constructing processor meshes

Processor 0
    Number of cells = 147456
    Number of processor patches = 0
    Number of processor faces = 0
    Number of boundary faces = 297248

Processor 1
    Number of cells = 0
    Number of processor patches = 0
    Number of processor faces = 0
    Number of boundary faces = 0

Processor 2
    Number of cells = 0
    Number of processor patches = 0
    Number of processor faces = 0
    Number of boundary faces = 0

Processor 3
    Number of cells = 0
    Number of processor patches = 0
    Number of processor faces = 0
    Number of boundary faces = 0

Number of processor faces = 0
Max number of cells = 147456 (300% above average 36864)
Max number of processor patches = 0 (-100% above average 1)
Max number of faces between processors = 0 (-100% above average 1)

Time = 0

Processor 0: field transfer
Processor 1: field transfer
--> FOAM Warning :
    From function Foam::polyMesh::polyMesh(const Foam::IOobject&)
    in file meshes/polyMesh/polyMesh.C at line 332
    no points in mesh
--> FOAM Warning :
    From function Foam::polyMesh::polyMesh(const Foam::IOobject&)
    in file meshes/polyMesh/polyMesh.C at line 337
    no cells in mesh
Processor 2: field transfer
--> FOAM Warning :
    From function Foam::polyMesh::polyMesh(const Foam::IOobject&)
    in file meshes/polyMesh/polyMesh.C at line 332
    no points in mesh
--> FOAM Warning :
    From function Foam::polyMesh::polyMesh(const Foam::IOobject&)
    in file meshes/polyMesh/polyMesh.C at line 337
    no cells in mesh
Processor 3: field transfer
--> FOAM Warning :
    From function Foam::polyMesh::polyMesh(const Foam::IOobject&)
    in file meshes/polyMesh/polyMesh.C at line 332
    no points in mesh
--> FOAM Warning :
    From function Foam::polyMesh::polyMesh(const Foam::IOobject&)
    in file meshes/polyMesh/polyMesh.C at line 337
    no cells in mesh

End


Have you found any solution?

joshmccraney July 1, 2020 18:03

Here's what my decomposeParDict looks like for 16 cores and it runs fine:

Code:

numberOfSubdomains 16;

method          scotch;

simpleCoeffs
{
    n              ( 4 4 1 );
    delta          0.001;
}

hierarchicalCoeffs
{
    n              ( 1 1 1 );
    delta          0.001;
    order          xyz;
}

scotchCoeffs
{
    processorWeights ( 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 );
}

metisCoeffs
{
    processorWeights ( 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 );
}

manualCoeffs
{
    dataFile        "";
}

distributed    no;

roots          ( );


SonnyD July 9, 2021 04:52

Hi guys, did you solve that issue? I'm getting the same errors in my decomposition. Never had that before while I used the ESI-Versions (v1906, v1912, v2006) of OF. Now that I changed to the foundation version (v7) I get this error:

"Processor 47: field transfer
--> FOAM Warning :
From function Foam::polyMesh::polyMesh(const Foam::IOobject&)
in file meshes/polyMesh/polyMesh.C at line 332
no points in mesh"


...for multiple processors in my decomposePar-log.
I checked my whole geometry many times, but I couldn't see anything getting wrong.
Does anyone have any suggestions or already solved that issue?


I just used method simple for decomposition of a 2D-mesh on 48 cores with simpleCoeffs: n (4 12 1) and delta 0.001.

louisgag July 10, 2021 22:29

I've seen errors happen for simple/hierarchical if you have much more cells in the center of your domain as on the edges, but I haven't identified the source of the more general 0 cells problem. You can try the tips of Mark Olesen: https://www.cfd-online.com/Forums/op...tml#post794214

SonnyD July 12, 2021 02:49

Hello Louis,


thanks for your fast reply!
I think i just managed this issue. Somehow the cht-Solver of the foundation-version has a problem by using simple method. I just needed to change to hierarchial, which is almost the same. I couldn't imagine before, that simple method was the problem, because it is the most common used and easiest method.

Well.. changing versions is not that trivial anymore it seems :D.


But thank you again for your advice :).


All times are GMT -4. The time now is 17:03.