实验七 数据处理 实验目的:学习根据实验数据,寻找一个尽可能与已知数据吻合的函数,实现手段主要为数据拟合或插值 预备知识: 实验七 数据处理 实验目的:学习根据实验数据,寻找一个尽可能与已知数据吻合的函数,实现手段主要为数据拟合或插值 预备知识: (一)数据拟合基本概念及Fit命令 (二)插值基本概念及Mathematic相关命令
边学边做: (一)数据拟合 (1)滑轮组中重物质量与所需力关系的确定 (2)化学反应中反应物存量与反应时间的关系 (二)插值 (1)简单数据{1,4,5,8}的拟合 (2)根据日出日落时间表,确定白天最长的一天 (3)飞机机翼轮廓线的确定
学生实验: 应用部分 (1)测量一只对温度敏感的电阻,得到一组温度t与电阻R的数据为: 请根据以上数据确定60°C时的电阻有多大. t 20.5 32.7 51.0 73.0 95.7 R 765 826 873 942 1032
(2)用电压V=10伏的电池给电容器充电,电容器上t时刻的电压为 ,其中V0是电容器的初始电压,τ是充电常数,试由下面一组t,V数据确定V0和τ. 0.5 1 2 3 4 5 7 9 υ(t) 6.36 6.48 7.26 8.22 8.66 8.99 9.43 9.63
(3)为了检验X射线的杀菌作用,用2000V的X射线来照射细菌,每次照射6min,照射次数记为t,共照射15次,各次照射后所剩的细菌数y如下表所示,请选择适当曲线对数据进行拟合. 355 6 106 11 36 2 211 7 104 12 32 3 197 8 60 13 21 4 160 9 56 14 19 5 142 10 38 15
4.作出函数f(x)和插值多项式的图形,作一比较. (4)给出概率积分 的数据表如下: 1.求该数据的三次插值多项式 2.当x=0.472时,该积分值等于多少? 3.当x为何值时,积分值等于0.5? 4.作出函数f(x)和插值多项式的图形,作一比较. X 0.46 0.47 0.48 0.49 f(x) 0.4846555 0.4937452 0.5027498 0.5116483
实验七内容详解: 一、数据拟合 1、基本思路 给定一组数据 ,在直角坐标系表示平面上n个点,这些点也称为节点,数据拟合即确定一个一元函数y=f(x),使节点与这个函数的曲线总体来说最为接近,即曲线拟合最好。 2、命令格式 Fit[{{x1,y1},{x2,y2},…},{1,x,x2,…},x] 拟合函数为多项式函数
(1)有一滑轮组,要举起W千克的重物需要用F千克的力,试验所得数据为 3、边学边做 (1)有一滑轮组,要举起W千克的重物需要用F千克的力,试验所得数据为 试根据试验数据求相应的拟合函数 解 Clear[a,d,x] d={{20,4.35},{40,7.55},{60,10.40},{100,16.80}}; a=ListPlot[d,PlotStyle->{RGBColor[1,0,0],PointSize[0.02]}] 作出散点图并观察,考虑用直线拟合 w 20 40 60 80 100 F 4.35 7.55 10.40 13.80 16.80
f=Fit[d,{1, x}] \输出结果为1.253+0.15575x b=Plot[f,{x,20,100}] Show[a,b] 说明:数据拟合时,常用的曲线有直线y=a+bx,多项式y=a1+a2x+a3x2+…+anxn-1(一般n=2,3,不宜过高),双曲线 ,指数曲线y=aebx,对于双曲线与指数曲线,拟合前需作变量代换,化为线性函数。
2)在研究某单分子的化学反应速度时,得到下列数据 试根据实验数据确定经验函数 解 (1) 作散点图观察点的特征 t={3,6,9,12,15,18,21,24}; y={57.6,41.9,31.0,22.7,16.6,12.2,8.9,6.5}; data=Transpose[{t,y}] p=ListPlot[data,PlotStyle->{RGBColor[0,0,1],PointSize[0.01]}]; 反应时间t 3 6 9 12 15 18 21 24 反应物存量y 57.6 41.9 31.0 22.7 16.6 12.2 8.9 6.5
观察图形数据点不在一直线上,根据化学反应理论,拟合函数应选指数函数y=aebt,其中a,b待定。取对数有lny=lna+bt,即lny与t 是线性函数关系
(2)根据以上分析对lny与t进行线性拟合 yy=Log[y]; data1= Transpose[{t,yy}] ly=Fit[data1,{1,t},t] \输出结果为4.36399-0.103686t (3)确定原待定系数 ny=Exp[ly] Factor[%] \输出结果为78.57e-0.103686t, (4)验证拟合效果 q=Plot[ny,{t,1,25},PlotStyle->RGBColor[1.000,0.000,0.502]]; Show[p,q]
二、插 值 1、基本思路 给定一组数据,在直角坐标系中表示平面上n个点,插值即构造一个相对简单的函数y=f(x),使函数图象通过全部给定点。插值方式通常有多项式插值(拉格朗日插值),分段线性插值,三次样条插值 2、命令格式 对给定数据构造插值多项式: InterpolatingPolynomial[{数据表},x] 分段低次插值,可借用ListPlot函数: ListPlot[{数据表},PlotJoined->True] 三次样条插值:《NumericalMath’SplineFit’调入插值函数软件包 SplineFit[{数据表},Cubic]
3、边学边做 (1)使用InterpolatingPolynomial对数据{1,4,5,8}进行插值 解 InterpolatingPolynomial[{1,4,5,8},x] \输出结果为 Simplify[%] \输出结果为
(2) 根据观测记录,某地每间隔30天的日出日落时间如下表,求数据表的二次多项式插值,并利用插值结果计算这一年中哪一天的白天最长? 5月1日 5月31日 6月30日 日出时间 4:15 4:17 4:16 日落时间 19:04 19:38 19:50 时间x天 30 60 昼长y(min) 853.00 921.00 934.00
解 data={{0,853.00},{30,921.00},{60,934.00}} f=InterpolatingPolynomial[data,x] \输出结果为-0.0305556 (-227.105+x) (122.923 +x) Expand[f] \输出结果为853. +3.18333 x-0.0305556x2 FindMinimum[-f,{x,30}] \输出结果为{-935.911,{x->52.0909}} 结论:当x=52时,即5月1日后的第52天,也就是6月22日白天最长,计算结果与实际情况相符(农历夏至的白昼最长,夏至一般在每年6月21日或6月22日)
3)在飞机制造业中,机翼的加工是一项关键技术,由于机翼的尺寸很大,通常在图纸中只能标出某些关键点的数据,而在用程控铣床加工时每一刀只能沿x方向和y方向走非常小的一步,因而需要从已知数据得到加工所要求的步长很小的坐标。试根据表中给出的某型号飞机机翼下轮廓线的部分数据寻找插值函数,并画出机翼轮廓线 x 3 5 7 9 11 12 13 14 15 y 1.2 1.7 2.0 2.1 1.8 1.0 1.6
解 data={{0,0},{3,1. 2},{5,1. 7},{9,2. 1},{11,2. 0},{12,1. 8},{13,1 《NumericalMath’SplineFit’ SplineFit[data,Cubic] 对比 InterpolatingPolynomial[data,x];ListPlot[data,PlotJoined->True]