《数学实验》报告matlab-第五次作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数学实验》报告
实验名称 matlab拟合与插值学院机械工程学院
专业班级
姓名
学号
2011年 10月
一、【实验目的】
掌握Matlab关于采用最小二乘法拟合曲线的方法。学会使用matlab求实际中得到数据的插值曲线。
二、【实验任务】
P130第8、10、12题
三、【实验程序】
P130第8题:
x=[0.10,0.30,0.40,0.55,0.70,0.80,0.95];
y=[15,18,19,21,22.6,23.8,26];
p1=polyfit(x,y,1);
p3=polyfit(x,y,3);
p5=polyfit(x,y,5);
disp('一阶拟合函数'),f1=poly2str(p1,'x')
disp('三阶拟合函数'),f3=poly2str(p3,'x')
disp('五阶拟合函数'),f5=poly2str(p5,'x')
x1=0.1:0.0017:0.95;
y1=polyval(p1,x1);
y3=polyval(p3,x1);
y5=polyval(p5,x1);
plot(x,y,'rp',x1,y1,'--',x1,y3,'k-.',x1,y5);
legend('拟合点','一次拟合','三次拟合','七次拟合')
P130第10题
x=[10,15,20,25,30];
y=[25.2,29.8,31.2,31.7,29.4];
xi=10:.5:30;
yi1=interp1(x,y,xi,'*nearest');
yi2=interp1(x,y,xi,'*linear');
yi3=interp1(x,y,xi,'*spline');
yi4=interp1(x,y,xi,'*cubic');
plot(x,y,'ro',xi,yi1,'--',xi,yi2,'-',xi,yi3,'k.-',xi,yi4,'m:') ,grid on
legend('原始数据','最近点插值','线性插值','样条插值','立方插值')
P130第12题
[x,y]=meshgrid(-3:.5:3);
z=x.^2/16-y.^2/9;
[x1,y1]=meshgrid(-3:.1:3);
z1=x1.^2/16-y1.^2/9;
figure(1)
subplot(1,2,1),mesh(x,y,z),title('数据点')
subplot(1,2,2),mesh(x1,y1,z1),title('函数图象')
[xi,yi]=meshgrid(-3:.125:3);
zi1=interp2(x,y,z,xi,yi,'*nearest');
zi2=interp2(x,y,z,xi,yi,'*linear');
zi3=interp2(x,y,z,xi,yi,'*spline');
zi4=interp2(x,y,z,xi,yi,'*cubic');
figure(2)
subplot(221),mesh(xi,yi,zi1),title('最近点插值')
subplot(222),mesh(xi,yi,zi2),title('线性插值')
subplot(223),mesh(xi,yi,zi3),title('样条插值')
subplot(224),mesh(xi,yi,zi4),title('立方插值')
四、【实验结果】
P130第8题:
一阶拟合函数
f1 =
12.5503 x + 13.9584
三阶拟合函数
f3 =
8.9254 x^3 - 14.6277 x^2 + 19.2834 x + 13.2132
五阶拟合函数
f5 =
146.1598 x^5 - 386.879 x^4 + 385.5329 x^3 - 178.8558 x^2 + 49.9448 x
+ 11.4481
P130第10题
X=18时,Y=30.8;
X=26时,Y=31.6;
P130第12题
五、【实验总结】
对matlab中的有关对数据拟合和插值及图像,尤其是输入数据以及函数指令求函数,数据图像的方法要重点掌握,对不同的拟合和插值方法要掌握牢固。另外,本节的知识和前面学过的二维三维绘图的相关知识联系紧密,很好地结合他们在编程中会有意想不到的收获。