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/)
-   -   decomposePar problem: Cell 0contains face labels out of range (Again)) (https://www.cfd-online.com/Forums/openfoam-pre-processing/191897-decomposepar-problem-cell-0contains-face-labels-out-range-again.html)

limonegiallo August 23, 2017 13:39

decomposePar problem: Cell 0contains face labels out of range (Again))
 
5 Attachment(s)
Dear All,

When I run decomposePar I get the error message
Code:

Cell 0contains face labels out of range: 6(0 1 2 -1 -1 -1)
and I would really appreciate your help!

After the following procedure (via terminal):

Code:

1 Rename 0 folder 0.org   
2 < blockMesh >       
3 < surfaceFeatureExtract >
4 < decomposePar >           
5 < mpirun -np 4 snappyHexMesh -overwrite -parallel >   
6 < reconstructParMesh -constant -fullMatch  >
7 delete all processor folders           
8 delete folder 0           
9  rename folder 0.org to 0       
10 edit the constant/polymesh/boundary file  and remove all the references to patches created by blockMesh in Step2.
  Leave only the patches desired for the simulation to run.
  Edit the number at the top of the text file which shows how many patches are to be setup.
11 < decomposePar >

I get this error message when I run decomposePar:

Code:

/*---------------------------------------------------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  3.0.x                                |
|  \\  /    A nd          | Web:      www.OpenFOAM.org                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
Build  : 3.0.x-ac3f6c67e02f
Exec  : decomposePar
Date  : Aug 23 2017
Time  : 18:33:46
Host  : "rbalwmba80000.bas.roche.com"
PID    : 27296
Case  : /home/cfdemuser/CFDEM/CFDEMcoupling-PUBLIC-3.0.x/tutorials_LORETI/cfdemSolverPiso/ErgunTestMPI2b/CFD
nProcs : 1
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster
allowSystemOperations : Allowing user-supplied system call operations

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time



Decomposing mesh region0

Create mesh

Calculating distribution of cells
Selecting decompositionMethod simple

Finished decomposition in 3.31 s

Calculating original mesh data

Distributing cells to processors

Distributing faces to processors

Distributing points to processors

Constructing processor meshes


--> FOAM FATAL ERROR:
Cell 0contains face labels out of range: 6(0 1 2 -1 -1 -1) Max face index = 3526636

    From function polyMesh::polyMesh
(
    const IOobject&,
    const Xfer<pointField>&,
    const Xfer<faceList>&,
    const Xfer<cellList>&
)

    in file meshes/polyMesh/polyMesh.C at line 654.

FOAM aborting

#0  Foam::error::printStack(Foam::Ostream&) at ??:?
#1  Foam::error::abort() at ??:?
#2  Foam::polyMesh::polyMesh(Foam::IOobject  const&, Foam::Xfer<Foam::Field<Foam::Vector<double>  > > const&, Foam::Xfer<Foam::List<Foam::face> >  const&, Foam::Xfer<Foam::List<Foam::cell> > const&,  bool) at ??:?
#3  ? at ??:?
#4  ? at ??:?
#5  __libc_start_main in "/lib64/libc.so.6"
#6  ? at ??:?
Aborted (core dumped)

Additional Information: When I run mpirun -np 4 snappyHexMesh -overwrite -parallel the meshing Finishes without any errors (in = 976.01 s). Then I tried to check the mesh, with checkMesh -allGeometry -allTopology, I received this output:


Code:

/*---------------------------------------------------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  3.0.x                                |
|  \\  /    A nd          | Web:      www.OpenFOAM.org                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
Build  : 3.0.x-ac3f6c67e02f
Exec  : checkMesh -allGeometry -allTopology
Date  : Aug 23 2017
Time  : 18:50:33
Host  : "rbalwmba80000.bas.roche.com"
PID    : 29055
Case  : /home/cfdemuser/CFDEM/CFDEMcoupling-PUBLIC-3.0.x/tutorials_LORETI/cfdemSolverPiso/ErgunTestMPI2b/CFD
nProcs : 1
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster
allowSystemOperations : Allowing user-supplied system call operations

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time

Create polyMesh for time = 0

Enabling all (cell, face, edge, point) topology checks.

Enabling all geometry checks.

Time = 0

Mesh stats
    points:          5158977
    faces:            14082002
    internal faces:  13488393
    cells:            4502214
    faces per cell:  6.12374
    boundary patches: 3
    point zones:      0
    face zones:      0
    cell zones:      0

Overall number of cells of each type:
    hexahedra:    3904264
    prisms:        163980
    wedges:        0
    pyramids:      0
    tet wedges:    485
    tetrahedra:    0
    polyhedra:    433485
    Breakdown of polyhedra by number of faces:
        faces  number of cells
            4  77048
            5  56483
            6  53872
            7  628
            8  130
            9  186034
          12  53320
          15  5970

Checking topology...
 ****Problem with boundary patch 0 named wall of type wall. The patch  should start on face no 13488393 and the patch specifies 13503393.
Possibly consecutive patches have this same problem. Suppressing future warnings.
 ***Boundary definition is in error.
    Cell to face addressing OK.
    Point usage OK.
    Upper triangular ordering OK.
    Face vertices OK.
    Topological cell zip-up check OK.
  <<Number of faces with non-consecutive shared points: 11. This might indicate a problem.
  <<Writing 14 faces with non-standard edge connectivity to set edgeFaces
    Number of regions: 1 (OK).

Checking patch topology for multiply connected surfaces...
                  Patch    Faces  Points                  Surface topology Bounding box
                    wall  553691  635169  ok (non-closed singly  connected) (-0.0979907 -0.0979912 -6.86046e-09) (0.0980502 0.0979865  0.565054)
                  inlet    5918    6908  ok (non-closed singly  connected) (-0.0419709 -0.04207 -9.2327e-07) (0.0421114 0.0419902  0.00074498)
                  outlet    19000    21379  ok (non-closed singly  connected) (-0.0977539 -0.0974848 0.563514) (0.0979553 0.0976161  0.565111)

Checking geometry...
    Overall domain bounding box (-0.12 -0.12 -0.05) (0.12 0.12 0.65)
    Mesh has 3 geometric (non-empty/wedge) directions (1 1 1)
    Mesh has 3 solution (non-empty) directions (1 1 1)
    Boundary openness (3.90822e-16 4.03493e-17 -6.0453e-17) OK.
    Max cell openness = 4.9229e-16 OK.
    Max aspect ratio = 25.5492 OK.
    Minimum face area = 4.12223e-08. Maximum face area = 7.93287e-05.  Face area magnitudes OK.
    Min volume = 1.97545e-11. Max volume = 3.82669e-07.  Total volume = 0.0403192.  Cell volumes OK.
    Mesh non-orthogonality Max: 65 average: 15.041
    Non-orthogonality check OK.
    Face pyramids OK.
 ***Max skewness = 4.47871, 7 highly skew faces detected which may impair the quality of the results
  <<Writing 7 skew faces to set skewFaces
    Coupled point location match (average 0) OK.
#0  Foam::error::printStack(Foam::Ostream&) at ??:?
#1  Foam::sigSegv::sigHandler(int) at ??:?
#2  ? in "/lib64/libc.so.6"
#3  Foam::polyMeshTetDecomposition::checkFaceTets(Foam  ::polyMesh const&, double, bool, Foam::HashSet<int, Foam::Hash<int> >*) at ??:?
#4  ? at ??:?
#5  ? at ??:?
#6  __libc_start_main in "/lib64/libc.so.6"
#7  ? at ??:?
Segmentation fault (core dumped)

Here attached you can also find some relevant txt files as snappyHexMeshDict, blockMeshDict, boundary, faceZones and p.

It is a long time that I am trying to solve this problem and I am out of ideas.

Any suggestion ??

Best,
Limone

Antimony August 24, 2017 01:29

Hi,

This:

Quote:

10 edit the constant/polymesh/boundary file and remove all the references to patches created by blockMesh in Step2.
Leave only the patches desired for the simulation to run.
Edit the number at the top of the text file which shows how many patches are to be setup.
In my opinion, this is a very dangerous thing to do manually! What is the nFaces value for each of those patches? Is it 0?

If it is not 0, you should not remove the patches in the manner you have described. It essentially messes up with the numbering sequence for OF, which would most likely explain your error messages...

If you really need to remove those patches, you might have to look for a way so that OF itself does it for you. This helps to keep the numbering consistent in the way that OF will need it.

Hope this helps.

Cheers,
Antimony

limonegiallo August 24, 2017 11:40

Hi Antimony,

I performed the same process again, but skipping the step 10 (therefore I did not edit the constant/polymesh/boundary file):


Code:

1 Rename 0 folder 0.org   
2 < blockMesh >       
3 < surfaceFeatureExtract >
4 < decomposePar >           
5 < mpirun -np 4 snappyHexMesh -overwrite -parallel >   
6 < reconstructParMesh -constant -fullMatch  >
7 delete all processor folders           
8 delete folder 0           
9  rename folder 0.org to 0       
10 edit the constant/polymesh/boundary file  and remove all the references to patches created by blockMesh in Step2.
  Leave only the patches desired for the simulation to run.
  Edit the number at the top of the text file which shows how many patches are to be setup.
11 < decomposePar >

It works if I leave all the patches created by blockMesh. But I need to get rid of them. Which tool can I use to delete those patches ?

Best,
Limone

Antimony August 24, 2017 21:26

Hi,

I don't quite see why you would need to delete out the patches created in blockMesh, at least after snappy has completed.

Depending on how you defined your locationInMesh point in snappy, it would decide which regions to keep. So I would assume that your current locationInMesh point is somewhere within the blockMesh but outside the geometry that you specify in snappy.

To the best of my knowledge, if I have had to remove any extra patches, it meant that my geometry/mesh was not defined correctly. You might want to check on that.

Unfortunately, I do not know of any tool to remove patches in OF.

Cheers,
Antimony

limonegiallo August 28, 2017 05:18

Thank you very much Antimony!

I will check locationInMesh as you suggested! Thank you!

Limone


All times are GMT -4. The time now is 11:35.