Info

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

How can I non linear fit this equation?

1 回表示 (過去 30 日間)
Pengju
Pengju 2016 年 4 月 19 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
Dear all,
I know the equation which is used for fitting already,something like:
y=E-109736.623./[x1.*(x-p1).^2+x2.*(x-p2).^2+x3.*(x-p3).^2]
I have x value, y value, x1, x2, x3 value, respectively, they are corresponding to fit.txt file column1, column2, column3, column4, column5, respectively.
How can I get E, p1, p2, p3 by using this equation?
Thanks

回答 (1 件)

Walter Roberson
Walter Roberson 2016 年 4 月 19 日
The easiest way is the Curvefitting Toolbox
  14 件のコメント
Pengju
Pengju 2016 年 4 月 22 日
Dear Walter, I am sorry, I still can not figure out the minima.
Best
Walter Roberson
Walter Roberson 2016 年 4 月 22 日
minidx = min(residues(:));
min_is_near = [gE(minidx), gp1(minidx), gp2(minidx), gp3(minidx)];
The larger the matrix you use originally, the more likely it is that you will find a good minima.
The code that I posted does make copies of these arrays, so you end up with about 6 arrays that are 84 by (19 x 19 x 19 x 19). The copies themselves add up, so when you do not have a lot of memory, you might want to break the grid up into sections to search and find the best of the results. For example, if you used 20 x 20 x 20 x 20 then you could search first on (1:5, :, :, :, :) then on (6:10, :, :, :, :) and so on.

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by