:򷽳/Բ

ʽ:
[w,er]=SphereFit(x,y,z)
[w,er]=SphereFit(x,y)

x:洢xԪ
y:洢yԪ,עάxӦ
z:洢zԪ,עάxӦ.˲ʱ,ƽԲ̽

w:صϵ
er:صľ

˵:
1,ϷΪ (x-a)^2+(y-b)^2+(z-c)^2=R^2 ϵϵabcR^2ӳw,
w = [ a , b , c , R^2 ]
erӳǵʽ߲ľ, Er = [(x-a)^2+(y-b)^2+(z-c)^2-R^2]

2ƽϵԲ,ϷΪ (x-a)^2+(y-b)^2=R^2 ϵϵabR^2ӳw,
w = [ a , b , R^2 ]
erӳǵʽ߲ľ, Er = [(x-a)^2+(y-b)^2-R^2]

ԭ:
1,ϷΪ (x-a)^2+(y-b)^2+(z-c)^2=R^2Է̽չȻοɵõ
x^2+y^2+z^2 = (2*x)*a + (2*y)*b + (2*z)*c + R^2-a^2-b^2-c^2

2ΪxyzΪ֪,ô
//űʾһƾ
B =[ x^2+y^2+z^2 ]
A =[ 2*x , 2*y , 2*c , 1 ]
X =[ a , b , c , R^2-a^2-b^2-c^2]

31㷽̱ A*X=B ,һԷ,򱾳ԷС˽⼴

:

//Է (x-1)^2+(y-2)^2+(z-3)^2=1 Ϊ

x=[0,1,1,1,1,2];y=[2,2,2,1,3,2];z=[3,2,4,3,3,3];[w,er]=SphereFit(x,y,z)//سõµĽ,ԤĽȫһ
w =
[ 1.00000000000000    2.00000000000001    3.00000000000002    1.00000000000000 ]
er =
[ 3.2311742677E-27 ]