最小二乘法--计算方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
生活中的计算方法应用实例———
最小二乘法,用MATLAB实现1. 数值实例
下面给定的是某市最近1个月早晨7:00左右(新疆时间)的天气预报所得到的温度
天数 1 2 3 4 5 6 7 8 9 10 温度9 10 11 12 13 14 13 12 11 9 天数11 12 13 14 15 16 17 18 19 20 温度10 11 12 13 14 12 11 10 9 8 天数21 22 23 24 25 26 27 28 29 30 温度7 8 9 11 9 7 6 5 3 1
下面用MATLAB编程对上述数据进行最小二乘拟合,按照数据找出任意次曲线拟合方程和它的图像。
2、程序代码
x=[1:1:30];
y=[9,10,11,12,13,14,13,12,11,9,10,11,12,13,14,12,11,10,9,8,7,8,9,11,9,7, 6,5,3,1];
a1=polyfit(x,y,3) %三次多项式拟合%
a2= polyfit(x,y,9) %九次多项式拟合%
a3= polyfit(x,y,15) %十五次多项式拟合%
b1= polyval(a1,x)
b2= polyval(a2,x)
b3= polyval(a3,x)
r1= sum((y-b1).^2) %三次多项式误差平方和%
r2= sum((y-b2).^2) %九次次多项式误差平方和%
r3= sum((y-b3).^2) %十五次多项式误差平方和%
plot(x,y,'*') %用*画出x,y图像%
hold on
plot(x,b1, 'r') %用红色线画出x,b1图像%
hold on
plot(x,b2, 'g') %用绿色线画出x,b2图像%
hold on
plot(x,b3, 'b:o') %用蓝色o线画出x,b3图像%
3、数值结果
不同次数多项式拟合误差平方和为:
r1=67.6659
r2=20.1060
r3=3.7952
r1、r2、r3分别表示三次、九次、十五次多项式误差平方和。
4、拟合曲线如下图