Lycée Newton - PT EM - AN2 - Equations de Poisson et de Laplace - Résolution numérique Electromagnétisme Approche numérique : Equations de Poisson et de Laplace - Résolution numérique 1 1.1 Equations de Poisson et de Laplace Démonstration En électrostatique, le rotationel du champ électrique est nul : ∇∧E =0 Le champ électrostatique dérive donc d’un potentiel V : E = −∇ V L’équation de Maxwell-Gauss peut alors s’écrire : ∇ · (−∇ V) = ρ ε0 or, la définition intrinsèque du laplacien scalaire est : ∆ f = ∇ · (−∇ V) On obtient donc : ∆V = − ρ ε0 Equations de Poisson et de Laplace Le potentiel électrostatique V associé à une distribution de charge ρ est donnée par la relation suivante, appelée équation de Poisson : ρ ∆V = ε0 Dans une zone vide de charge, cette équation est alors appelée équation de Laplace : ∆V = 0 1.2 Intérêt L’équation de Poisson est très utile pour déterminer le champ électrique créé par des distributions compliquées, pour lesquelles le Théorème de Gauss n’est pas utilisable. La distribution de charges étant connue, on résout l’équation de Poisson par ordinateur (résolution numérique). Une fois le potentiel connu, on dérive pour trouver le champ électrique. 2 2.1 Résolution numérique de l’équation de Laplace 2D Principe de la résolution On se place en coordonnées cartésiennes. L’équation s’écrit alors : ∂2 V ∂2 V + =0 ∂x2 ∂y2 2014/2015 1/3 Lycée Newton - PT EM - AN2 - Equations de Poisson et de Laplace - Résolution numérique Pour trouver les solutions de l’équations aux dérivées partielles, on applique la méthode des différences finies qui consiste à faire une approximation des dérivées en utilisant des différences finies, c’est à dire par exemple : δ ∂V 1 δ = V x+ ,y −V x− δ 2 2 ∂x δ doit etre le plus petit possible pour que l’approximation soit exacte car en procédant de cette manière il se crée une erreur qui va se propager et s’amplifier à chaque nouvelle itération. Pour une dérivée seconde l’expression devient : 1 ∂2 = 2 V(x + δ, y) + V(x − δ, y) − 2V(x, y) 2 ∂x δ Exprimons donc le potentiel V(x, y) à partir de l’équation de Laplace : . 1 V(x + δ, y) + V(x − δ, y) + V(x, y + δ) + V(x, y − δ) − 4V(x, y) = 0 2 δ V(x, y) = V(x + δ, y) + V(x − δ, y) + V(x, y + δ) + V(x, y − δ) 4 Il faut donc trouver une fonction dont la valeur en chaque point M(x, y) est égale à la moyenne de la valeur de cette fonction sur les 4 points les plus proches : – le point de droite A(x + δ, y) ; – le point de gauche C(x − δ, y) ; – le point du haut D(x, y + δ) ; – le point du bas B(x, y − δ). L’astuce pour trouver cette fonction est de partir d’une fonction quelconque, on part des points aux conditions limites, c’est à dire les points dont le potentiel est déjà connu. Puis on remplace les valeurs prisent par chacun des points du plan de sorte que la valeur de chaques points M du plan soit égale à la moyenne des valeurs des quatres points voisins A, B, C et D. En répétant cette opération un très grand nombre de fois sur tout les points du plan, on atteint une assez bonne approximation du potentiel en chaque point. Dans ce qui suit, on appliquera l’algorithme à l’équation de Poisson, pour laquelle le potentiel est donné par l’équation : ρ(x,y) V(x + δ, y) + V(x − δ, y) + V(x, y + δ) + V(x, y − δ) + ε0 V(x, y) = 4 2.2 Mise en œuvre On a un tableau V de taille N × N des potentiels et un tableau rho des charges. On a préalablement initialisé les tableaux à 0 partout et placé des points chargés dans le tableau rho des charges. Par exemple pour une charge centrée : on doit initialiser rho[N/2, N/2] = rho0. Le programme présente ensuite les résultats en traçant les équipotentielles dans un graphique. from numpy import * import matplotlib import matplotlib . pyplot as plt L=2.1 # largeur N=20 # nombre de points du maillage h=L/(N -1) # pas ( distance entre deux points du maillage ) # Creation de la matrice des charges en chaque point Q=5.0 # charge totale rho0=Q/h**2 # charge en un point rho = zeros ((N,N)) # matrice des charges n x n remplie de zeros # Matrice initiale V = zeros ((N,N)) # Points ou placer les charges # armatures chargees : 2014/2015 2/3 Lycée Newton - PT EM - AN2 - Equations de Poisson et de Laplace - Résolution numérique #for k in arange (N/6 ,5*N/6): # rho [2*N/5,k] = rho0 # rho [3*N/5,k] = -rho0 # charge ponctuelle au centre : rho[N/2,N/2] = rho0 iterations =0 seuil =1e -9 # seuil d’erreur erreur =2* seuil # valeur arbitraire pour initialiser l’erreur while iterations < 1e5 and erreur > seuil : V_copie = copy(V) erreur = 0.0 for j in range (1, N -1) : for i in range (1, N -1) : V[i,j] = 0.25*( V_copie [i+1,j] + V_copie [i-1,j] + V_copie [i,j -1] + V_copie [i,j+1] + rho[i,j]) erreur += abs(V[i,j]- V_copie [i,j]) iterations += 1 erreur /= float(N**2) # partie servant dessiner le graphique plt.clf () x = linspace (0,N-1,N) y = linspace (0,N-1,N) X, Y = meshgrid (x,y) plt. contour (X ,Y ,V ,20) plt. imshow (-abs(rho )) plt. set_cmap (‘‘gray ’’) plt.show () On obtient ainsi les équipotentielles ci-dessous, dans le cas de deux armatures portant des charges opposées et dans celui d’une charge ponctuelle. La direction du champ électrique peut être visualisée en traçant les perpendiculaires aux équipotentielles. (a) Armatures 2014/2015 (b) Charge ponctuelle 3/3