<div dir="ltr"><div class="gmail_default" style="font-size:small">Hi,</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Thank you for your response.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">I have tried the suggestion you made but this way I don't get the internal surfaces which I need. The surface ​mesh is constructed correctly but as you can see from the first image I don't have the internal regions. I do get the points but openfoam does not understand them no matter what I do. In the second image is the mesh that I want with the internal surfaces.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">In the third image is a mesh I get with the loops but without the 'Line In Surface' set of commands where you can see that I get a bad mesh near the narrow areas where the mesh crosses the boundaries of the loop lines. I would expect that since I construct the surface with the loops, even if they were of zero width, they would be embedded in the surface since its creation making the need for the 'Line In Surface' commands obsolete.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Anyway I found a workaround but it involves the Salome mesh generator.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">In the first step I create the mesh in Gmsh without the coherence function. I save it in unv format. I reload it in Salome and I remove the duplicate nodes there with 'merge nodes'. I delete the 'vol' since I don't need it and I save the mesh with only the surfaces I need again in unv format.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">It sounds cybersome but all these are done by scripts and Salome needs a few minutes to load a 3+ million cells mesh and save it back and less than a minute to remove the duplicates. Gmsh needs a few minutes for the mesh and 2+hrs for the removal so the procedure through Salome is way faster.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Salome is written in python which is no faster than C++ so I guess the coherence routine in gmsh could take a refinement to a faster way.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Kind regards</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Andrew Tsiantis</div><div class="gmail_default" style="font-size:small"><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2016-08-28 12:10 GMT+03:00 Christophe Geuzaine <span dir="ltr"><<a href="mailto:cgeuzaine@ulg.ac.be" target="_blank">cgeuzaine@ulg.ac.be</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
Andrew,<br>
<br>
The problem actually seems to come from the way you define the surface: can you regenerate your geometry script after<br>
<br>
- removing all the zero-area line loops (e.g. "Line Loop(6) = {5, -5};")<br>
- removing these loops from the definition of the main surface (i.e. simply have "Plane Surface(1) = {205};")<br>
<br>
With this you should not have duplicate vertices anymore, which should make "Coherence Mesh" unnecessary.<br>
<br>
Let us know,<br>
<br>
Christophe<br>
<div><div class="h5"><br>
<br>
> On 21 Aug 2016, at 17:33, andrew <<a href="mailto:armitatz@gmail.com">armitatz@gmail.com</a>> wrote:<br>
><br>
> hi,<br>
><br>
> Thank you for the response. The file I submitted was a small one and the problem was not so obvious. I am attaching a 'real' file​ that I use on my simulations. It has 3000 cuts in it. This takes 2 hours on a quad core and 1+ hour on a i7 @4ghz. I am using the version 2.13.1.<br>
><br>
> Kind regards<br>
><br>
> Andrew Tsiantis<br>
><br>
><br>
> 2016-08-21 17:50 GMT+03:00 Christophe Geuzaine <<a href="mailto:cgeuzaine@ulg.ac.be">cgeuzaine@ulg.ac.be</a>>:<br>
><br>
> > On 19 Aug 2016, at 21:34, andrew <<a href="mailto:armitatz@gmail.com">armitatz@gmail.com</a>> wrote:<br>
> ><br>
> > ​Hi,<br>
> ><br>
> > I try to create a 3d mesh from an extruded 2d mesh. The mesh is a simple box but with cuts in it of zero width. The geometry is created ok and the meshing even when I have 2000-3000 cuts is done in less than a few minutes. However when I convert the mesh for use with openfoam I was getting errors. By adding the command 'Coherence mesh;' after the creation of the mesh, the mesh is converted correctly for use with openfoam by using the ultility 'gmshToFoam'.<br>
><br>
> Indeed, it's a limitation of our extrusion algorithm with embedded curves ("Line In Surface"): it currently creates duplicate vertices. The real fix is thus for us to enhance extrusion of embedded curves, but it's not trivial due to the way extruded meshes are generated.<br>
><br>
> > The problem is in the use of the 'Coherence Mesh'. It takes almost two hours to execute while the meshing takes a few minutes. Is there a way to improve the Coherence command or to make the same geometry without the duplicate nodes that need so much time to be removed?<br>
> ><br>
> > I attached a file that needs 2.5 minutes on a quad core for meshing and more than ten minutes to remove 1600 duplicates.<br>
> > I have to create thousands of these meshes so a speedup would be welcomed.<br>
> ><br>
><br>
> That seems a bit slow: on my laptop meshing and duplicate removal take about the same time (2 minutes each). Which version of Gmsh do you use?<br>
><br>
> > kind regards<br>
> ><br>
> > Andrew tsiantis<br>
> ><br>
> > <se.geo>______________________<wbr>_________________________<br>
> > gmsh mailing list<br>
> > <a href="mailto:gmsh@onelab.info">gmsh@onelab.info</a><br>
> > <a href="http://onelab.info/mailman/listinfo/gmsh" target="_blank" rel="noreferrer">http://onelab.info/mailman/<wbr>listinfo/gmsh</a><br>
><br>
> --<br>
> Prof. Christophe Geuzaine<br>
> University of Liege, Electrical Engineering and Computer Science<br>
> <a href="http://www.montefiore.ulg.ac.be/~geuzaine" target="_blank" rel="noreferrer">http://www.montefiore.ulg.ac.<wbr>be/~geuzaine</a><br>
><br>
> Tetrahedron V, July 4-5 2016: <a href="http://tetrahedron.montefiore.ulg.ac.be" target="_blank" rel="noreferrer">http://tetrahedron.montefiore.<wbr>ulg.ac.be</a><br>
> Free software: <a href="http://gmsh.info" target="_blank" rel="noreferrer">http://gmsh.info</a> | <a href="http://getdp.info" target="_blank" rel="noreferrer">http://getdp.info</a> | <a href="http://onelab.info" target="_blank" rel="noreferrer">http://onelab.info</a><br>
><br>
><br>
</div></div>> <3k_cuts.zip>_________________<wbr>______________________________<br>
<span class="im HOEnZb">> gmsh mailing list<br>
> <a href="mailto:gmsh@onelab.info">gmsh@onelab.info</a><br>
> <a href="http://onelab.info/mailman/listinfo/gmsh" target="_blank" rel="noreferrer">http://onelab.info/mailman/<wbr>listinfo/gmsh</a><br>
<br>
--<br>
Prof. Christophe Geuzaine<br>
University of Liege, Electrical Engineering and Computer Science<br>
<a href="http://www.montefiore.ulg.ac.be/~geuzaine" target="_blank" rel="noreferrer">http://www.montefiore.ulg.ac.<wbr>be/~geuzaine</a><br>
<br>
</span><div class="HOEnZb"><div class="h5">Free software: <a href="http://gmsh.info" target="_blank" rel="noreferrer">http://gmsh.info</a> | <a href="http://getdp.info" target="_blank" rel="noreferrer">http://getdp.info</a> | <a href="http://onelab.info" target="_blank" rel="noreferrer">http://onelab.info</a><br>
<br>
</div></div></blockquote></div><br></div>