function kg270solution
% drei punkte des dreiecks
xi=[0 1 0];
yi=[0 0 1];

p0=zeros(1,3);                              % inital guess
options=optimset('Display','iter');
pSol=fsolve(@(p)nlgs(p,xi,yi),p0,options);  % newton-verfahren

% Plot
figure(1); plot([xi 0],[yi 0],'r'); hold on;
circle(pSol(1),pSol(2),pSol(3)); axis equal;
end

function F=nlgs(p,xi,yi)
% nichtlineares Gleichungssystem der Form F(p)=0
m1=p(1);
m2=p(2);
r=p(3);
F=[(xi(1)-m1)^2+(yi(1)-m2)^2-r^2; (xi(2)-m1)^2+(yi(2)-m2)^2-r^2; (xi(3)-m1)^2+(yi(3)-m2)^2-r^2];
end

function circle(x,y,r)
ang=0:0.01:2*pi;
xp=r*cos(ang);
yp=r*sin(ang);
plot(x+xp,y+yp);
end

