alex
public text v1 · immutableclf, clear, hold on, format long, axis equal
% (x-x0)^2 + (y-y0)^2 = R^2
x = [1.1, 1.5, 2.2, 3.2, 4.5, 4.8]';
y = [0.7, 1.9, 3.1, 3.0, 2.3, 1.0]';
x0=0; y0=0; r0=2;
c = [x0, y0, r0]';
for iter=1:5
r0m = ones(length(x),1) * r0;
f = [(x - x0).^2 + (y - y0).^2 - r0^2];
J = -2*[(x - x0), (y - y0), r0m];
dc = -J\f;
c = c + dc;
x0 = c(1); y0 = c(2); r0 = c(3);
end
c
plot(x, y, '*');
phi = 0:pi/60:2*pi;
plot(c(1)+c(3)*cos(phi), c(2)+c(3)*sin(phi));