View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0003447||OpenFOAM||Bug||public||2020-02-08 00:17||2020-02-11 13:54|
|Fixed in Version||dev|
|Summary||0003447: Cyclic patches generation malfunctions in certain situations|
|Description||Cells and faces are misaligned after createPatch in unclear specific situations. |
I couldn't trace the problem to specific source, but my guess is that something is wrong with ordering stage of cyclic patch creation.
|Steps To Reproduce||Case is attached. Polymesh is tetrahedral, converted from gmsh and initially valid (both checkMesh, visual examination and testing case without cyclic boundary conditions). It has two identical patches with 18 degrees rotation around (0,0,1) axis - placed such that rotation is identical to reflection relative to plane x=0. That way it is easy to check .obj with coupled cells, as thet should differ only in sign of y coordinate. |
a) Launch 'createPatch -overwrite' using pretty standard createPatchDict with 18 degrees rotation around (0,0,1) axis and pointSync false;
No errors are immediately reported, but now checkMesh reports severely bad mesh. Manual examination of coupled points shows serious displacement of corresponding points. The flow entering one cyclic boundary as a single jet comes from multiple locations through another side.
b) Launch 'createPatch' without other options. Same result.
c) Launch 'createPatch' without specifying exact transformation parameters (rotationAngle etc.). Same result.
d) Launch 'createPatch' with pointSync true; throws an error before writing final coupling
'The distance between the centre of patch cyc_half0 and the transformed centre of patch cyc_half1 is 0.286011.
This is greater than the match tolerance of 3.16228e-06 for the patch.'
Checking initial .obj file shows that transformation is still incorrect.
|Additional Information||Surprisingly, in tutorials that use cyclic and cyclicAMI patch types, rotation and translation I was unable to reproduce the problem. Both native specification in blockMesh and through createPatch work well. I've checked mixer from SRFSimpleFoam, pipeCyclic for simpleFoam and planarCouette for pimpleFoam. The differences to my case are: using blockMesh vs external mesher; hence hexahedral structured mesh vs tetrahedral. |
In OpenFOAM-7 the same case used to work well; so, it is safe to suppose this problem originates from recent overhaul of coupledPatches and related transformation stuff.
|Tags||No tags attached.|
Test_cyclic.tar.xz (1,180,764 bytes)
Thanks for report the difference between v7 and v6.
People will be careaful use cratePatch in their work.
||BTW, probably the problem has common root with that https://bugs.openfoam.org/view.php?id=3445 as they both contain cyclic patches with rotation and unstrustured mesh|
||Thanks for the report. Fixed by https://github.com/OpenFOAM/OpenFOAM-dev/commit/ba8e1ecd2d9151681e29016f5ac043409e68da4d.|
|2020-02-08 00:17||a_malin||New Issue|
|2020-02-08 00:17||a_malin||File Added: Test_cyclic.tar.xz|
|2020-02-08 20:44||openfoam_ran||Note Added: 0011151|
|2020-02-09 15:58||a_malin||Note Added: 0011162|
|2020-02-11 13:54||will||Assigned To||=> will|
|2020-02-11 13:54||will||Status||new => resolved|
|2020-02-11 13:54||will||Resolution||open => fixed|
|2020-02-11 13:54||will||Fixed in Version||=> dev|
|2020-02-11 13:54||will||Note Added: 0011168|