[Gmsh] API define periodic line

Artur Palha artur.palha at gmail.com
Thu May 3 09:28:50 CEST 2018


Dear Christophe,

I think I found out how to get that information. If I get the nodes
associated to the master and slave line entities I get the master and slave
nodes. They are given in the same order (up to a order reversal given by
the Affine transformation).

-artur palha

On Wed, May 2, 2018 at 5:49 PM Artur Palha <artur.palha at gmail.com> wrote:

> Dear Christophe,
>
> I have one more question. After adding the periodic lines how can I have
> access to the periodicity information (master/slave) for the nodes of the
> mesh? Similar to what is found between $Periodic and $EndPeriodic in the
> msh file.
>
> Once again thank you.
>
> -artur palha
>
> On Thu, Apr 26, 2018 at 3:06 PM Artur Palha <artur.palha at gmail.com> wrote:
>
>> Christophe,
>>
>> It works like a charm! Thank you very much for the extremely quick
>> addition. One thing, I need to add a gmsh.model.geo.synchronize() begore
>> the periodic line right? Otherwise the entities are not available (just to
>> be sure I am not missing anything).
>>
>> Once again thank you!
>>
>> P.S.: I tried both, and yes the SDK is much easier (at least for quick
>> tests).
>>
>> On Thu, Apr 26, 2018 at 9:50 AM, Christophe Geuzaine <geuzaine at gmail.com>
>> wrote:
>>
>>>
>>> Hi Artur - it's now in the API: give it a try.
>>>
>>> PS: we have started to generate binary SDKs that contain the shared Gmsh
>>> library and the C++/C headers and Python module (see the *-sdk* files in
>>> gmsh.info/bin/). The SDK is built using the same compilers as the
>>> official builds, with the same options (built-in OpenCASCADE, etc.). This
>>> should make it much easier to develop C++, C or Python code based on Gmsh,
>>> without having to compile the Gmsh code from scratch.
>>>
>>>
>>> On 25 Apr 2018, at 22:30, Christophe Geuzaine <geuzaine at gmail.com>
>>> wrote:
>>>
>>>
>>> Hi Arthur,
>>>
>>> Indeed it's currently missing from the API - we'll add it soon.
>>>
>>> Christophe
>>>
>>> On 25 Apr 2018, at 13:12, Artur Palha <artur.palha at gmail.com> wrote:
>>>
>>> Dear Benedikt,
>>>
>>> Thank you for your reply. Unfortunately I am unable to understand
>>> exactly what you mean by that. Roughly I think that you define the periodic
>>> surface 2 (for example) to be the translation along [400,0,0] of the
>>> surface 1. Still you make use of the Periodic Surface call. My problem is
>>> that I am unable to find an equivalent function to Periodic Surface in the
>>> API of gmsh.
>>>
>>> To make it clearer: What is the equivalent code using the API of gmsh
>>> that implements:
>>>
>>> Periodic Line{mySlaveLine} = {myMasterLine};
>>>
>>> Once again thank you for your help.
>>>
>>> -artur palha
>>>
>>>
>>> On Wed, Apr 25, 2018 at 12:07 PM, Benedikt Oswald <
>>> benedikt.oswald at lspr.swiss> wrote:
>>>
>>>> Dear Artur, what you can do is something along these lines:
>>>>
>>>> // constrain the boundary surfaces to conformal discretization
>>>>
>>>> // x
>>>> Periodic Surface {2} = {1} Translate {400,0,0};        // ex
>>>>
>>>> // y
>>>> Periodic Surface {4} = {3} Translate {0,300,0};        // ey
>>>>
>>>> // z - floor and roof
>>>> Periodic Surface {6} = {5} Translate {0,0,150};        // ez
>>>>
>>>> in fact, you need to know the id of the geometrical entity (surface)
>>>>
>>>> and transfer it by the requested amount.
>>>>
>>>> Greeetings, Benedikt
>>>>
>>>>
>>>>
>>>>
>>>> Am 25.04.18 um 12:02 schrieb Artur Palha:
>>>> > Dear All,
>>>> >
>>>> > I am trying to use gmsh's API. I can successfully use it to setup my
>>>> > geometry and generate the mesh. The only issue I am having is that I
>>>> > cannot find the function (both in Python and C++) to define Periodic
>>>> > Lines (or Periodic Surfaces). Does anyone know this?
>>>> >
>>>> > Thank you.
>>>> >
>>>> > -artur palha
>>>> >
>>>> >
>>>> > _______________________________________________
>>>> > gmsh mailing list
>>>> > gmsh at onelab.info
>>>> > http://onelab.info/mailman/listinfo/gmsh
>>>>
>>>> --
>>>>
>>>> ----------------------------------------------------------------------------------------------------------------------
>>>> Dr. sc. techn. Benedikt Oswald - first engineer - LSPR AG - phone +41
>>>> 43 366 90 74
>>>> Grubenstrasse 9, CH-8045 Zürich
>>>> <https://maps.google.com/?q=Grubenstrasse+9,+CH-8045+Z%C3%BCrich&entry=gmail&source=g>,
>>>> benedikt.oswald at lspr.swiss
>>>>
>>>> ----------------------------------------------------------------------------------------------------------------------
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> gmsh mailing list
>>>> gmsh at onelab.info
>>>> http://onelab.info/mailman/listinfo/gmsh
>>>>
>>>>
>>> _______________________________________________
>>> gmsh mailing list
>>> gmsh at onelab.info
>>> http://onelab.info/mailman/listinfo/gmsh
>>>
>>>
>>> _______________________________________________
>>> gmsh mailing list
>>> gmsh at onelab.info
>>> http://onelab.info/mailman/listinfo/gmsh
>>>
>>>
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://onelab.info/pipermail/gmsh/attachments/20180503/44ac64f2/attachment.html>


More information about the gmsh mailing list