2016-11-16 2 views
2

J'essaie de simuler un champ électrique dipôle en utilisant Maxima. Voici le code:Impossible de dessiner un champ électrique dipôle

P : 1$ 
eps0 : 8.854$ 
Ex : 3*P*y*x/(4*π*eps0*(x^2 + y^2)^2.5)$ 
Ey : P*(3*y^2/(x^2 + y^2) + 1)/(x^2 + y^2)^1.5/(4*π*eps0)$ 
ew : sqrt(Ex^2 + Ey^2)$ 

contour_plot (ew,[x, -4, 4], [y, -4,4]); 

mais je reçois des lignes droites seulement.
Ce qui peut être faux, parce que le code similaire dans Wolfram Mathematica fonctionne bien.

Répondre

2

contour_plot n'est pas aussi intelligent que la fonction correspondante dans Mathematica. Vous pouvez l'aider un peu.

P : 1$ 
eps0 : 8.854$ 
Ex : 3*P*y*x/(4*%pi*eps0*(x^2 + y^2)^2.5)$ 
Ey : P*(3*y^2/(x^2 + y^2) + 1)/(x^2 + y^2)^1.5/(4*%pi*eps0)$ 
ew : sqrt(Ex^2 + Ey^2)$ 

BIG: subst([x=1/4, y=1/4], ew)$ 
cap_log(e, c):= if e > c then log(c) else log(e)$ 

set_plot_option ([gnuplot_preamble, "set cntrparam levels 8"])$ 
contour_plot ('cap_log(ew, BIG), [x, -4, 4], [y, -4, 4])$ 
0

Vous pouvez également utiliser plotdf.

(%i1) [P,eps0] : [1,8.854]$ 
(%i2) Ex : 3*P*y*x/(4*%pi*eps0*(x^2 + y^2)^2.5)$ 
(%i3) Ey : P*(3*y^2/(x^2 + y^2) + 1)/(x^2 + y^2)^1.5/(4*%pi*eps0)$ 
(%i4) plotdf([Ex,Ey],[vectors,"blank"]); 

Cliquez sur certains points dans l'intrigue, puis entrer dans le menu de configuration du terrain (l'icône avec une clé et un tournevis), effacer la couleur « rouge » dans fieldlines et choisissez une couleur, par exemple « bleu ", dans les courbes. Revenez à l'intrigue en cliquant sur Ok, et cliquez à nouveau dans la placette pour tracer quelques courbes équipotentielles.