数据插值与曲线拟合共69页文档
- 格式:ppt
- 大小:6.60 MB
- 文档页数:35
实验报告实验目的:掌握数据插值与曲线拟合的方法与应用。
掌握求数值倒数、数值积分、代数方程数值求解、常微分方程数值求解的方法 掌握定义符号对象、求符号函数极限及导数、求符号函数积分的方法实验内容:1 求22)ln(lim y x e x y ++2.计算I=dxdy y x dxdy x f D D )2(21)(--=⎰⎰⎰⎰,其中D 为直线2x y =所围部分 3.求下列变上限积分对变量x 的导数;.2dx x a x x ⎰+4 求高阶微分方程,022''=-++xyz z y y 确定了函数y z x z y x z z ∂∂∂∂=),.(format compact>> input('my name is:','s')my name is:liu yangans =liu yangclear>> fxy=sym('log(x+exp(y))/sqrt(x^2+y^2)')fxy =log(x + exp(y))/(x^2 + y^2)^(1/2)>> result=limit(limit(fxy,'x',1),'y',0)result =log(2)>> clearsyms x yf=(2-x-y)/2;y1=x;y2=x^2;X=solve('x-x^2=0')fdy=int(f,y,x^2,x)X =1fdy =(x*(x - 1)^2*(x + 4))/4>>I=int(fdy,x,X(1),X(2))I =11/120>> clear>> syms a x t y1 y2>> y1=sqrt(a+t)y1 =(a + t)^(1/2)>> y2=int(y1,t,x,x^2);Warning: Explicit integral could not be found. >> diff(y2,x)ans =2*x*(x^2 + a)^(1/2) - (a + x)^(1/2)clear>> y1=dsolve('D2y-10*Dy+9*y=exp(2*x)','Dy(0)=33/7,y(0)=6/7')y1 =exp(2*x)/9 - exp(t)*(exp(2*x)/8 - 3/8) + exp(9*t)*(exp(2*x)/72 + 27/56)clearsyms x y zf=x+2*y-2*sqrt(x*y*z);>> fx=diff(f,x);fy=diff(f,y);fz=diff(f,z);>> zx=-fx/fzzx =-(((y*z)/(x*y*z)^(1/2) - 1)*(x*y*z)^(1/2))/(x*y)>> zy=-fy/fzzy =-(((x*z)/(x*y*z)^(1/2) - 2)*(x*y*z)^(1/2))/(x*y)clear[x,y,z]=solve('x*y^2+z^2=0','y-z=1','x^2-5*x+6')x =2332y =1/3 + (2^(1/2)*i)/31/4 + (3^(1/2)*i)/41/4 - (3^(1/2)*i)/41/3 - (2^(1/2)*i)/3z =- 2/3 + (2^(1/2)*i)/3 - 3/4 + (3^(1/2)*i)/4 - 3/4 - (3^(1/2)*i)/4 - 2/3 - (2^(1/2)*i)/3。
第11章曲线拟合与插值在大量的应用领域中,人们经常面临用一个解析函数描述数据(通常是测量值)的任务。
对这个问题有两种方法。
在插值法里,数据假定是正确的,要求以某种方法描述数据点之间所发生的情况。
这种方法在下一节讨论。
这里讨论的方法是曲线拟合或回归。
人们设法找出某条光滑曲线,它最佳地拟合数据,但不必要经过任何数据点。
图11.1说明了这两种方法。
标有'o'的是数据点;连接数据点的实线描绘了线性内插,虚线是数据的最佳拟合。
11.1 曲线拟合曲线拟合涉及回答两个基本问题:最佳拟合意味着什么?应该用什么样的曲线?可用许多不同的方法定义最佳拟合,并存在无穷数目的曲线。
所以,从这里开始,我们走向何方?正如它证实的那样,当最佳拟合被解释为在数据点的最小误差平方和,且所用的曲线限定为多项式时,那么曲线拟合是相当简捷的。
数学上,称为多项式的最小二乘曲线拟合。
如果这种描述使你混淆,再研究图11.1。
虚线和标志的数据点之间的垂直距离是在该点的误差。
对各数据点距离求平方,并把平方距离全加起来,就是误差平方和。
这条虚线是使误差平方和尽可能小的曲线,即是最佳拟合。
最小二乘这个术语仅仅是使误差平方和最小的省略说法。
图11.1 2阶曲线拟合在MA TLAB中,函数polyfit求解最小二乘曲线拟合问题。
为了阐述这个函数的用法,让我们以上面图11.1中的数据开始。
» x=[0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1];» y=[-.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2];为了用polyfit,我们必须给函数赋予上面的数据和我们希望最佳拟合数据的多项式的阶次或度。
如果我们选择n=1作为阶次,得到最简单的线性近似。
通常称为线性回归。
相反,如果我们选择n=2作为阶次,得到一个2阶多项式。
现在,我们选择一个2阶多项式。
数值计算...........3.-.插值和曲线拟合插值法是实用的数值方法,是函数逼近的重要方法。
在生产和科学实验中,自变量x与因变量y的函数y = f(x)的关系式有时不能直接写出表达式,而只能得到函数在若干个点的函数值或导数值。
当要求知道观测点之外的函数值时,需要估计函数值在该点的值。
如何根据观测点的值,构造一个比较简单的函数y=φ(x),使函数在观测点的值等于已知的数值或导数值。
用简单函数y=φ(x)在点x处的值来估计未知函数y=f(x)在x点的值。
寻找这样的函数φ(x),办法是很多的。
φ(x)可以是一个代数多项式,或是三角多项式,也可以是有理分式;φ(x)可以是任意光滑(任意阶导数连续)的函数或是分段函数。
函数类的不同,自然地有不同的逼近效果。
在许多应用中,通常要用一个解析函数(一、二元函数)来描述观测数据。
根据测量数据的类型:1.测量值是准确的,没有误差。
2.测量值与真实值有误差。
这时对应地有两种处理观测数据方法:1.插值或曲线拟合。
2.回归分析(假定数据测量是精确时,一般用插值法,否则用曲线拟合)。
MATLAB中提供了众多的数据处理命令。
有插值命令,有拟合命令,有查表命令。
一维插值插值定义为对数据点之间函数的估值方法,这些数据点是由某些集合给定。
当人们不能很快地求出所需中间点的函数值时,插值是一个有价值的工具。
例如,当数据点是某些实验测量的结果或是过长的计算过程时,就有这种情况。
interp1(x,y,xi,method)x和y为既有数据的向量,其长度必须相同。
xi为要插值的数据点向量。
method插值方法,‘nearest’/‘linear’/‘cubic’/‘spline’之一,分别为最近点插值/线性插值/分段三次Hermite插值/三次样条插值。
例x=[1.0 2.0 3.0 4.0 5.0]; %输入变量数据xy=[11.2 16.5 20.4 26.3 30.5]; %输入变量数据yx1=2.55; %输入待插值点xy11=interp1(x,y,x1,'nearest') %最近点插值方法的插值结果y12=interp1(x,y,x1,'linear') %线性插值方法的插值结果y13=interp1(x,y,x1,'cubic') %三次Hermite插值方法的插值结果y14=interp1(x,y,x1,'spline') %样条插值方法的插值结果y11 =20.4000y12 =18.6450y13 =18.6028y14 =18.4874plot(x,y)或许最简单插值的例子是MATLAB的作图。