久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Matlab曲線擬合

 昵稱9506269 2012-03-31
     最近用Matlab處理實(shí)驗(yàn)數(shù)據(jù),擬合曲線用的較多,。
    
  Excel擬合曲線方程
 
     Excel可以通過畫散點(diǎn)圖,,添加趨勢(shì)線,對(duì)數(shù)據(jù)進(jìn)行簡單的對(duì)數(shù),,線性,,多項(xiàng)式,指數(shù),,冪函數(shù)曲線擬合,,可能不適用于它們的組合,也就是交復(fù)雜的線性,;另一種方法是使用加載項(xiàng)中的規(guī)劃求解,,運(yùn)用統(tǒng)計(jì)和數(shù)值分析知識(shí),確定目標(biāo)函數(shù)和擬合參數(shù)初值,,然后求出最優(yōu)的擬合參數(shù),,畫出散點(diǎn)圖,觀看效果,。
     第二種方法,,可以參考用論文《EXCEL及其規(guī)劃求解功能擬合曲線方程》    http://ishare.iask.sina.com.cn/f/18741114.html?from=like
   
   Matlab擬合曲線方程
   Matlab擬合曲線,可以使用最優(yōu)化工具箱里的非線性擬合函數(shù)lsqcurvefit(最小二乘法)和 概率論和數(shù)理統(tǒng)計(jì)工具箱里的非線性回歸函數(shù)nlinfit函數(shù)或nlintool函數(shù),,還有直接求最小二乘解,,若是多項(xiàng)式的擬合,,用ployfit函數(shù)。
  
    Matlab的曲線擬合工具箱CFtool使用簡介
    注意的是cftool 工具箱只能進(jìn)行單個(gè)變量 的曲線擬 
 
 1.  lsqcurvefit
 [x,res] = lsqcurvefit(fun,x0,xdata,ydata,lb,ub)
其中,,fun是在M文件中定義的函數(shù),,xdata,ydata為原始數(shù)據(jù),x0是函數(shù)中參數(shù)的初始值,,lb,、ub分別為變量x的下限、上限,;x為參數(shù)的最優(yōu)值,,res是x的殘差平方和sum((fun(x,xdata)-ydata).^2)
 
1)編寫函數(shù)文件
 function Thta = hth(x,ht)
 %編寫函數(shù)M文件,內(nèi)容如下
%編寫完畢,,保存為hth.m
 Thta=(x(3)-x(4))./((1+(x(1).*ht).^x(2)).^(1-(1./x(2))))+x(4);

%不運(yùn)行hth.m,,而是進(jìn)行下一步驟,否則提示x未定義
%在命令窗口輸入,以下內(nèi)容
ht=[0 27.2 53.04 62.56 69.36 81.60 95.20 108.80 126.48 159.12 197.20 251.60 262.48 286.96 359.04 452.88 503.20];
th=[476 434 406 401 392 382 365 351 335 312 287 271 261 253 252 236 234]*0.001;
x0=[0.1 1.5 0.5 0.1];
x1=[0 1 0 0];
x2=[5 5 1 1];
[x resnorm]=lsqcurvefit(@hth,x0,ht,th,x1,x2)
 
2)定義內(nèi)置函數(shù)
      f=inline(fun,'參變量','自變量')
 fx=inline('(x(3)-x(4))./((1+(x(1).*ht).^x(2)).^(1-(1./x(2))))+x( 4)','x','ht');
ht=[0 27.2 53.04 62.56 69.36 81.60 95.20 108.80 126.48 159.12 197.20 251.60 262.48 286.96 359.04 452.88 503.20];
th=[476 434 406 401 392 382 365 351 335 312 287 271 261 253 252 236 234]*0.001;
x0=[0.1 1.5 0.5 0.1];
x1=[0 1 0 0];
x2=[5 5 1 1];
[x,res]=lsqcurvefit(f,x0,ht,th,x1,x2)
y1=fx(x,ht);
plot(th,ht,' o',y1,ht,'-')
 
 
2.nlinfit
  [beta,r,J] = nlinfit(x,y,fun,beta0)
 其中,,x,y為原始數(shù)據(jù),,fun是在M文件中定義的函數(shù),beta0是函數(shù)中參數(shù)的初始值,;beta為參數(shù)的最優(yōu)值,,r是各點(diǎn)處的擬合殘差,J為雅克比矩陣的數(shù)值.
%非線性回歸
fun=inline('(x(3)-x(4))./((1+(x(1).*ht).^x(2)).^(1-(1./x(2))))+x(4)','x','ht');
ht=[0 27.2 53.04 62.56 69.36 81.60 95.20 108.80 126.48 159.12 197.20 251.60 262.48 286.96 359.04 452.88 503.20];
th=[476 434 406 401 392 382 365 351 335 312 287 271 261 253 252 236 234]*0.001;
x0=[0.1 1.2 0.5 0.1];
[x,r,J]=nlinfit(ht,th,fun,x0);
x
R=sum(r.^2)                        %誤差平方和
y=fun(x,ht); 
plot(th,ht,'*',y,ht,'-r')
 
3.求最小二乘解
 
%函數(shù)線性組合的曲線擬合方法
%y(x)=c1+c2*exp(-3*x)+c3*cos(-2*x).*exp(-4*x)+c4*x.^2
x=[0 0.2 0.4 0.7 0.9 0.92 0.99 1.2 1.4 1.48 1.5]';
y=[2.88 2.2576 1.9683 1.9258 2.0862 2.109 2.1979 2.5409 2.9627 3.155 3.2052]';
A=[ones(size(x)),exp(-3*x),cos(-2*x).*exp(-4*x),x.^2];
c=A\y;                                                    %最小二乘解
c1=c'
x0=[0:0.01:1.5]';
A1=[ones(size(x0)),exp(-3*x0),cos(-2*x0).*exp(-4*x0),x0.^2];
y1=A1*c;
plot(x0,y1,x,y,'rx');
 
4.polyfit
 
plot(x,y,n),根據(jù)數(shù)據(jù)x,y得到一個(gè)n次擬合多項(xiàng)式P(x)的系數(shù),;polyval(p,x)由系數(shù)p(從高次到低次順序)確定的多項(xiàng)式在x個(gè)點(diǎn)上的值
x=1:0.5:5;
y=[2.6 3.3 3.7 4.0 4.1 4.0 3.8  3.3 2.8];
p=polyfit(x,y,2)
y1=polyval(p,x);
plot(x,y1,x,y,'ro')
 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多