• <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>

    MATLAB多項式求解和曲線擬合

    利用MATLAB進行數據闡發計較經常需要用到進行多項式求解,和進行曲線擬合一些特征方程曲線,常用方式有最小二乘法和統計回歸法。下面分享給大師利用MATLAB進行多項式求解和曲線擬合的方式、法式代碼和步調,但愿可以或許幫忙大師。

    東西/原料

    • 電腦
    • MATLAB
    • MATLAB多項式求解和曲線擬合

    MATLAB多項式求解

    1. 1

      第一步:我們起首進修MATLAB多項式求解,有兩種求解方式,一種是操縱polyval 函數求解單個多項式,一種是操縱polyvalm 函數求解多個多項式。二者的求解代碼如下:

      p = [3 2 0  -1 4];

      polyval(p,4)

      y = [2 3 0  -6 7];

      x = [1 3 -3 2; 1 -3 2 1; 3 1 0 1; 5 -2 3 6];

      polyvalm(y, x)

      我們將其寫入到MATLAB法式中,如下圖所示。

    2. 2

      第二步:我們運行上述MATLAB求解多項式法式代碼,得出的運行成果為:

      ans =

         896

      ans =

              1422          53         167        1766

               894         112          94        1114

              1362          91         187        1708

              5394         313         625        6838

      如下圖所示。

    MATLAB多項式曲線擬合

    1. 1

      第一步:我們對多項式進行曲線擬合可以利用polyfit 函數,該函數可以或許很好地進行曲線擬合,用法MATLAB法式代碼為:

      p = polyfit(x,y,n)

      我們可以輸入到MATLAB中按F1查看該函數更多信息。

    2. 2

      第二步:知道了曲線擬合polyfit 函數的用法后,我們編寫法式進行曲線擬合,若是不需要輸出圖形則利用如下法式代碼:

      x = [1 2 3 4 5 6]; 

      y = [5.5 43.1 128 290.7 498.4 978.67];  %data

      p = polyfit(x,y,4)   %get the polynomial

      我們將其寫入到MATLAB法式中,如下圖所示。

    3. 3

      第三步:我們再運行上面的擬合法式代碼,可以得出的擬合方程式的系數為:

      p =

          4.1056  -47.9607  222.2598 -362.7453  191.1250

      如下圖所示。

    4. 4

      第四步:若是我們需要直不雅的顯示曲線擬合結果,畫圖是少不了了,我們在上述代碼的后面加上如下代碼:

      % Compute the values of the polyfit estimate over a finer range, 

      % and plot the estimate over the real data values for comparison:

      x2 = 1:.1:6;          

      y2 = polyval(p,x2);

      plot(x,y,'o',x2,y2)

      grid on

      如下圖所示。

    5. 5

      第五步:我們再次運行法式,可以得出MATLAB多項式曲線擬合的圖形如下圖所示,我們可以看到該曲線擬合結果是很好的。

    6. 6

      第六步:完整法式代碼如下:

      x = [1 2 3 4 5 6]; y = [5.5 43.1 128 290.7 498.4 978.67];  %data

      p = polyfit(x,y,4)   %get the polynomial

      % Compute the values of the polyfit estimate over a finer range, 

      % and plot the estimate over the real data values for comparison:

      x2 = 1:.1:6;          

      y2 = polyval(p,x2);

      plot(x,y,'o',x2,y2)

      grid on

    注重事項

    • 上面是利用MATLAB進行多項式求解和曲線擬合的方式、法式代碼和步調,不足之處望以點竄斧正。
    • 上面是利用polyfit 函數進行多項式曲線擬合,MATLAB還有其他曲線擬合的函數,我們按照現實環境進行選擇和利用,方式近似。
    • 發表于 2018-04-20 00:00
    • 閱讀 ( 1493 )
    • 分類:其他類型

    你可能感興趣的文章

    相關問題

    0 條評論

    請先 登錄 后評論
    admin
    admin

    0 篇文章

    作家榜 ?

    1. xiaonan123 189 文章
    2. 湯依妹兒 97 文章
    3. luogf229 46 文章
    4. jy02406749 45 文章
    5. 小凡 34 文章
    6. Daisy萌 32 文章
    7. 我的QQ3117863681 24 文章
    8. 華志健 23 文章

    聯系我們:uytrv@hotmail.com 問答工具
  • <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>
    久久久久精品国产麻豆