|
[Sponsors] |
[mesh manipulation] stitchMesh: how to stitch two non-conformal patches? |
![]() |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
![]() |
![]() |
#1 |
New Member
Join Date: Jun 2020
Location: UK
Posts: 22
Rep Power: 6 ![]() |
Hi all,
Is there a way to utilize 'stitchMesh' to merge two non-conformal boundary patches shared between two regions into internal faces, without forming any new cells at the interface? For the sake of simplicity, as shown in attached images to this post, let's say I want to generate a mesh from two regions (part1 in blue, part2 in red), which are separated by non-conformal patches (part1_to_part2, and part2_to_part1). Obviously, I can't use '-perfect' flag since the patches are non-conformal (interface patches do not have equal number of faces). And, the two following commands do not result in the desired mesh (i.e. part1 is divided into some new (pyramid and prism) cells as shown in the attached image): HTML Code:
stitchMesh -partial part1_to_part2 part2_to_part1 -overwrite HTML Code:
stitchMesh part1_to_part2 part2_to_part1 -overwrite Any help or comments would be highly appreciated! Cheers Last edited by Rango; November 10, 2020 at 06:43. |
|
![]() |
![]() |
![]() |
![]() |
#2 |
Senior Member
Claudio Boezio
Join Date: May 2020
Location: Europe
Posts: 137
Rep Power: 7 ![]() |
Hello Rango,
The result in the image looks fine to me. How else would you like to have the mesh? Also, if I remember correctly, the -perfect flag of stitchMesh can be applied if the outer edges of two faces are identical, regardless of their internal cell subdivision. Maybe just double check to be sure. Cheers, Claudio |
|
![]() |
![]() |
![]() |
![]() |
#3 |
New Member
Join Date: Jun 2020
Location: UK
Posts: 22
Rep Power: 6 ![]() |
Hi Claudio,
Many thanks for the swift response. Sorry, I should have been more clear on the point that how I would like the final mesh to be! The ideal result for me would be a mesh consists of only hexahedra cells with neat cubical shape! In other words, I want 'stitchMesh' to just fuse the shared patches without forming any new arbitrary cells at the interface. Regarding the '-perfect' flag, I quote the message from 'stitchMesh' application: "Note: both patches need to align perfectly. Both the vertex positions and the face centres need to align to within a tolerance given by the minimum edge length on the patch" Last edited by Rango; November 10, 2020 at 15:57. |
|
![]() |
![]() |
![]() |
![]() |
#4 |
Senior Member
Claudio Boezio
Join Date: May 2020
Location: Europe
Posts: 137
Rep Power: 7 ![]() |
Hello Rango,
I think you're right about using the -partial option with stitchMesh. Regarding the creation of cells at the joining face, this depends on the geometry and cells already present. Please bear in mind, that every vertex on one patch needs a corresponding vertex on the other. The choice of master and slave patch will determine which one will be left unchanged and which will undergo adaptation to match the master vertices. Thus, if the vertices don't match already (perfect condition, as you correctly said), introduction of modified cells is inevitable. For this, hex cells will be converted to polyhedrons if additional vertices are needed on an edge, but they will have two ore more coplanar faces. That's what you get e.g. when doing mesh refinements at the transition between levels. In the picture you sent, you want to connect four faces to one. Instead of making a polyhedron with four coplanar faces, stitchMesh chose to make four wedges instead. I don't think there's a way to influence this and it depends on the faces configurations you want to join. If you have only one patch to merge, you can also try with blockMesh and mergePatchPairs and see if there's a difference. But for the reasons I explained, you probably will have to accept at least one row of non-cubical cells. Is there a particular reason why the cube shape is important? As long as you don't get non-ortho cells or other quality issues it shouldn't be a problem. Please let me know how it goes please, thanks. Cheers, Claudio |
|
![]() |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Gerhard Holzinger
Join Date: Feb 2012
Location: Austria
Posts: 341
Rep Power: 28 ![]() ![]() |
Quote:
checkMesh reports a polyhedral cell with 9 faces when I run the attached case. |
||
![]() |
![]() |
![]() |
![]() |
#6 | ||
New Member
Join Date: Jun 2020
Location: UK
Posts: 22
Rep Power: 6 ![]() |
Hi both,
Many thanks for your answers. Quote:
Quote:
Cheers |
|||
![]() |
![]() |
![]() |
![]() |
#7 |
New Member
Emre
Join Date: Sep 2020
Posts: 7
Rep Power: 5 ![]() |
unchecking decompose polyhedra option corrects this
|
|
![]() |
![]() |
![]() |
Tags |
non-conformal patches, stitchmesh |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Foam::error::PrintStack | almir | OpenFOAM Running, Solving & CFD | 92 | May 21, 2024 07:56 |
Problem using AMI | vinz | OpenFOAM Running, Solving & CFD | 298 | November 13, 2023 08:19 |
Possible bug with stitchMesh and cyclics in OpenFoam | Jack001 | OpenFOAM Pre-Processing | 0 | May 21, 2016 08:00 |
[mesh manipulation] Problem with stitchMesh: it does not work in meshes with several common patches | arnau1985 | OpenFOAM Meshing & Mesh Conversion | 2 | June 25, 2013 08:49 |
stitchMesh for uncongruent patches (stitch tolerance) | beugold | OpenFOAM | 0 | June 18, 2009 07:38 |