1樓:袁怡圃
補充回答:資料不好
建立函式檔案:
function y = myfun(beta,x)y = 2.350176*beta(1)*(1-1/beta(2))*(1-(1-x(:,1).
^(1/beta(2))).^beta(2)).^2.
*(x(:,1).^(-1/beta(2))-1).
^(-beta(2)).*x(:,1).
^(-1/beta(2)-0.5).*x(:
,2);
執行**:
x=[0.4292 0.4269 0.
381 0.4015 0.4117 0.
3017; 0.00014 0.00059 0.
0126 0.0061 0.00425 0.
0443];
x = x';
y=[0.517 0.509 0.44 0.466 0.479 0.309];
y = y';
beta=nlinfit(x,y,@myfun,[8 0.5])執行結果:
beta =
-55262931764.9336 0.0517
2樓:匿名使用者
clear all;
x1=[0.4292 0.4269 0.381 0.4015 0.4117 0.3017]';
x2=[0.00014 0.00059 0.0126 0.0061 0.00425 0.0443]';
x=[x1 x2];
y=[0.517 0.509 0.44 0.466 0.479 0.309]';
f=@(p,x) 2.350176*p(1)*(1-1/p(2))*(1-(1-x(:,1).
^(1/p(2))).^p(2)).^2.
*(x(:,1).^(-1/p(2))-1).
^(-p(2)).*x(:,1).
^(-1/p(2)-0.5).*x(:
,2);
p0=[8 0.5]';
opt=optimset('tolfun',1e-3,'tolx',1e-3);
[p r]=nlinfit(x,y,f,p0,opt)
matlab中非線性擬合函式nlinfit引數中那個beta0是怎麼確定的?
3樓:匿名使用者
確定beta0值是比較困難的,但可以通過rand( )函式來初定,再通過多次調整,才能得到滿意beta0值(當相對差
回值r都比較小)答。
本例的beta0可取
beta0 =[0.92181 0.73821 0.17627 0.40571]
執行後得到
k = 20.738 -2.6401 0.14569 2.9844
如何利用matlab擬合非線性迴歸函式的初始引數
4樓:匿名使用者
推薦你使用
一個函式nlinfit,我簡單給你介紹一下使用方法,以你的模型2為例: 第一步:你需要建立一個function檔案,名字隨便,這裡我們命名為"hougen",在這個檔案內,你要把模型二描述清楚,首先我們假定beta=[a;b;c;d;e;f;g];x=[x,y,m];
matlab 曲線擬合求函式的最佳引數時怎麼確定引數的初始值x=[2:16];
y=[6.42 8.2 9.
58 9.5 9.7 10 9.
93 9.99 10.49 10.
59 10.6 10.8 10.
6 10.9 10.76];
plot(x,y,'*');
% b0=;%待定引數的初始值
fun=inline('b(1)*(1-b(2)*exp(b(3)*x))','b','x');
[b,r,j]=nlinfit(x,y,fun);
br=sum(r.^2)%誤差的平方和
求用matlab解決非線性擬合問題求相關引數。題目在下邊
5樓:我行我素
這個擬合是可以做的,可把資料發過來,不要用**,因為**中的數字不能在程式中複製、貼上。我的qq2674716548
如何在matlab中呼叫matlab中已有的函式
呼叫函式檔案 myfile.m clear clcfor t 1 10 y mylfg t end 自定義函式檔案 mylfg.m function y mylfg x 注意 函式名 mylfg 必須與檔名 mylfg.m 一致 y x 1 3 注 這種方法要求自定義函式必須單獨寫一個m檔案,不能與...
在MATLAB中,如何找出矩陣的非零元素。並且輸出它所在的行
r 1 2 3 1 21 0 0 0 44 0 5 0 61 1 1 1 05 0 8 6 0 b r 0 b 1 1 1 1 11 0 0 0 11 0 1 0 11 1 1 1 01 0 1 1 0從矩陣思考,按這樣寫。再幹什麼的話,不行你就for吧。巢狀一個for,搞定。for i 1 5 f...
matlab的plot命令,matlab中 plot函式全部功能怎麼用
我行我素 畫出圖形後一看就明白了 中括號一般表示區間或資料點,plot 2,1.1 中表示y座標,plot 2,1.1,1.1,2 1.1,1.1,1.1,1.1 中表示x座標和y座標的區間端點和資料值 1 沒有中括號就是表示點的意思,第一個就畫點 2,1.1 2 像樓上說得,中括號是構造矩陣用的,...