matlab数据拟合语句,Matlab数据拟合程序 - 范文中心

本次课程设计主要探讨了数据拟合的方法,通过Matlab软件进行了最小二乘拟合,包括直线、抛物线和三次函数的拟合。实验涉及切削机床刀具磨损速度、马尔萨斯人口指数增长模型以及美国旧车价格预测等问题,通过拟合得出相应的数学模型,并对模型进行了验证和预测。此外,还应用最小二乘法求得了经验公式,展示了数据处理和分析的过程。
摘要由CSDN通过智能技术生成

课程设计名称: 设计二:数据拟合 指导教师: 张莉 课程设计时数: 6 课程设计设备:安装了Matlab 、C ++软件的计算机 课程设计日期: 实验地点: 第五教学楼北902 课程设计目的:

1. 了解最小二乘拟合的原理,掌握用MA TLAB 作最小二乘拟合的方法; 2. 学会利用曲线拟合的方法建立数学模型。

课程设计准备:

1. 在开始本实验之前,请回顾相关内容;

2. 需要一台准备安装Windows XP Professional操作系统和装有数学软件的计算机。

课程设计内容及要求

要求:设计过程必须包括问题的简要叙述、问题分析、实验程序及注释、实验数据及结果分析和实验结

论几个主要部分。

1. 用切削机床进行金属品加工时,为了适当地调整机床,需要测定刀具的磨损速度,在一定的时间测量刀具的厚度,得数据如表所示,请选用合适的函数来描述切削时间与刀具厚度的关系。

首先对数据进行分析,画出离散的点,观察点近似的曲线:

t=0:1:15;

y=[30.0 29.1 29.8 28.1 28.0 27.7 27.5 27.2 27.0 26.8 26.5 26.3 26.1 25.7 25.3 24.8]; plot(t,y,'r*')

判断出曲线是近似直线函数,所以对数据进行测试可以做三次函数拟合:

t=0:1:15;

y=[30.0 29.1 29.8 28.1 28.0 27.7 27.5 27.2 27.0 26.8 26.5 26.3 26.1 25.7 25.3 24.8]; %plot(t,y,'r*') A=polyfit(t,y,3) z=polyval(A,t); plot(t,y,'r*',t,z, 'b' )

051015

拟合结果: A =

-0.3099 29.5676

拟合函数为:y=-0.3099t+29.5676

2. Malthus 人口指数增长模型

用以上数据检验马尔萨斯人口指数增长模型,根据检验结果进一步讨论马尔萨斯人口模型的改进。 首先对数据进行分析,画出离散的点,观察点近似的曲线:

x=1790:10:2000;

y=[3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 62.9 76.0 92.0 106.5 123.2 131.7 150.7 179.3 204.0 226.5 251.4 281.4]; plot(x,y,'r*')

[**************]

判断出曲线是近似抛物线函数,所以对数据进行二次函数拟合:

x=1:10:220;

y=[3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 62.9 76.0 92.0 106.5 123.2 131.7 150.7 179.3 204.0 226.5 251.4 281.4]; %plot(x,y,'r*')

A=polyfit(x,y,2); z=polyval(A,x); plot(x,y,'r*',x,z, 'b' ) y=poly2str(A,'x' )

[**************]

拟合函数结果: y =

0.0067365 x^2 - 0.13636 x + 6.4212

3.价格预测

美国旧车价格的调查数据

分析用什么形式的曲线来拟合数据,并预测使用4、5年后的旧车平均价格大致为多少。 首先对数据进行分析,画出离散的点,观察点近似的曲线:

x=1:1:10;

y=[2615 1943 1494 1087 765 538 484 290 226 204];

plot(x,y,'r*')

判断出曲线是近似多次函数,所以对数据进行三次函数拟合:

x=1:1:10;

y=[2615 1943 1494 1087 765 538 484 290 226 204]; %plot(x,y,'r*') A=polyfit(x,y,3); z=polyval(A,x); plot(x,y,'r*',x,z, 'b' ) y=poly2str(A,'x' )

拟合结果:

y =

-2.6548 x^3 + 79.9522 x^2 - 852.8324 x + 3380.1 预测4、5年后的旧车价格为:

>>y= -2.6548 *4^3 + 79.9522* 4^2 - 852.8324* 4 + 3380.1 y =

1.0781e+003

>> y= -2.6548 *5^3 + 79.9522* 5^2 - 852.8324* 5 + 3380.1 y = 782.8930

4.用最小二乘法求一个形如y =a +bx 2的经验公式,数据如下:

x=[19,25,31,38,44];

y=[19.0,32.3,49.0,73.3,97.8];

fun1=inline('c(1)+c(2)*x.^2', 'c' , 'x' ); %拟合函数 k=[0 0];

c=lsqcurvefit(fun1,k,x,y) %求拟合系数

['y=',num2str(c(1)),'+',num2str(c(2)),'x^2']%拟合函数表达式 y1=c(1)+c(2)*x.^2; %拟合函数表达式值

plot (x,y,'b*', x, y1,'r-' ); %绘制x ,y 点与拟合函数,比较拟合程度

10090

[***********]

[1**********]5

实验结果如下:

Optimization terminated: first-order optimality less than OPTIONS.TolFun, and no negative/zero curvature detected in trust region model. c =

0.9726 0.0500

ans =

y=0.97258+0.050035x^2

课程设计总结: 这次实验主要讲的是数据的拟合,对数据的处理首先是观察图像在近似拟合,有的函数掌握的还不够彻底,需要查阅资料才能完成,以后遇到这种问题会更加仔

细,有些错误的地方还希望老师指出,再加以改进,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值