<div dir="ltr"><div>Thank you I appreciated it very much. <br></div><div>Prof. Geuzaine indicated me a solution in the follow-up.</div><div><br></div><div>As i mentioned in my reply to his email below, I was confused/did not think, that the CPS6 type surface element <br></div><div>with its own ID is one of the faces of  a 3D C3D10 type tetrahedra element who has another ID. <br></div><div>So looping over the tagged physical group surface elements is what I need to do! <br></div><div><br></div><div><br></div><div>Many thanks again and best regards,</div><div>Zuheyr<br></div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, Jun 18, 2018 at 3:22 AM G. D. McBain <<a href="mailto:gdmcbain@protonmail.com">gdmcbain@protonmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐<br></div><div> Le 17 juin 2018 7:12 PM, Zuheyr Alsalihi <<a href="mailto:zuheyr@gmail.com" target="_blank">zuheyr@gmail.com</a>> a écrit :<br></div><div> <br></div><blockquote class="m_2589864116394774255protonmail_quote" type="cite"><div dir="ltr"><div>Is there a way to get the node ID's of  the elements that lie on a boundary surface in a 3d solid mesh where I mark the surface by creating a physical surface. <br></div></div></blockquote><div><br></div><div>I don't know how to do that directly in Gmsh, but for a (two-dimensional) example using Python to extract the nodes belonging to different Physical Lines, see <br></div><div><br></div><div>    <a href="https://github.com/kinnala/scikit-fem/blob/master/examples/ex14.py" target="_blank">https://github.com/kinnala/scikit-fem/blob/master/examples/ex14.py</a><br></div><div><br>The essential line is the dict-comprehension on line 52:<br><br>    boundaries <span class="m_2589864116394774255pl-k">=</span> {bc:<br>                              np.unique(cells[<span class="m_2589864116394774255pl-s"><span class="m_2589864116394774255pl-pds">'</span>line<span class="m_2589864116394774255pl-pds">'</span></span>][cell_data[<span class="m_2589864116394774255pl-s"><span class="m_2589864116394774255pl-pds">'</span>line<span class="m_2589864116394774255pl-pds">'</span></span>][<span class="m_2589864116394774255pl-s"><span class="m_2589864116394774255pl-pds">'</span>gmsh:physical<span class="m_2589864116394774255pl-pds">'</span></span>] <span class="m_2589864116394774255pl-k">==</span><br>                                                                    field_data[bc][<span class="m_2589864116394774255pl-c1">0</span>]])<br></div><div><br></div><table class="m_2589864116394774255highlight m_2589864116394774255tab-size m_2589864116394774255js-file-line-container"><tbody><tr></tr></tbody></table><div><span class="m_2589864116394774255pl-k">                               for</span> bc <span class="m_2589864116394774255pl-k">in</span> field_data <span class="m_2589864116394774255pl-k">if</span> field_data[bc][<span class="m_2589864116394774255pl-c1">1</span>] <span class="m_2589864116394774255pl-k">==</span> <span class="m_2589864116394774255pl-c1">1</span>}<br></div><table class="m_2589864116394774255highlight m_2589864116394774255tab-size m_2589864116394774255js-file-line-container"><tbody><tr><td class="m_2589864116394774255blob-code m_2589864116394774255blob-code-inner m_2589864116394774255js-file-line" id="m_2589864116394774255LC54"><br></td></tr></tbody></table><div>basically having loaded the mesh from Gmsh into Python with meshio, this filters the element-node connectivity array according to the Physical boundary entities, and then applies numpy.unique to each subset.<br></div><div><br></div></blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">Zuheyr Alsalihi<br></div></div>