%On se donne une charge. q1 = 1e-6; k = 9e9; %On définit une zone de l'espace qui nous intéresse x = -1:0.1:1;% on souhaite connaitre le champ entre -1 et +1 m, avec un pas de 0.3m pour chaque point y = -1:0.1:1; %Cette fonction créé une grillage à partir de x et y [xx yy] = meshgrid(x,y); %on transforme xx et yy qui sont des matrices, en tableau xx = xx(:); yy = yy(:); %On exclue les zones trop proches du centre centre = (xx.^2 + yy.^2 < 0.1); xx(centre) = []; yy(centre) = []; figure(1) plot(xx,yy,'r+') hold on % on crée un tableau qui contient toutes les distances entre les points ou on calcule le champ et le centre l = sqrt(xx.^2 + yy.^2); E = k * q1./(l.^2); % composantes du vecteur unitaire u ux = xx./l; uy = yy./l; Ex = E .* ux; Ey = E .* uy; quiver(xx,yy,Ex,Ey); hold off xlabel('X (en m)') ylabel('Y (en m)') title('Champ créé par une charge en O') %figure(2) %charges = [-1 -4 -1 -1 1]; %xC = [-1 -1 1 1 0]; %yC = [-1 1 -1 1 0]; %[xx yy Ex Ey] = ldc2(charges,[0.7*xC;0.7*yC]);