% Parámetros
k = 9e9; % Constante de Coulomb
q1 = 1e-6; % Carga 1 (positiva)
q2 = -1e-6; % Carga 2 (negativa)
r1 = [-0.5, 0]; % Posición de la carga 1
r2 = [0.5, 0];  % Posición de la carga 2

% Malla de puntos
[x, y] = meshgrid(linspace(-2,2,200), linspace(-2,2,200));

% Calcular potencial eléctrico en cada punto
V = zeros(size(x));
for i = 1:numel(x)
    r = [x(i), y(i)];
    
    % Potencial de la carga 1
    R1 = norm(r - r1);
    V1 = k*q1/R1;
    
    % Potencial de la carga 2
    R2 = norm(r - r2);
    V2 = k*q2/R2;
    
    % Potencial total
    V(i) = V1 + V2;
end

% Graficar equipotenciales
figure;
contour(x, y, V, 30); % 30 curvas de nivel
hold on;
plot(r1(1), r1(2), 'ro', 'MarkerFaceColor','r'); % Carga positiva
plot(r2(1), r2(2), 'bo', 'MarkerFaceColor','b'); % Carga negativa
axis equal;
xlabel('x');
ylabel('y');
title('Equipotenciales de dos cargas puntuales');
colorbar;