フィルターのクリア

lsqcurvefit.m ... how to find intermediate steps?

2 ビュー (過去 30 日間)
Michael
Michael 2012 年 10 月 31 日
Hi
I'm fitting using lsqcurvefit and the OUTPUT structure tells me there are 4 steps with 20 function evaluations before the stopping criteria is reached. Is there any way to find the parameter values at each of these steps?
My goal is to plot each fit to demonstrate the improvement between model and data.
Regards, Michael
  1 件のコメント
Michael
Michael 2012 年 10 月 31 日
I'm trying to do this using output functions, but the form of the function seems very restrictive, and it doesn't allow me to store the intermediate values in some pre-allocated matrix. All I can do is print the output, which means everything from that point on must be done manually... any help?

サインインしてコメントする。

回答 (2 件)

Sean de Wolski
Sean de Wolski 2012 年 10 月 31 日
You could have your objective function print to a text file explicitly or keep a persistent variable around that stores the intermediate steps.
  4 件のコメント
Matt J
Matt J 2012 年 10 月 31 日
編集済み: Matt J 2012 年 10 月 31 日
His post says that there are 4 "steps" (I assume that means iterations) and 20 function evaluations, and that he wants the parameter values at each of the "steps", not at each function evaluation.
Sean de Wolski
Sean de Wolski 2012 年 10 月 31 日
Ahh.. quite possibly, yeah.

サインインしてコメントする。


Matt J
Matt J 2012 年 10 月 31 日
編集済み: Matt J 2012 年 10 月 31 日
No, it's not true that you can't store intermediate output to a matrix using an OutputFcn. The following example shows how to do this

カテゴリ

Help Center および File ExchangeVariables についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by