Curve Fitting for an equation

4 次查看(过去 30 天)
Jay
Jay 2018-9-28
评论: Jay 2019-5-8
Hello
I have an equation like a*(x1^2)+ b(x2^2)+c((x1-x2)^2)+d((x12)^2)=1. Here I have variables of x1, x2, x12. x12 is the variable in the first quardrant. I have data of 12 Points passing through x1, x2 and x12.
I tried fitting the data to the above equation with different ways. But it did not turned out good. I tried with custom equation and some other methods. Could someone help me with getting the coefficients to this equation.
  12 个评论
Jay
Jay 2018-9-28
编辑:Jay 2018-9-28
Hello Torsten
Okay. Can you just eliminate x12 term from the equation and help for the remaining part (a*(x^2)+ b(y^2)+c((x-y)^2)=1). I want to find the values of a,b,c.
Jay
Jay 2018-9-28
Hello Image Analyst
It is not an Ellipse.

请先登录,再进行评论。

采纳的回答

Torsten
Torsten 2018-10-1
编辑:Torsten 2018-10-1
function main
xdata = [...];   % x coordinates of your 12 point
ydata = [...];   % y coordaintes of your 12 points
x0 = [1 1 1];      % initial values for a, b and c
x = lsqnonlin(@(x)fun(x,xdata,ydata),x0)
end
function res = fun(x,xdata,ydata)
res = x(1)*xdata.^2+x(2)*ydata.^2+x(3)*(xdata-ydata).^2-1;
end
  4 个评论
Torsten
Torsten 2019-2-11
https://de.mathworks.com/help/matlab/ref/fimplicit.html
Jay
Jay 2019-5-8
Hello Torsten
Do you how to implement this code in python?

请先登录,再进行评论。

更多回答(1 个)

Pratik Bajaria
Pratik Bajaria 2018-9-28
Hello,
Did you try cftool? It does have provision of adding custom equations too.
Regards, Pratik
  4 个评论
Jay
Jay 2018-9-28
Hello
It does'nt work. As I cannot write the above equation as y= f(x).
Pratik Bajaria
Pratik Bajaria 2018-9-29
Well all equations can be written in y=f(x). Take any of the variables to be y (let's say x12) and all the other variables can be x. Since you have data points available try to write x12=f(x1,x2) and it must work.
Regards.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Get Started with Curve Fitting Toolbox 的更多信息

产品


版本

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by