[運算] fitting不出實數
最近使用matlab lsqcurvefit去fitting一條曲線,如下:
得到的係數c值都為複數
請問有什麼辦法得到係數c為實數嗎?
------------------------------------------------------------------------------------------------------
%function H=myfunfit(c,x)
%H=c(1).*((x-c(2)).^c(3)).*exp(-(x-c(2))./c(4))
xdata=1:1:11 ;
ydata=[ 0.00136853908023843 0.00327224737961444 -0.00235410622086295
-0.00209889745355390 0.000147327986660035 0.00396265188258335
0.00863674756026050 -0.00328192599393907 0.00104769448586302
-0.00110103561893927 0.00268939666185666 ] ;
c0=[2 2 2 2] ;
[c,resnorm]= lsqcurvefit('myfunfit',c0,xdata,ydata,1,11) ;
x=1:0.1:11 ;
y1=c(1).*((x-c(2)).^c(3)).*exp(-(x-c(2))./c(4)) ;
plot(xdata,ydata,'o',x,y1,'r') ;
grid on ;
c
resnorm
------------------------------------------------------------------------------
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.25.163.136
※ 文章網址: http://www.ptt.cc/bbs/MATLAB/M.1398173519.A.D15.html
推
04/24 14:26, , 1F
04/24 14:26, 1F
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章
5
12
-14
24