clear all;
y=[50 40 30 20 10 ]; x=[55 63 73 100 121];
a=[145.2345667367 -0.02061401470466 ];%設置初值,很關鍵。
f=@(a,x)a(1)*exp(-a(2)*x);
nlinfit(x,y,f,a)
%可以利用toolbox裏面的擬合函數來確定初值:
(先在窗口輸入x,y值)
command window輸入cftool,然後再data裏面選x,y數值。create data set。
Fitting裏面選擇new fit, type of fit 裏面選擇exponential,單擊apply。
在result裏面就可以看到a,b的值。(還有不同的組合)
然後妳點擊File,Generate M-file.
打開妳生成的M-File,裏面有st_就是matlab設置的初值。
希望可以幫到妳。