MATLAB怎麼求兩條非線性曲線的相似程度

時間 2021-09-14 22:08:15

1樓:4終

1、首先在電腦桌面找到matlab,建立一個m檔案fun_ex5.m檔案,輸入程式如下。

2、新建的檔案如下圖所示,是一個m檔案,m檔案只能通過matlab開啟,不能在桌面上直接雙擊開啟。

3、在建立一個m檔案,檔名為mycon_ex5.m,定義非線性的約束,程式如下。

4、然後儲存之後,輸入程式,如下圖所示。

5、接著輸入程式,記住字母書寫的方式以及輸入狀態。

6、最後可以看到如下圖所示,最優值為fval=-28.7000,最優解為x=2.91551.8708,就完成了。

2樓:匿名使用者

有很多種方法,比如相關:

corrcoef(y1, y2)

比如r-square (vaf):

norm(y1 - mean(y2))^2/norm(y2 - mean(y2))^2

比如rms (root mean square):

sqrt(sum((y1 - y2).^2)/length(y1));

3樓:弭瑩

請問您解決了嗎,我也有同樣的問題,希望得到您的幫助

4樓:潭念真

同問,請問解決了嗎?

matlab:比較兩個函式曲線的相似度

5樓:匿名使用者

把你的x向量組代入方程,算出一組y1,用y1減去對應的資料組的y2,直接畫殘差圖。

第二個問題,你畫圖時規定一下起始範圍

已經有兩條曲線了,現在要判斷這兩條曲線的重合度,相似度,求高手解答,不知matlab裡面應該用什麼函式

6樓:匿名使用者

如果曲線是可以顯式表copy達的,即可以表示成y=f(x)形式的,那麼可以按y=y1(x)-y2(x)來度量在相同x取值時,對應於函式值y的差別,為了消除正負號,建議加距離尺度,即y=|y1(x)-y2(x)|的平方,即殘差平方和。

7樓:回憶與想法

y=mx+b y=nx+c 先看 m和bain是否du相zhi

等dao

版 ,再看

權 b和c是否相等

如果是ax+by+c=0 mx+ny+d=0 看-a/b和-m/n是否相等 再看-c/b和-d/n

怎麼利用matlab軟體進行非線性曲線模型的模擬?比如richards曲線的模擬,求引數,並要r平方值(擬合度)

8樓:匿名使用者

由於richards曲線方程是非線性函式,所以應用lsqcurvefit()函式來擬合。擬合步驟如下:

t=[0 7 14 21 28];

y=[0.2480 0.7677 1.4190 1.5782 1.6712];

func=inline('a(1)./(1+a(2).*exp(-a(3).*t).^a(4))','a','t');

b=[0.95717      0.48538      0.80028      0.14189];

a=lsqcurvefit(func,b,t,y);

disp(['係數a:',num2str(a(1))])

disp(['係數b:',num2str(a(2))])

disp(['係數k:',num2str(a(3))])

disp(['係數n:',num2str(a(4))])

t1=0:0.5:28;

y1=func(a,t1);

plot(t,y,'ro',t1,y1,'p-','linewidth',2),grid on,xlabel('天數'),ylabel('重量')

legend('擬合前的資料','擬合後的資料')

輸出的圖形

matlab中nlinfit非線性擬合求引數

袁怡圃 補充回答 資料不好 建立函式檔案 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....

用matlab求非線性微分方程問題

手機使用者 順序書這樣的 syms xa t pe 34.1952 1 xa 356.452 37.477 xa 1.529731063 ps 31.801 xa 0.0208 356.452 37.477 xa 1.529731063 ph 38.982 xa 356.452 37.477 xa ...

兩條招財魚打架怎麼辦啊,兩條招財魚打架怎麼辦啊?

滿問裡 很正常你最好還是分開養 沒那麼多魚缸的話還是把其中一條送人吧 這樣打下去會死的 有關招財魚打架的解決辦法 豬豬將軍 養魚打架相關常識 水族箱的面積一定要大,如果水族缸很小,那麼就少養。地方擁擠是魚打架的重要原因。在滿足以上的條件下,養魚要注意養單數。如果水族箱很小了,能養三條最好,養不到三條...