import h5py
f = h5py.File(’foo.h5’, ’r’)
x = f[’axis’].value
y = f[’data’].value
f.close()
Script pour créer le fichier de données :
https://perso.univ-rennes1.fr/pierre.navaro/python/matplotlib/ex5_gendata.
py
3.5 Tracé 2D d’un champ scalaire
Tracer les données nommées "data2d" lue dans le fichier :
https://perso.univ-rennes1.fr/pierre.navaro/python/matplotlib/bar.h5
avec matplotlib.pyplot.contour et matplotlib.pyplot.imshow. Les coordonnées x
et ysont nommées "x_axis" et "y_axis" dans les données hdf5.
Script pour créer le fichier de données :
https://perso.univ-rennes1.fr/pierre.navaro/python/matplotlib/ex7_gendata.
py
4 Scipy
4.1 Interpolation
Prenez le fichier https://perso.univ-rennes1.fr/pierre.navaro/python/scipy/
ex1.py.
Comparer les courbes d’interpolations Krogh et Barycentric avec l’interpolation cu-
bique. Utiliser les deux séries de points (x, y1)et (x, y2)calculées par les lignes python
suivantes :
a=sp.random.rand(10)-0.5
x=sp.linspace(-1,1,num=10)
y1=(x-1.)*(x-0.5)*(x+0.5)
y2=(x-1.)*(x-0.5)*(x+0.5)+a
4.2 Laplacien en deux dimensions
On considère l’équation du laplacien :
∆u(x, y) = f(x, y),
Afin que le problème soit bien posé, on spécifie des conditions aux limites sur le bord
du domaine de type Dirichlet (u(x, y, t)connue sur le bord).
Discrétisation spatiale : on utilise des différences finies d’ordre 2 et un maillage
composé de Nx×Nyrectangles de taille ∆x×∆y.
ui−1,j −2uij +ui+1j
∆x2+ui,j−1−2uij +uij+1
∆y2=fij
5