ELECTRIC POTENTIAL
by Reinaldo Baretti Machín
www.oocities.org/serienumerica
e-mail : reibaretti2004@yahoo.com
c Electric Potential /and Electric field of a point charge distribution
c
dimension x(100), y(100), q(100)
equivalence (epsi,dx,dy)
real k
k=8.99E9
pi=2.*asin(1.)
epsi=1.e-4
50 print*,'n points charges'
read * , n
do 10 i=1,n
print*,' enter x,y,q for point I',i
read *,x(i),y(i),q(i)
10 continue
print*,' coordinates of P (observation point) xp , yp '
read*,xp,yp
rp=sqrt(xp**2+yp**2)
v=0.
vdx=0.
vdy=0.
do 20 i=1,n
r=sqrt((xp-x(i))**2 +(yp-y(i))**2)
rdx= sqrt((xp+epsi-x(i))**2 +(yp-y(i))**2)
rdy=sqrt((xp-x(i))**2 +(yp+epsi-y(i))**2)
v=v+k*q(i)/r
vdx=vdx+k*q(i)/rdx
vdy=vdy+k*q(i)/rdy
20 continue
ex=-(vdx-v)/dx
ey=-(vdy-v)/dy
er=(ex**2+ey**2)**.5
theta= atan(ey/ex)
print 110,xp,yp,rp,v
print 100, er,ex,ey,theta*180./pi
100 format(1x,'er,ex,ey, theta(degrees)=',4(2x,e11.4))
110 format(1x,'xp,yp,rp,V=',4(2x,e11.4))
print*,' '
print*,'enter 0=no or 1=yes for another calculation'
read*,id
if(id.eq.0)goto 200
if(id.eq.1)goto 50
200 stop
end