[Gmsh] extending gmsh scripting language with python functions
Jonathan Lambrechts
jonathanlambrechts at gmail.com
Thu Jul 18 15:51:10 CEST 2013
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.
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 <mailto:cgeuzaine at ulg.ac.be>> wrote:
>
>
> On 11 Jul 2013, at 09:07, moritz braun <moritz.braun at gmail.com
> <mailto: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 <mailto: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 <mailto: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
> <http://www.montefiore.ulg.ac.be/%7Egeuzaine>
>
>
>
>
> _______________________________________________
> gmsh mailing list
> gmsh at geuz.org <mailto:gmsh at geuz.org>
> http://www.geuz.org/mailman/listinfo/gmsh
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.geuz.org/pipermail/gmsh/attachments/20130718/7bdcc1dc/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: testPythonField.py
Type: text/x-python
Size: 833 bytes
Desc: not available
URL: <http://www.geuz.org/pipermail/gmsh/attachments/20130718/7bdcc1dc/attachment.py>