Page 46 - 数学建模算法与应用
P. 46

Mathematical Modeling Algorithms and Applications
             数学建模算法与应用


                  clc
                  x = [0.3 0.4 0.7 0.9 1.2 1.9 2.8 3.2 3.7 4.5];

                  y = [1 2 3 4 5 6 9 2 7 4];
                  p5 = polyfit(x,y,5); % 5 阶多项式拟合
                  y5 = polyval(p5,x);

                  figure;
                  plot(x,y,’bo’);      % 原始数据

                  hold on;
                  plot(x,y5,’r:’);    % 5 阶多项式拟合
                  legend(‘原始数据’,’5 阶多项式拟合’);

                  xlabel(‘x’);
                  ylabel(‘y’);

                  p9 = polyfit(x,y,9); % 9 阶多项式拟合
                  y9 = polyval(p9,x);
                  figure;

                  plot(x,y,’bo’);     % 原始数据
                  hold on;

                  plot(x,y9,’g--’);   % 9 阶多项式拟合
                  legend(‘原始数据’,’9 阶多项式拟合’);
                  xlabel(‘x’);

                  ylabel(‘y’);
                  运行程序后,得到的 5 阶多项式如下:
                  p5 =

                     0.8877 * x^5 - 10.3 * x^4 + 42.942 * x^3 - 77.932 * x^2 + 59.833 * x - 11.673
                  运行程序后,得到的输出结果如图 2-1 所示。由图可以看出,使用 5 阶多项

             式拟合时,得到的结果比较差。








             36
   41   42   43   44   45   46   47   48   49   50   51