CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Meshing & Mesh Conversion

[Salome] Cleaning up geometry in order to avoid "impossible to mesh periodic surface" error

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   April 21, 2021, 13:11
Default Cleaning up geometry in order to avoid "impossible to mesh periodic surface" error
  #1
Member
 
Adam
Join Date: Nov 2018
Posts: 36
Rep Power: 8
Adam_K is on a distinguished road
Hello,

When meshing in gmsh I get the error "Impossible to mesh periodic surface 143" and then as a consequence there are "No elements in volume 1". I have reported this as a gmsh issue, and Christophe Geuzaine suggested that I try using Salome's healing routines. My geo and brep files can be found at the above link.

Overall, my goal here is to generate a mesh of the spacing between the particles in a porous powder compact and then simulate the diffusion across the film. The contact points between particles generally leads to very low quality meshes. One of the global solutions is the simply shrink all the particles by a few percent. The meshing + simulation work fine when I do that. I would like to try a local method of using an inflated version of a particle as a boolean tool to cut its neighbors, leaving a small gap between the particles. More details can be found in this paper.

I have narrowed an example of my problem down to a specific pair of spheres, where an inflated version of the small sphere is used as a Boolean tool to remove a portion of the larger sphere. Note that this specific pair is problematic when I apply a 5 mm inflation and cut, for other values the problem surface may be elsewhere.



Code:
x = (0.122353, 0.155428)
y = (0.104232, 0.104217)
z = (0.761678, 0.799164)
R= (0.04, 0.01)
outerBox = geompy.MakeBox(0.1,0.1,0.75,0.2,0.15,0.85)
When I zoom in closely to the surface that can't be meshed I can see that there are some problematic elements. Ideally I could simply combine/merge all curves that are shorter than my mesh critical length.



I have had success with Salome's commands for removing extra edges in the isolated/two particle mesh.

Code:
poreRepair =  geompy.RemoveExtraEdges(poreSpace,True)
poreRepair =  geompy.RemoveExtraEdges(poreSpace,False)
However, if I apply them to the full case of hundreds of particles, then many of the legitimate edges are removed and the final result is pretty horrendous (the BREP file goes from 4 MB to 500 KB and can't be meshed properly). I feel like I could manually find the problematic pairs, then shift one of the particles by 0.5 mm just to avoid having the pairs of surfaces in the unlucky configuration. However, this would be quite tedious as I would like to automate the process in able to automate geometry generation/meshing/simulation/analysis.

Does anyone have any suggestions about how to clean up my geometry in Salome, either before or after it's exported as a BREP file?
Adam_K is offline   Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
[OpenFOAM] ParaView command in Foam-extend-4.1 mitu_94 ParaView 0 March 4, 2021 14:46
long error when using make-install SU2_AD. tomp1993 SU2 Installation 3 March 17, 2018 07:25
error compiling modified applications yvyan OpenFOAM Programming & Development 21 March 1, 2016 05:53
Errors in UDF shashank312 Fluent UDF and Scheme Programming 6 May 30, 2013 21:30
Compiling problems with hello worldC fw407 OpenFOAM Installation 21 January 6, 2008 18:38


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