Potentiel d'un ensemble de charges

En deux dimensions, le potentiel $V$ résultant d'une charge $q$ à la position $\mathbf x_q$ est: $$ V = \frac{q}{4\pi\epsilon_0|\mathbf x - \mathbf x_q|} = \frac{q}{4\pi\epsilon_0 \sqrt{(x-x_q)^2 + (y-y_q)^2}} $$


In [5]:
%pylab inline
import numpy as np

# Le monde:
Y, X = np.mgrid[-1:1:101j, -1:1:101j]


Populating the interactive namespace from numpy and matplotlib

Définition du potentiel électrique:


In [6]:
def V(x,y, x_q, y_q, q=1.):
   R = np.sqrt( (x - x_q)**2 + (y - y_q)**2 )
   return q/R

Pour un dipôle avec une charge positive à (0.3,0) et une charge négative à (-0.3,0):


In [22]:
pot_dipole = V(X,Y,-0.3,0.,-1.) +  V(X,Y,+0.3,0.)
equipot = [-30.,-15.,-10,-5.,-2.5,-1.,-0.5,-0.25,-0.1,-0.05,0.,0.05,0.1,0.25,0.5,1.,2.5,5.,10,15.,30.]
figV = contour(X,Y,pot_dipole,equipot)


Une fois le potentiel connu, le champ électrique est simplement $-\nabla V$:


In [23]:
E_y, E_x = np.gradient(pot_dipole)
figE = streamplot(X,Y,E_x,E_y)


On peut voir que la direction du champ électrique est toujours perpendiculaire aux lignes définissant des région d'équipotentiel


In [29]:
f,ax = subplots()
ax.contour(X,Y,pot_dipole,equipot)
ax.streamplot(X,Y,E_x,E_y)


Out[29]:
<matplotlib.streamplot.StreamplotSet at 0x110097c10>

In [ ]: