<font color='black' size='2' face='arial'>
<div> <font size="2"><font face="Arial, Helvetica, sans-serif">It would be interesting to generalize to any number of electrical charges. Here's an example with four charges. </font></font><span id="result_box" class="medium_text"><span title="Voici un exemple avec quatre charges."> </span><span title="C'est beau !">It's beautiful!</span></span><br>
<font size="2"><font face="Arial, Helvetica, sans-serif"><br>
\documentclass{article}<br>
\usepackage{pstricks,pst-plot}<br>
\SpecialCoor<br>
\def\FieldLinesFourElectricCharges{%<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /r1 xP xA sub dup mul yP yA sub dup mul add sqrt def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /r2 xP xB sub dup mul yP yB sub dup mul add sqrt def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /r3 xP xC sub dup mul yP yC sub dup mul add sqrt def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /r4 xP xD sub dup mul yP yD sub dup mul add sqrt def<br>
%&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /V q1 r1 div<br>
%&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; q2 r2 div<br>
%&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add<br>
%&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; q3 r3 div<br>
%&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add<br>
%&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; q4 r4 div<br>
%&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add def<br>
%&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Ex=-dV/dx<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /Ex q1 xP xA sub mul r1 3 exp div<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; q2 xP xB sub mul r2 3 exp div<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; q3 xP xC sub mul r3 3 exp div<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; q4 xP xD sub mul r4 3 exp div<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add def<br>
%&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Ey=-dV/dy<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /Ey q1 yP yA sub mul r1 3 exp div<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; q2 yP yB sub mul r2 3 exp div<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; q3 yP yC sub mul r3 3 exp div<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; q4 yP yD sub mul r4 3 exp div<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /NormeE Ex dup mul Ey dup mul add sqrt def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /dX Ex NormeE div pasX mul def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /dY Ey NormeE div pasX mul def<br>
}<br>
\begin{document}<br>
\begin{center}<br>
\begin{pspicture*}(-7,-7)(7,7)<br>
% les limites<br>
\pstVerb{/xmin -5 def /xmax 5 def /ymin -5 def /ymax 5 def}%<br>
% le nombre de lignes de champ<br>
%\pstVerb{/NL 24 def}% 15 degrés entre chaque ligne (24*15=360)<br>
% le pas d'itération<br>
\pstVerb{/pasX xmax xmin sub 200 div def}% 0.05<br>
\pstVerb{/q1 1 def&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; % les charges<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /q2 1 def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /q3 1 def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /q4 1 def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /xA -2.5 def&nbsp;&nbsp;&nbsp;&nbsp; % leurs positions<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yA -2.5 def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /xB 2.5 def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yB -2.5 def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /xC 2.5 def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yC 2.5 def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /xD -2.5 def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yD 2.5 def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }%<br>
\multido{\iA=0+15}{24}{% 24 lignes de champ<br>
\pstVerb{/xStart xA def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yStart yA def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /pasX q1 q1 abs div 0.05 mul def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /xP xStart pasX \iA\space cos mul add def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yP yStart pasX \iA\space sin mul add def}%<br>
\parametricplot[plotpoints=2000]{xmin}{xmax}{%<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \FieldLinesFourElectricCharges<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /xP xP dX add def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yP yP dY add&nbsp; def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xP yP<br>
}<br>
\pstVerb{/xStart xB def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yStart yB def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /pasX q2 q2 abs div 0.05 mul def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /xP xStart pasX \iA\space cos mul add def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yP yStart pasX \iA\space sin mul add def}%<br>
\parametricplot[plotpoints=2000]{xmin}{xmax}{%<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \FieldLinesFourElectricCharges<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /xP xP dX add def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yP yP dY add&nbsp; def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xP yP<br>
}<br>
\pstVerb{/xStart xC def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yStart yC def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /pasX q3 q3 abs div 0.05 mul def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /xP xStart pasX \iA\space cos mul add def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yP yStart pasX \iA\space sin mul add def}%<br>
\parametricplot[plotpoints=2000]{xmin}{xmax}{%<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \FieldLinesFourElectricCharges<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /xP xP dX add def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yP yP dY add&nbsp; def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xP yP<br>
}<br>
\pstVerb{/xStart xD def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yStart yD def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /pasX q4 q4 abs div 0.05 mul def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /xP xStart pasX \iA\space cos mul add def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yP yStart pasX \iA\space sin mul add def}%<br>
\parametricplot[plotpoints=2000]{xmin}{xmax}{%<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \FieldLinesFourElectricCharges<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /xP xP dX add def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /yP yP dY add&nbsp; def<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xP yP<br>
}<br>
}<br>
\pscircle[fillstyle=solid](!xA yA){0.2}\pscircle[fillstyle=solid](!xB yB){0.2}<br>
\pscircle[fillstyle=solid](!xC yC){0.2}\pscircle[fillstyle=solid](!xD yD){0.2}<br>
\end{pspicture*}<br>
\end{center}<br>
\end{document}<br>
<br>
<br>
</font></font></div>

<div> <font color="black" face="arial" size="2"><font face="Myriad Pro">Regards,<font face="Arial, Helvetica, sans-serif"><br>
<br>
Manuel L.<br>
</font></font></font></div>

<div style="clear: both;"></div>

<div> <br>
</div>

<div> <br>
</div>

<div style="font-family: helvetica,arial; font-size: 10pt; color: black;"><br>
<!-- end of AOLMsgPart_6_b302c892-55dc-401e-80f7-b68fcd92c266 -->

</div>
</font>