CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Community Contributions (https://www.cfd-online.com/Forums/openfoam-community-contributions/)
-   -   [cfMesh] cfMesh - How to reconstruct after running using mpi (https://www.cfd-online.com/Forums/openfoam-community-contributions/214866-cfmesh-how-reconstruct-after-running-using-mpi.html)

schuyler February 15, 2019 15:05

cfMesh - How to reconstruct after running using mpi
 
Hello!

I have been using cfMesh for a very long time with tons of success. Recently I have been trying to experiment with deploying it onto my cluster. I am running cfMesh with OpenFOAM-1806.

From the manual, and a few forum entries, I gathered that I should run it like (this test was on two 4-core remote computers):

Code:

preparePar
mpirun -np 8 -hostfile machines -x FOAM_SETTINGS ~/OpenFOAM/OpenFOAM-v1806/bin/foamExec cartesianMesh -parallel

This runs without problem. However, then I don't know how to recombine it! The execution doesn't do it automatically, as I had first suspected it would. I have tried reconstructParMesh -constant and it gives the following error:

Code:

Reading points from "8Core_0.25MeshSize/processor0" for time = constant

Reading points from "8Core_0.25MeshSize/processor1" for time = constant

Reading points from "8Core_0.25MeshSize/processor2" for time = constant

Reading points from "8Core_0.25MeshSize/processor3" for time = constant

Reading points from "8Core_0.25MeshSize/processor4" for time = constant

Reading points from "8Core_0.25MeshSize/processor5" for time = constant

Reading points from "8Core_0.25MeshSize/processor6" for time = constant

Reading points from "8Core_0.25MeshSize/processor7" for time = constant

Overall mesh bounding box  : (-0.00257379658 -0.00374847875 -12.8007856) (24.9997 3.00000102 27.2012334)
Relative tolerance        : 1e-07
Absolute matching distance : 4.72683587e-06

Merging mesh 0 with 1


--> FOAM FATAL ERROR:
Perfect match specified but number of master and slave faces differ.
master:215  slave:0

    From function Foam::faceCoupleInfo::faceCoupleInfo(const Foam::polyMesh&, const labelList&, const Foam::polyMesh&, const labelList&, Foam::scalar, bool, bool, bool)
    in file polyMeshAdder/faceCoupleInfo.C at line 2037.

FOAM aborting

am I missing something simple? I operate OpenFOAM in parallel on my cluster all the time, and use cfMesh all the time on my desktop. But this is the first i've tried running cfMesh remotely on the cluster nodes (since I plan to do some relatively large scale optimization).

Thanks in advance!

Schuyler

akashpatel95 May 15, 2019 11:27

Generally, you will have to use a utility called "reconstructParMesh". It combines mesh from all processors for you.

T. J. P. November 13, 2019 04:16

I ran into the same problem, for me "reconstructParMesh -constant -fullMatch " worked.


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