成绩 | |
辽宁工程技术大学上机实验报告
实验名称 | 数据拟合 | |||||
院系 | 二次元 | 专业 | 图库 | 班级 | 10-1 | |
姓名 | 霸裁君 | 学号 | 2822186764 | 日期 | 2010.1.1 | |
实验 目的 | 简述本次实验目的: [1] 了解最小二乘拟合的基本原理和方法; [2] 掌握用MATLAB作最小二乘多项式拟合和曲线拟合的方法; [3] 通过实例学习如何用拟合方法解决实际问题,注意与插值方法的区别。 | |||||
实验 准备 | 你为本次实验做了哪些准备: 上课认真听课,认真做笔记。在做实验之前,翻阅笔记,回顾上课所讲的内容,有不会的问同学。 | |||||
实验 进度 | 本次共有 4 个练习,完成 4 个。 | |||||
实验 总结 日 | 本次实验的收获、体会、经验、问题和教训: 通过这次实验,我了解了最小二乘拟合的基本原理和方法并掌握了用MATLAB作最小二乘多项式拟合和曲线拟合的方法,还通过实例学习如何用拟合方法解决实际问题,注意与插值方法的区别。MATLAB是一个很方便的软件,只要掌握了具体的方法,就可以不用担心算出的结果是错的。 | |||||
教师 评语 | ||||||
1、假定某天气温变化记录如下表,试用最小二乘方法出这一天的气温变化规律,考虑下列类型函数函数,作图比较效果。
时刻t(h) | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 |
温度T(℃) | 15 | 14 | 14 | 14 | 14 | 15 | 16 | 18 | 20 | 22 | 23 | 25 | 28 | 31 | 32 | 31 | 29 | 27 | 25 | 24 | 22 | 20 | 18 | 17 | 16 |
⑴二次函数;⑵三次函数;⑶钟形函数。
(1)二次函数如下:
t=[0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24];
T=[15 14 14 14 14 15 16 18 20 22 23 25 28 31 32 31 29 27 25 24 22 20 18 17 16];
a=polyfit(t,T,2)
a =
-0.0936 2.5943 8.4157
ti=0:1:24;
Ti=a(1)*ti.^2+a(2)*ti+a(3);
plot(t,T,'*',ti,Ti,'k');
(2)三次函数如下:
t=[0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24];
T=[15 14 14 14 14 15 16 18 20 22 23 25 28 31 32 31 29 27 25 24 22 20 18 17 16];
a=polyfit(t,T,3)
a =
-0.0080 0.1931 -0.1022 13.2513
ti=0:1:24;
Ti=a(1)*ti.^3+a(2)*ti.^2+a(3)*ti+a(4);
plot(t,T,'+',ti,Ti,'b');
(3)钟形函数如下:
x0=[0.2,0.05,0.05];
x=lsqnonlin(@ exam,x0)
Optimization terminated: relative function value
changing by less than OPTIONS.TolFun.
x =
27.9631 -0.0058 0.0500
ti=[0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24];
Ti=27.9631*exp((-0.0058)*(t-14).^2);
plot(t,T,'*',ti,Ti,'r');
2、旧车价格预测
某年美国旧车价格的调查资料如下表,其中表示轿车的使用年数,表示相应的平均价格,试分析用什么形式的曲线来拟合上述的数据,并预测使用4.5年后轿车的平均价格大致为多少?
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | |
2615 | 1943 | 1494 | 1087 | 765 | 538 | 484 | 290 matlab拟合数据 | 226 | 204 | |
函数文件为:
function f=exam(x,t)
t=0:1:24;
T=[15 14 14 14 14 15 16 18 20 22 23 25 28 31 32 31 29 27 25 24 22 20 18 17 16];
f=x(1)*exp(x(2)*(t-14).^2)-T;
2:
x=1:10;
y=[2615 1943 1494 1087 765 538 484 290 226 204];
plot(x,y,'*')
a=polyfit(x,y,2)
a =
1.0e+003 *
0.0361 -0.6508 3.1523
b=polyval(a,4.5)
b =
955.7047
预测使用4.5年后轿车的平均价格大致为955.7047元。
3、经济增长模型
增加生产、发展经济所以靠的主要因素有增加投资、增加劳动力以及技术革新等,在研究国民经济产值与这些因素的数量关系时,由于技术水平不像资金、劳动力那样容易定量化,作为初步的模型,可认为技术水平不变,只讨论产值和资金、劳动力之间的关系。在科学技术
发展不快时,如资本主义经济发展的前期,这种模型是有意义的。
用Q,K,L分别表示产值、资金、劳动力,要寻求的数量关系Q(K,L)。经过简化假设与分析,在经济学中,推导出一个著名的Cobb-Douglas生产函数
(*)
式中要经由经济统计数据确定。现有美国马萨诸塞州1900-1926年上述三个经济指数的统计数据如下,试用数据拟合的方法,求出(*)式中的参数。
a=[1.05 1.18 1.29 1.3 1.3 1.42 1.5 1.52 1.46 1.6 1.69 1.81 1.93 1.95 2.01 2 2.09 1.96 2.2 2.12 2.16 2.08 2.24 2.56 2.34 2.45 2.58];
>> y=[1.04 1.06 1.16 1.22 1.27 1.37 1.44 1.53 1.57 2.05 2.51 2.63 2.74 2.82 3.24 3.24 3.61 4.1 4.36 4.77 4.75 4.54 4.54 4.58 4.58 4.58 4.54];
x0=[0.1,0.1,0.2];
x=curvefit('exam1',x0,y,a)
x=1.2246 0.4612 -0.1277
调用函数为:
function f=exam1(x,y)
f=x(1)*(y(1,:).^2)).*(y(2,:).^x(3));
4:
xdata=[1;2;5;7;9;3];
ydata=[7;6;8;7;5;7];
[x,resnorm]=lsqcurvefit(@robot,[1 2 3],xdata,ydata)
Optimization terminated: relative function value
changing by less than OPTIONS.TolFun.
x =
3.8626 10.0483 1.6100
resnorm =
4.4020
xi=linspace(0,2,200);y=polyval(x,xi);
plot(xdata,ydata,'*',xi,y)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论