Info

この質問は閉じられています。 編集または回答するには再度開いてください。

Solving system of eqution using vectors

1 回表示 (過去 30 日間)
Anezka Koterova
Anezka Koterova 2020 年 1 月 14 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
Hi,
I have a problem with solving of equation, where unknown are vectors (coordinates of set of points: seznamX, seznamY, seznamZ) and my part of the program for solving it is:
syms r x y z
[l, m, n, Q] = solve(2*sqrt((seznamX-x).^2+(seznamY-y).^2+(seznamZ-z).^2)==r*ones(1,e),[x,y,z,r]);
It means I want to interpolate these points [seznamX,seznamY,seznamZ] with sphere and find its centre.
After running the program, it stops after the line [l, m, n, Q] , where a work with l. It returns me "Error in sym/subsasgn".
Where is the problem and how could I solve it?
Thank you for reply.

回答 (1 件)

darova
darova 2020 年 1 月 14 日
You should create a system of equations. You need 4 points and 4 equations
syms x0 y0 z0 r0
eq1 = (x0-x(1))^2 + (y0-y(1))^2 + (z0-z(1))^2 == r0^2;
% ...
  5 件のコメント
darova
darova 2020 年 1 月 16 日
Something like that
ix = z < mean(z); % take a half
x1 = x(ix);
y1 = y(ix);
z1 = z(ix);
F = @(a,b,c,r,x,y) sqrt( r.^2 - (x-a).^2 - (y-b).^2 ) + c;
f = fit([x1 y1],z1,F);
Anezka Koterova
Anezka Koterova 2020 年 1 月 18 日
I do not understand this script. what means the first, last and fifth line?

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by