MATLAB科学计算机lnx代码,[2018年最新整理]Matlab科学计算.ppt

[2018年最新整理]Matlab科学计算

Matlab与科学计算 计算机学院 刘咏梅 Email:liuyongmei@hrbeu.edu.cn 第二章 MATLAB数值计算基础 Introduction to MATLAB MATLAB Basics of Numerical Computing MATLAB Programming(branching and Loops) MATLAB Programming(Predefined Functions) MATLAB Graphic and Image Processing Scientific Computing using MATLAB 本章学习的目标: 利用MATLAB进行插值和拟合 利用MATLAB求积分和微分 利用MATLAB求解线性方程组 插值和拟合 插值:利用函数f(x)在某区间中若干个点的函数值,做适当特定的函数f’(x),使区间上其它点的值用f’(x)作为f(x)的近似。 拟合:已知某函数f(x)若干离散值,通过调整f(x)中若干待定系数,使f(x)与已知点集的差别最小。 插值和拟合示意图 插值与拟合的应用背景 在生产实际和科学研究中,会遇到大量函数,其中相当一部分是通过测量和实验观测得到的,虽然其函数关系y=f(x)在某区间上客观存在,但却不知道具体的解析表达式。只能得到函数在区间[a,b]上的一些离散点的函数值、导数值等。 我们希望对这样的函数用一个比较简单的函数的表达式来近似地给出其整体描述。有时是虽然有明确表达式,但函数本身过于复杂而不便于进行数值计算,同样希望构造一个既能反映函数性质又便于计算的简单函数,来近似代替原来的函数,插值就是寻求近似函数的方法之一。 计算方法中的插值法 多项式插值:设函数y=f(x)在区间[a,b]上有定义,已知[a,b]区间上n+1互异点x0,x1,…,xn及其函数值y0,y1,…,yn,若存在一个简单函数y=p(x),使其经过y=f(x)上的这n+1个已知点(x0,y0),(x1,y1),…,(xn,yn),那么函数p(x)称插值函数,点x0,x1,…,xn称为插值节点,点(x0,y0),(x1,y1),…,(xn,yn)称为插值点,包含插值点的区间称为插值区间,求p(x)的方法叫做插值法, f(x)称为被插函数。若p(x)表示为pn(x)=a0+a1x+a2x2+…+anxn则称pn(x)为n次插值多项式,相应的插值法称为多项式插值。 计算方法中的插值法 Lagrange插值法 分段线性插值法 Lagrange插值法 因为pn(x)=a0+a1x+a2x2+…+anxn 且pn(xi)=yi,i=0,1,2,…,n,插值问题实际上就是根据给定的n+1个节点上的函数值,确定n次多项式pn(x)的n+1个系数,即由n+1个条件确定n+1个待定系数。也就是求解线性方程组的解。 但是系数矩阵为Vandermonde矩阵,条件数常常很大,是病态问题,小的扰动就会产生大的偏移量,求精确解失去意义。 Lagrange插值法 Lagrange插值公式如下: 对任意k(k=0,…,n), Lagrange插值基函数: 分段线性插值法 高次插值多项式可能产生极大的误差(这一现象称为荣格(Runge)现象)因此不宜用太多的点来做插值多项式。 为了解决荣格现象,引入了分段线性插值,即通过n+1个插值点用折线段连接起来逼近原曲线,这也是计算机绘制图形的基本原理。 荣格(Runge)现象 x=[-5:1:5]; y=1./(1+x.^2); x0=[-5:0.1:5]; y0=lagrange(x,y,x0); y1=1./(1+x0.^2); plot(x0,y0,'--r'); hold on plot(x0,y1,'-b'); 一维插值函数interp1 YI = interp1(X,Y,XI,’method’) interpolates to find YI. The values of the underlying function Y at the points in the array XI. X must be a vector of length N. If Y is a vector, then it must also have length N, and YI is the same size as XI. Method=nearest/linear(default)/spline/pchip/cubic 插值实例 x = 0:10; y = sin(x); xi = 0:.25:10; yi = interp1(x,y,xi); plot(x,y,'o',xi,yi) 插值实例 x=[-5:1:5]; y=1./(1+x

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值