Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

MATLAB Curve Fitting (Ellipse-like)

I need to fit 10 data points (x,y) into this equation:

ay² + bxy + cx + dy + e = x²

It's told that this is a ellipse-like equation. I can't do it with usual curve fitting tools because it is not really a function (one x corresponds to 2 ys). I can't either use ellipse curve fitting because there is no c*x and d*y in an ellipse equation. Any ideas?

Thanks in advance.

EDIT: Both Oil and AK4749 gave right answer! Thank you guys!

like image 707
user1532230 Avatar asked Oct 27 '25 02:10

user1532230


1 Answers

It is a linear system with variables [a b c d e]. You can use \ to solve it:

 x=rand(10,1);
 y=rand(10,1);
 [y.^2,x.*y,x,y,ones(numel(x),1)]\x.^2

ans =

   -0.4437 %% a
    1.1034 %% b
    0.5337 %% c
   -0.2808 %% d
    0.0402 %% e
like image 164
Oli Avatar answered Oct 29 '25 08:10

Oli