From 09cb6b5ea250476c264aa137380230380f9c7202 Mon Sep 17 00:00:00 2001 From: Gaspard Jankowiak Date: Mon, 16 Feb 2015 17:03:48 +0100 Subject: [PATCH] notes mesh conversion --- divers.markdown | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/divers.markdown b/divers.markdown index 3679c4e..f153770 100644 --- a/divers.markdown +++ b/divers.markdown @@ -29,7 +29,7 @@ a = ... + inner(grad(u), n)*v*dx - Il est possible de définir des régions du maillage (des `SubDomain`) de manière plus efficace (à voir ce que ça veut dire exactement) avec la fonction `CompiledSubDomain`, qui prend une chaîne de charactère. Celle-ci suit la syntaxe C++, et expose les variables `on_boundary` et `x`. Les autres doivent être passées en argument : {% highlight python %} -left_boundary = CompiledSubDomain('on_boundary && near(x[0], x_left)', +left_boundary = CompiledSubDomain("on_boundary && near(x[0], x_left)", x_left=0.5) {% endhighlight %} @@ -48,6 +48,15 @@ plt.spy(sp_M) plt.show() # ne pas oublier show pour afficher le graphe {% endhighlight %} +- FEniCS est en général distribué avec un outil permettant la conversion d'un certain nombre de format de stockage de maillage vers le format XML qu'il utilise. Par exemple, pour utiliser un maillage généré par MEdit (FreeFem) : + +{% highlight python %} +import dolfin_utils.meshconvert.meshconvert as conv +conv.mesh2xml("maillage_freefem.mesh", "maillage_fenics.xml") +mesh = Mesh("maillage_fenics.xml") +{% endhighlight %} + + [1]: http://fenicsproject.org/ ## Un blog de Terrence Tao plus lisible