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

