|
[Sponsors] |
running rhoCentralFoam in parallel: cannot find patchField entry for procBoundary |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
June 3, 2016, 13:45 |
running rhoCentralFoam in parallel: cannot find patchField entry for procBoundary
|
#1 |
New Member
Henry
Join Date: May 2016
Posts: 15
Rep Power: 10 |
Hi,
I'm fairly new to OpenFOAM and am trying to run the rhoCentralFoam solver in parallel (with 8 processors). I keep getting the following error: "--> FOAM FATAL IO ERROR: Cannot find patchField entry for procBoundary0to3 file: home/mpiuser/OpenFOAM/mpiuser-3.0.1/run/henry/rhoCentralTest/processor0/0/p.boundaryField from line 25 to line 58. From function GeometricField<Type, PatchField, GeoMesh>::GeometricBoundaryField::readField(const DimensionedField<Type, GeoMesh&, const dictionary&) in file /home/openfoam/OpenFOAM/OpenFOAM-3.0.1/src/OpenFOAM/lnInclude/GeometricBoundaryField.C at line 209 FOAM parallel run exiting" I have tried creating placeholder procBoundary entries in the 0/p, 0/T and 0/U files inside the boundaryField dictionary in each of those files: boundaryField { inlet { type fixedValue; value uniform (100 0 0); } ... there are other patch entries here procBoundary0to1 // this is what I tried to add (for each processor to processor connection) { type processor; } } The error I get when I do this, however, is even more complicated and unintelligible. I feel like I am missing something simple. Is there a file or dictionary entry missing somewhere that is required for a rhoCentralFoam parallel run? Thanks, Henry |
|
June 29, 2016, 11:09 |
Solved
|
#2 |
New Member
Henry
Join Date: May 2016
Posts: 15
Rep Power: 10 |
Sometimes we miss stupid things: this is solved with a simple
"#include $WM_PROJECT_DIR/etc/caseDicts/setConstraintTypes" statement in each of the 0/* files. |
|
December 7, 2020, 11:30 |
|
#3 |
New Member
Join Date: Dec 2020
Posts: 1
Rep Power: 0 |
The patch that you entered is the correct fix.
Except that you put in 'procBoundary0to1' instead of 'procBoundary0to3'. Just add the following to your p file: procBoundary0to3 { type processor; value uniform 0; } If the error occurs for u or k the text against the 'value' string will need to be different. |
|
March 27, 2024, 02:39 |
need help for "Cannot find patchField entry for . . ."
|
#4 |
New Member
Amirreza
Join Date: Mar 2020
Posts: 17
Rep Power: 6 |
Hi everyone
I'm inexperienced to Parallel run in OF. I follow these commands: 1- blockMesh 2- surfaceFeatureExtract 3- decomposePar (with scotch method) 4- foamJob -pararllel -screen snappyHexMesh -overwrite 5- reconstructParMesh 6- foamJob -pararllel simpleFoam in this stage I keep getting this error: ( this is part of the error and I've attached the complete log.txt file) Code:
[0] --> FOAM FATAL IO ERROR: (openfoam-2312) [0] Cannot find patchField entry for buildings [0] [0] file: processor0/0/p/boundaryField at line 27 to 83. [0] [0] From void Foam::GeometricBoundaryField<Type, PatchField, GeoMesh>::readField(const Foam::DimensionedField<TypeR, GeoMesh>&, const Foam::dictionary&) [with Type = double; PatchField = Foam::fvPatchField; GeoMesh = Foam::volMesh] [0] in file ./src/OpenFOAM/lnInclude/GeometricBoundaryField.C at line 330. I dont know how to get rode pf this error!! |
|
March 27, 2024, 04:02 |
|
#5 |
Senior Member
Yann
Join Date: Apr 2012
Location: France
Posts: 1,193
Rep Power: 27 |
Hello,
Check these posts and see if it helps to find the issue. "Cannot find patchField entry for allBoundary" - when setting two inlets in interFoam Cannot find patchField entry for motorBike Regards, Yann |
|
March 27, 2024, 05:59 |
|
#6 | |
New Member
Amirreza
Join Date: Mar 2020
Posts: 17
Rep Power: 6 |
Quote:
Thanks Dear Yann I saw the posts and they were useful, the question is why this is happening? it's not reasonable to change 0 folder foe each processor before parallel running. what's your idea? |
||
March 27, 2024, 07:11 |
|
#7 |
Senior Member
Yann
Join Date: Apr 2012
Location: France
Posts: 1,193
Rep Power: 27 |
It is happening because decomposePar decomposes only the patches existing in the mesh.
When meshing in parallel, you decompose the initial mesh created with blockMesh, so the patches related to the geometry do not exist yet (as it will be created by snappy) and decomposePar removes it from the 0 directory. You can avoid it using decomposePar with the -copyZero option, it will just copy the 0 directory into the processors directories without altering the files. If you do so, you will need to have this line defined in all the files files in 0 directory: Code:
boundaryField { #includeEtc "caseDicts/setConstraintTypes" // Your own boundary conditions setup here } Yann |
|
Tags |
parallel compressible, parallel error, patchfield, processor boundary, rhocentralfoam |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[ANSYS Meshing] Help with element size | sandri_92 | ANSYS Meshing & Geometry | 14 | November 14, 2018 08:54 |
fluent divergence for no reason | sufjanst | FLUENT | 2 | March 23, 2016 17:08 |
Parallel Running With Problems | guilha | OpenFOAM Running, Solving & CFD | 1 | July 26, 2014 11:55 |
multiphase solver - parallel processing - GAMG | thibault_pringuey | OpenFOAM Programming & Development | 2 | August 27, 2013 23:03 |
[solidMechanics] Running contactStressFoam in Parallel | Hisham | OpenFOAM CC Toolkits for Fluid-Structure Interaction | 2 | October 16, 2012 11:34 |