|
[Sponsors] |
matching error in cyclic patches in spite of having same number of faces |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
March 5, 2022, 11:50 |
matching error in cyclic patches in spite of having same number of faces
|
#1 |
Senior Member
Join Date: Jun 2020
Posts: 100
Rep Power: 6 |
Hello All
I have created a mesh using .stl files. First, background mesh is created with blockMesh utility and then snappyHexMesh is performed to cut it as per the .stl files (desired geometry). After this operation, the created mesh has default wall type boundary for all faces. I want to assign cyclic bounadries to front and back and inelt and outlet as well. To do this I use createPatch utility. While doing so, i get the cyclic patches assigned to front and back faces without any problem. strangly, it gives error for inlet outlet. The number of faces in inlet and outlet are exactly the same. after getting the desired mesh (after blockMesh and snappyHexMesh), i also had checked the mesh quality using checkMesh utility, everything seems to be okay. When createPatch is run, i get the long error as below (last part shown below): Code:
--> FOAM FATAL ERROR: face 0 area does not match neighbour by 96.6108% -- possible face ordering problem. patch:inlet_ my area:8.122e-05 neighbour area:2.83107e-05 matching tolerance:0.0001 Mesh face:31261 fc:(-0.0498982 0.104129 0.00738434) Neighbour fc:(0.199914 0.101089 0.0108835) If you are certain your matching is correct you can increase the 'matchTolerance' setting in the patch dictionary in the boundary file. Rerun with cyclic debug flag set for more information. From function void Foam::cyclicPolyPatch::calcTransforms(const primitivePatch&, const pointField&, const vectorField&, const pointField&, const vectorField&) in file meshes/polyMesh/polyPatches/constraint/cyclic/cyclicPolyPatch.C at line 212. FOAM exiting PS:I have shown inlet and outlet part of constant/polyMesh/boundary and createPatchDict files below: boundary: Code:
inlet { type wall; inGroups 1(wall); nFaces 369; startFace 31095; } outlet { type wall; inGroups 1(wall); nFaces 369; startFace 31464; } Code:
{ name inlet_; patchInfo { //type patch; type cyclic; neighbourPatch outlet_; } constructFrom patches; patches (inlet); } { name outlet_; patchInfo { type cyclic; neighbourPatch inlet_; } constructFrom patches; patches (outlet); } Atul |
|
March 11, 2022, 11:25 |
surfaceFeatureExtract leads to this behaviour, but why?
|
#2 | |||
Senior Member
Join Date: Jun 2020
Posts: 100
Rep Power: 6 |
Update:
I played a bit with snappyHexMeshDict and found out that this matching error occurs when surfaceFeatureEctract utility is activated in snappyHexMeshDict and as the level of edge refinement goes up, this matching error increases. I found this behaviour by doing following: trial 1- when I comment out the surfaceFeatureExtract section (feartures) in snappyHexMesh, I get the get mesh generated without any error and I can assign cyclic patches to desired boundary patches but as seen in the image attached (figure 1) edges are not captured properly. trail 2- This time I activate the surfaceFeatireExtract utility so that all the edges are captured properly. I keep the resolution same as that of my background mesh for all the edges (level 0) and repeat the procedure. blockMesh>surfaceFeatureExract>snappyHexMesh>creat ePatch This also creates mesh without any error (till snappyHexMesh) but when createPatch is called i get this matching error problem: Quote:
trial 3-furthermore, i increase the level refinement (level 1) in surfaceFeatureExtract section in snappyHexMeshDict and repeat the procedure again. what is intersting here that after snappyHexMesh execution I get some illegal cells which was not observed in previous two trials. end of log file says: Quote:
Quote:
Now the question remains unsolved, why this matching error between cyclic patches and matching error grows as refinement? Any experience and comment? Best Regards Atul |
||||
March 20, 2022, 10:41 |
Help: mathcing error when edges are extrated
|
#3 |
Senior Member
Join Date: Jun 2020
Posts: 100
Rep Power: 6 |
Hello Community
I am still struggling to figure it out. Why I am getting matching error between cyclic patches when feature of extracting edges are used in snappyHexMesh. When edges are not extracted, I dont get any matching error. Has someone faced similar problem before and help tyo to resolve the issue. Best Regards Atul |
|
August 12, 2022, 08:47 |
|
#4 |
New Member
无
Join Date: Jul 2022
Posts: 8
Rep Power: 4 |
Did you solve this problem please? I seem to have the same problem now. My operation steps are the same as yours: blockMesh, snappyHexmesh, createPatch, there is a mismatch problem, or cannot find the target surface and source surface ?
I have spent a lot of time on this issue and sincerely seek your help |
|
June 9, 2023, 04:00 |
|
#5 |
New Member
Join Date: Feb 2023
Posts: 2
Rep Power: 0 |
Also, I am facing a problem in matching the cyclic patch
please can you help me to solve it I am requesting you to help me ,I HAVE ONLY THREE DAYS TO SUBMIT MY REPORT --> FOAM FATAL ERROR: (openfoam-2012) face 0 area does not match neighbour by 88.5827% -- possible face ordering problem. patch:sd1 my area:5.86947e-07 neighbour area:1.52026e-06 matching tolerance:0.0001 Mesh face:3981 fc-0.0195852 -0.0226536 0.0045) Neighbour fc-0.0125116 -0.0431727 0.0035) If you are certain your matching is correct you can increase the 'matchTolerance' setting in the patch dictionary in the boundary file. Rerun with cyclic debug flag set for more information. From void Foam::cyclicPolyPatch::calcTransforms(const primitivePatch&, const pointField&, const vectorField&, const pointField&, const vectorField&) in file meshes/polyMesh/polyPatches/constraint/cyclic/cyclicPolyPatch.C at line 215. FOAM exiting |
|
June 12, 2023, 05:05 |
|
#6 |
Senior Member
Join Date: Jun 2020
Posts: 100
Rep Power: 6 |
Hi Waleed
I do not remember exactly how I solved the problem. I played with different keywords and values. For me (as far as I remember), what worked was to increase the match tolerance. From your post, I also see that OpenFOAM suggests you to increase the matchTolerance, if you are certain what are you doing is correct. Try it with 0.001 and once the mesh is done check your mesh with "checkMesh" utility, it will point out details about the mesh quality. Then you can take the decision if the mesh is good enough for simulations. Best Regards Atul |
|
August 20, 2023, 22:15 |
|
#7 |
New Member
Tom O
Join Date: Mar 2022
Posts: 4
Rep Power: 4 |
Hello Atul
I also faced this problem about "does not match neighbour" when I generated mesh using ICEM CFD. Increasing the match tolerance is a solution, and after this we can decomposePar our mesh to calc, but initially we must ensure good mesh quality. For example, my checkMesh is OK when I make my the value of match tolerance from 0.0001 to 5. Good Luck OYYO |
|
Tags |
createpatch, cyclic boundaries, matching error |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Decomposing error simple method | DanGode | OpenFOAM Pre-Processing | 1 | July 27, 2021 07:58 |
Boundary condition problem (Freestream) | KAYANO | OpenFOAM Running, Solving & CFD | 5 | June 1, 2021 06:57 |
[snappyHexMesh] snappyHexMesh stuck when snap is turned on | yukuns | OpenFOAM Meshing & Mesh Conversion | 3 | February 2, 2021 14:05 |
GenerateVolumeMesh Error - Surface Wrapper Self Interacting (?) | AndreP | STAR-CCM+ | 10 | August 2, 2018 08:48 |
[snappyHexMesh] No layers in a small gap | bobburnquist | OpenFOAM Meshing & Mesh Conversion | 6 | August 26, 2015 10:38 |