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
  • 阅读 ( 413 )
  • 分类:其他类型

相关问题

0 条评论

请先 登录 后评论