clear all;
close all;
clc
n=20;
nQ=3;
%nQ=3;
dx=1;
dy=1;
dz=1;
q=[5;-10;5];
Qcoord=[[5.0, 5.0, 0.0]; [10.0, 10.0, 0.0];[15.0, 15.0, 0.0]];
%q=randi([-20,20], 1, nQ);
%Qcoord=randi([3,18], nQ, 3);
fileID = fopen('points.plr','w');
fprintf(fileID,'%6s \n','points');
fprintf(fileID,'%1s \n','6');
fprintf(fileID,'%5.0f \n',n*n);
fileID1 = fopen('Efield.arr','w');
fprintf(fileID1,'%6s \n','Efield');
fprintf(fileID1,'%5.0f %1.0f \n',n*n,1);
figure
for x=1:dx:n
for y=1:dy:n
z=0;
% for z=1:dz:n
hold on
%[X,Y] = meshgrid(x, y);
R=[0 0 0];
E=[0 0 0];
for i=1:1:nQ
Qx=Qcoord(i,1);
Qy=Qcoord(i,2);
Qz=Qcoord(i,3);
q_coord=[Qx,Qy,0.0];
R0=[x, y, 0.0];
R=R0-q_coord;
if R==0
E=[0 0 0];
else
E = E+q(i)*R / ((R*R')^0.5)^3;
%E=E/(E*E')^0.5;
end
end
fprintf(fileID,'%20.10f %20.10f %20.10f \n',R0);
fprintf(fileID1,'%20.10f %20.10f %20.10f %20.10f %20.10f %20.10f \n',R0,E);
plot3(x,y,z,'.');
%quiver(x,y,E(:,1),E(:,2),2);
quiver3(x,y,z,E(:,1),E(:,2),E(:,2),3);
%end
end
end
hold off
fclose(fileID);
fclose(fileID1);