ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:235.84KB ,
资源ID:5486318      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5486318.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第七讲MATLAB在插值和逼近中的应用.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第七讲MATLAB在插值和逼近中的应用.docx

1、第七讲MATLAB在插值和逼近中的应用第七讲 MATLAB在插值与逼近中的应用1 插值与逼近 为何要逼近 数学上来讲,逼近就是在精度要求的范围内对要研究函数给出近似的函数值,乃至函数表达式。为何咱们不直接计算要研究的函数或函值本身 ?理由如下: 用给定函数表达式计算函值很困难乃至根本不可能。如,sinx、tgx、Inx等。 由实验与测量取得的变量间对应关系常常是一函数值表(此后咱们也称为表列函数)。但表所表示函在表某个中间位置的函数值却是无法明白的。 函数可能被隐含地概念,而事实上又不能用一个直接规律给出。例如,由方程ey+y+sinx=0肯定的隐含数。 计算逼近函数的值往往比计算函值本身更快

2、。特别地,当原来函数以无穷级数的形式给出,只能如此。 运算机存储量有限,而其计算量相对来讲却专门大,从某种意义上来讲,逼近实际上也是为了扬长避短。如,咱们不可能将所有的sinx的值都存在运算机内,但咱们将会看到,利用琏近咱们的却能够很方便地算出任一点的函数值。 实际应用中,只要函数值符合某一个精度要求也就够了。 逼近的分类 逼近函数是为了更方便地计算函数,更简单地表达函数。因此,常常利用一些简单函数或这些简单函数的线性组合来逼近。通常的逼近形式有:咱们称(x),i0,1,2,m为逼近函数,f(x)称为逼近函数。 逼近的原则 已知函数f(x)在n+1个点xi(i0,1,2,n)的函数值为f(xi

3、)(i0,1,2,n)。要求出f(x)的逼近函数g(x),则要选定逼近基函数,肯定上式中的常数ai(i0,1,2,m)。基函数选定往往跟实际问题有关;而肯定常数ai(I0,1,2,m)以保证逼近函数g(x)能更近似地表示函数f(x),则是咱们这里要解决的问题。为此,就要第一给出一个准则,来描述“更近似”。概念距离:其中,p0为一实数。则“更近似“即指“e更小“。因此,肯定ai(i0,1,2,m)使得e取得最小即可。e称为逼近误差。若p=1,称为一致逼近,p=2,称为平方逼近。从上式不难看出,就此式而言,e最好的最小值为零,现在,g(xi)=f(xi),逼近函数g(x)恰好通过所有n+1个已知点

4、(xi,f(xi)),(i0,1,2,n)。 什么叫插值 给定n+1个数据点(x0,y0),(x1,y1),(xn,yn),若逼近函数通过n+1个数据点,即在已知数据点上的逼近误差为零,则称逼近函数为插值函数,简称为插值。 若存在P(xi)=yi (i=0,1,n) 称P(x)为y=f(x)的插值函数,求插值函数P(x)的方式称为插值法。主要算法有Lagrange 插值、Newton插值、分段线性插值、Hermite插值及三次样条插值等。 Lagrange 插值1.5.1 线性插值 过函数y=f(x)上的两点 (x0,y0) (x1,y1)作一直线p1(x)近似地替代f(x) 即:p1(x0)

5、=y0 p1(x1)=y1 由点斜式 1.5.2 抛物插值 过函数y=f(x)上的三点 (x0,y0),(x1,y1),(x2,y2)作一抛物线p2(x)近似地替代f(x) 即: p2(x0)=y0 p2(x1)=y1 p2(x2)=y2 作二次式l0(x),使其知足 l0(x0)=1,l0(x1)=0,l0(x2)=0, 易推出: 同理则1.5.3 Lagrange 插值 设函数y=f(x) 在给定的两两互异的节点x0,x1,xn上的函数值为y0,y1,yn,求作一个次数n的多项式 使它知足这就是Lagrange 插值多项式1.5.4 Lagrange插值的流程图1.5.5 Lagrange

6、 编程function y=lagrange(x0,y0,x)%lagrange insertn=length(x0);p=0;for i=1:n l=; for j=1:n if j=i l=l*(x-x0(j)/(x0(i)-x0(j); end end p=p+l*y0(i);endy=p;例例 给出f(x)=e-x 的数值表,用lagrange插值计算 的近似值xln(x)x0= ;y0= ;y=lagrange(x0,y0, y = 例 给出f(x)=lnx 的数值表,用lagrange插值计算的近似值xln(x)x0=:;y0= ;y=lagrange(x0,y0, y = y=l

7、og y = 分段插值( 将插值区间划分小区间xi,xi+1,在每一个小区间构造插值多项式pi(x), 将每一个小区间插值多项式pi(x)拼接)1.6.1 高次插值的Runge现象 对于函数x=-5:1:5;y=1./(1+x.2);x0=-5:5;y0=1./(1+x0.2);y1=lagrange(x,y,x0);plot(x0,y1,-or)hold onplot(x0,y0,-b) clf x1=-5:1:0;y1=1./(1+x1.2);x2=0:1:5;y2=1./(1+x2.2);x3=-5:0;x4=0:5;x0=-5:5;y0=1./(1+x0.2);y3=lagrange(

8、x1,y1,x3);y4=lagrange(x2,y2,x4);plot(x3,y3,or,x4,y4,+r)hold onplot(x0,y0,-b) MATLAB插值函数插值函数及其功能函数功能描述interp1一维插值interp2二维插值interp3三维插值interpft一维快速傅立叶插值interpnN-D维插值spline三次样条数据插值pchip保形分段三次插值(分段三次Hermit插值多项式)yi=interp1(x,y,xi,method) methods are: nearest - nearest neighbor interpolation linear - lin

9、ear interpolation spline - piecewise cubic spline interpolation (SPLINE) pchip - shape-preserving piecewise cubic interpolation cubic - same as pchip v5cubic - the cubic interpolation from MATLAB 5, which does not extrapolate and uses spline if X is not equally spaced. x=0:8;y=sin(x);xi=0:8;ni=inter

10、p1(x,y,xi,nearest);li=interp1(x,y,xi,linear);si=interp1(x,y,xi,spline);ci=interp1(x,y,xi,cublic);plot(x,y,o,xi,ni,ms,xi,li,b*,xi,ci,k+,xi,si,r-)legend(原数据,nearest,linear,cublic,spline) 样条曲线的MATLAB实现1.8.1 样条曲线在工程实践与科学中的应用样条曲线拟合问题:由实验或观测取得了一批数据点,要求用一个函数近似地表明数据点间的函数关系,并画出函数的样条曲线。样条曲线插值问题:由实验、观测或计算取得了若干

11、离散点组成的点列,要求用滑腻的样条把这些离散点联结起来。样条曲线逼近问题:在样条曲线形状设计中,给定了折线轮廓,要求用样条曲线逼近那个折线轮廓。MATLAB专门提供了样条工具箱,以便能够方便地处置各类数据,生成样条曲线。1.8.2 Splinetool的利用功能:用一系列方式生成各类样条曲线语法:splinetool(x,y)(回车) 按照数组x,y在图形用户界面下生成样条曲线。splinetool(回车) 启动图形用户界面选择数据输入的方式(如选第一项Provide you own data)x=linspace(0,2*pi,31) y=cos(x)选择各类生成样条曲线的方式:三次样条插值

12、法,可选择各类约束条件光滑样条法,可选择函数的阶数(4或6),可改变精度的允许值最小二乘法,可选择函数的阶数(1到14)样条插值法,可选择函数的阶数(1到14)选择方式的辅助图形(通过 View菜单)显示样条函数的一阶导数曲线图显示样条函数的二阶导数曲线图显示误差曲线图第一个点的三次导数和第二点的三次导数一样;最后一个点的三次导数和倒数第二个点一样 complete or clamped第一类边界条件(缺省边界条件)第二类边界条件周期(第三类)边界条件使最后一个点的二阶导数等于零自然边界条件用所给定四个点通过Lagrange插值法生成三次样条曲线第一类边界条件:给定函数在x0,xn端点处的一阶

13、导数,第二类边界条件:给定函数在x0,xn端点处的二阶导数,当函数在x0,xn端点处的二阶导数等于0 时,称为自然边界条件,现在的样条函数称为自然样条函数第三类边界条件:设f(x)是周期函数,并设x0,xn 是一个周期,给定函数在x0,xn端点处的一阶导数和二阶导数相等通过菜单中各项选择,取得所需样条曲线。 最小二乘拟合对于有限区间a,b 上的持续函数f(x),找到一个多项式p(x),使得f(x)-p(x)的欧几里德模小于某一误差限1.9.1 利用polyfit功能函数进行多项式拟合 例 用最小二乘法拟合如下数据xy 假设拟合多项式为f=a0+a1*x+a2x2 x= ; y= ; a=pol

14、yfit(x,y,2) f=poly2str(a,x) x1=:; y1=a(3)+a(2)*x1+a(1)*x1.2; plot(x,y,*) hold on plot(x1,y1,-r) a = f = x2 + x + 1.9.2 利用矩阵的除法求系数,解决复杂型函数的拟合 例 用最小二乘法求一个形如y=a+bx2的经验公式,使它与如下数据拟合xi1925313844yi x=19 25 31 38 44; y= ; x1=x.2 x1=ones(5,1),x1 ab=x1y x0=19:44; y0=ab(1)+ab(2)*x0.2; clf plot(x,y,o) hold on p

15、lot(x0,y0,-r) x1 = 361 625 961 1444 1936x1 = 1 361 1 625 1 961 1 1444 1 1936ab = 1.9.3 利用MATLAB优化工具箱中lsqcurvefit函数进行非线性曲线拟合 a,resnorm=lsqcurvefit(,a0,x,y) a-返回待定系数向量 resnorm-返回a处残差的平方和范数值:sum(fun(a,x)-y).2 fun-拟合函数 a0-待定系数向量初始值 x,y-原始输入输出数据向量例 x=0:10;y=*exp*x)+*exp*x).*sin*x);%设数据知足原型为%y(x)=a1e-a2x+

16、a3e-a4xsin(a5x)%其中ai为待定系数aaa=inline(a(1)*exp(-a(2)*x)+a(3)*exp(-a(4)*x).*sin(a(5)*x),a,x);a0=1,1,1,1,1;a,resnorm=lsqcurvefit(aaa,a0,x,y) Optimization terminated successfully: Relative function value changing by less than a = resnorm = 1.9.4 利用MATLAB优化工具箱中Curve FittingToolbox进行曲线拟合主要包括数据预处置、数据拟合和数据后处

17、置。 曲线拟合工具箱在拟合数据时利用最小二乘法。进行拟合需要一个能表示实验数据与理论数据之间关系的模型,模型中有一些需要肯定的系数。拟合的目的就是要获得对这些未知系数的估计。 最小二乘法通过最小化残差的平方和来获得待定系数的估计。式中(m+1)个为参与拟合的数据点的个数,支持的最小二乘拟合类型包括:* 线性最小二乘;* 加权线性最小二乘;Wi 为权重因子* 稳健最小二乘: 最小二乘法的主要缺点是对异样值太敏感。异样值对拟合结果具有专门大的影响,因为对残差取平方会将异样值的影响放大。要使异样值的影响最小,能够用稳健最小二乘拟合数据。工具箱提供了下面2个稳键回归方案: 最小绝对残差(LAR):LA

18、R方案要求残差的绝对差,而不是平方差最小的曲线。所以,极值对拟合的影响更小。 双二次加权:本方案使加权平方和最小,其中每一个数据点的权重与该点到拟合线的距离有关。离拟合线更近的点权重更大,离拟合线更远的点权重更小,超出预期范围的点的权重为0。对于大多数情形,双二次加权方案比LAR方案的效果更好,因为它不仅用一般最小二乘法找到了拟合数据的曲线,还使异样值的影响最小。* 非线性最小二乘。 工具箱提供的非线性选代算法包括: 置信域法: 默许算法,若是指定系数约束,必需利用该方式。该方式求解复杂非线性问题的效率比其他几种算法高得多,而且它是普通Levenberg-Marquardt法的改良版本。 Le

19、venberg-Marquardt法: 老牌的非线性迭代算法,通过了很连年的考验。若是置信域法取得的结果不睬想,而且没有系数约束,试用本法。 Gauss-Newton法 本算法比其他算法快得多,可是它假设数据残差接近0。把该算法放到工具箱中,主要出于教学的目的,解决实际问题时,应该把它作为最后的选择。评价拟合的优度: 用一个或多个模型拟合数据以后,应该评价拟合的优度,即拟合的好坏情形。评价拟合优度,第一个办法是将拟合曲线显示出来,从图上直接观察。另外,工具箱还用下面几种指标来评价拟合的优度:SSE: 误差平方和,误差平方和越接近0。说明拟合越好。 R-square: R的平方能够取0到1之间的所有值,值超接近1,拟合效果越好。 Adjusted R-square:调整的R平方统计量能够能够是任何小于等于1的值,值超接近1表示拟合效果更好。 RMSE: 均方误差的模,RMSE的值接近O表示拟合效果专门好。例子:已知铜的热容实验数据,求铜的焓、熵和吉布斯自由能。TCP1015202530507010015020025029840050060070080010001200

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1