[Gmsh] extending gmsh scripting language with python functions

Jonathan Lambrechts jonathanlambrechts at gmail.com
Thu Jul 18 17:29:12 CEST 2013


sorry, it should have been FieldPython.h and not PythonField.h 
(corrected now)
On 18/07/13 16:55, trophime wrote:
> On Thu, 2013-07-18 at 15:51 +0200, Jonathan Lambrechts wrote:
>> Hi,
>> I just added python fields (they will be available in the next nightly
>> build).
>>
>> There is no embedded python interpreter in Gmsh, we rather provide
>> python bindings for the Gmsh library. This is still work in progress,
>> in particular there is no documentation nor stable API, we just bind
>> most of Gmsh internal functions to python.
>> Gmsh Library and python bindings can be downloaded with the gmsh
>> dynamic library from  Gmsh website :
>> http://geuz.org/gmsh/bin/Linux/gmsh-svn-Linux64-dynamic.tgz
>> http://geuz.org/gmsh/bin/MacOSX/gmsh-svn-MacOSX-dynamic.tgz
>> http://geuz.org/gmsh/bin/Windows/gmsh-svn-Windows64-dynamic.zip
>>
>> On linux and OSX, to build the python bindings, go to the "gmshpy"
>> sub-directory the run the python script "setup.py" (e.g. python
>> setup.py build; python setup.py install). On windows, I'm not sure if
>> it works ...
>>
>> An example of python field is attached, the python script imports the
>> gmsh python bindings then loads a geo file and adds some python fields
>> and at the end, the GUI is started.
> When trying to package latest rev for debian, the installation fails :
>   --
> Installing: /tmp/buildd/gmsh-tetgen-2.8.3~svn16274/debian/tmp/usr/gmshpy/extra_include/Field.h
> CMake Error at wrappers/gmshpy/cmake_install.cmake:232 (FILE):
>    file INSTALL cannot find
>
> "/tmp/buildd/gmsh-tetgen-2.8.3~svn16274/wrappers/gmshpy/../../Mesh/PythonField.h".
> Call Stack (most recent call first):
>    cmake_install.cmake:347 (INCLUDE)
>
>> regards,
>>
>> Jonathan
>>
>> On 11/07/13 11:49, Nico Schlömer wrote:
>>
>>> I'd be very much interested in a hands-on example of Gmsh + Python
>>> as well.
>>>
>>>
>>> --Nico
>>>
>>>
>>> On Thu, Jul 11, 2013 at 10:06 AM, Christophe Geuzaine
>>> <cgeuzaine at ulg.ac.be> wrote:
>>>          
>>>          On 11 Jul 2013, at 09:07, moritz braun
>>>          <moritz.braun at gmail.com> wrote:
>>>          
>>>          > Dear All
>>>          >
>>>          > I am using gmsh in the moment to
>>>          > create 3D grids with  background field to control the
>>>          characteristic length.
>>>          > Writing functions as  .F attribute of an Field variable is
>>>          rather restrictive
>>>          > it would be nice if  gmsh could be extended by embedding
>>>          the python interpreter for
>>>          >  such functions.
>>>          > How difficult whould that be?
>>>          >
>>>          
>>>          
>>>          I think you can already define fields in the Gmsh Python
>>>          interface (CC'ing Jon on this one: Jon, could you send a
>>>          small example?). If this is the case, then your python
>>>          script could simply import the Gmsh module, merge your
>>>          current .geo definitions, then define the fields directly in
>>>          Python.
>>>          
>>>          
>>>          > regards
>>>          >
>>>          > Moritz
>>>          >
>>>          > --
>>>          > Prof M Braun         Tel.:27-12-4298006/8027
>>>          > Physics Department  Fax.: 27-12-4293643
>>>          > University of South Africa (UNISA)
>>>          > moritz.braun at gmail.com
>>>          > P.O. Box 392
>>>          > 0003
>>>          > UNISA
>>>          >  South Africa
>>>          > http://moritz-braun.blogspot.com
>>>          
>>>          > _______________________________________________
>>>          > gmsh mailing list
>>>          > gmsh at geuz.org
>>>          > http://www.geuz.org/mailman/listinfo/gmsh
>>>          
>>>          --
>>>          Prof. Christophe Geuzaine
>>>          University of Liege, Electrical Engineering and Computer
>>>          Science
>>>          http://www.montefiore.ulg.ac.be/~geuzaine
>>>          
>>>          
>>>          
>>>          
>>>          _______________________________________________
>>>          gmsh mailing list
>>>          gmsh at geuz.org
>>>          http://www.geuz.org/mailman/listinfo/gmsh
>>>
>>>
>> _______________________________________________
>> gmsh mailing list
>> gmsh at geuz.org
>> http://www.geuz.org/mailman/listinfo/gmsh