当前位置:文档之家› 第五章 数值微积分

第五章 数值微积分


20112011-3-18
20112011-3-18
【例5-4】
20112011-3-18
多项式相关函数: 多项式相关函数: polyval(P,x):按多项式的系数计算x点多项式的值 polyder(P): 求多项式P的导函数
20112011-3-18
5.2
数值微分
数值方法的基本思想: 对于已知的原型函数,可通过diff( )函数 对于已知的原型函数,可通过diff( )函数 求取各阶导数解析解,如果函数表达式未 知,只有实验数据,在实际应用中经常也 有求导的要求,这样的问题就不能用前面 的方法获得问题的解析解。 要求解这样的问题,需要引入数值算法得 出所需问题的解 在MATLAB中没有现成的数值微分函数。 MATLAB中没有现成的数值微分函数。
第 五 章 数值微积分 的MATLAB求解
20112011-3-18
主要内容
插值与数据拟合 数值微积分
20112011-3-18
5.1 插值与数据拟合
20112011-3-18
在实际问题中常遇到这样的函数
,其在
某个区间[a b]上是存在的。但是, 某个区间[a,b]上是存在的。但是,通过观察或 [a, 上是存在的 测量只能得到在[a b]区间上有限个离散点 测量只能得到在[a,b]区间上有限个离散点 [a, 上的函数值 ,而不知道 该函数的解析式。或者函数的表达式是已知的, 该函数的解析式。或者函数的表达式是已知的, 但却很复杂不便于计算,希望用一个简单的函数 但却很复杂不便于计算, 来描述它。 来描述它。 由这些已知样本点的信息获得该函数在其他点上 函数值的方法称为函数的插值
20112011-3-18
20112011-3-18
20112011-3-18
5.1.2数据拟合
曲线拟合的目的就是用一个较简单的函数去逼近 一个复杂的或未知的函数,所依据的条件都是在 一个复杂的或未知的函数, 一个区间(或一个区域) 一个区间(或一个区域)上的有限个采样点的函数 值。 曲线拟合放弃在插值点两者完全相等的要求,而 曲线拟合放弃在插值点两者完全相等的要求, 要求从整体上两者之间的误差尽量小些。 要求从整体上两者之间的误差尽量小些。
20112011-3-18
数值积分
对于积分: 如果知道f 如果知道f(x)的原函数F(x),则 )的原函数F
但是在工程技术和科学研究中经常会见到以下现象: (1) (2) (3) 的解析解根本不存在,只给出了的一些数值 的原函数F 的原函数F求不出来。 的表达式结构复杂,求原函数较困难
20112011-3-18
20112011-3-18
假设在实验中测得一组数 据 且

为严格单调递增的数值,直接求取这些点对应曲 为严格单调递增的数值,
线的数值积分的最直观的方法就是用梯形方法。 线的数值积分的最直观的方法就是用梯形方法。
sum((2*y(1:end-1),:)+diff(y)).*diff(x))/2 s=trapz(x,y)
20112011-3-18
数值差分与差商
函数f(x)在 点的导数的定义: 函数f(x)在x点的导数的定义:
引入前向差分算子: 引入前向差分算子:
当步长h充分小时: 当步长 充分小时: 充分小时
20112011-3-18
数值微分的实现
方法一: f(x)在点 处的某种差商作为其导数。 在点x 方法一:用f(x)在点x处的某种差商作为其导数。 方法二:用多项式或样条函数g(x)对f(x)进行 方法二:用多项式或样条函数g(x)对f(x)进行 逼近(插值或拟合),然后用逼近函数在x点处 逼近(插值或拟合),然后用逼近函数在 ),然后用逼近函数在x 的导数作为f(x)在点 处的导数。 的导数作为f(x)在点x处的导数。 在点x
20112011-3-18
5.1.1 数据的插值问题 一、一维插值问题的求解
20112011-3-18
【例5-1】已知的数据点来自函数 已知的数据点来自函数
根据生成的数据进行插值处理, 根据生成的数据进行插值处理,得出较平滑的曲线 直接生成数据。 直接生成数据。
20112011-3-18
20112011-3-18
20112011-3-18
【例5-5】作图并观察:对函数 作图并观察:
分别取 h=0.5,h=0.05,h=0.01,h=0.005,画出 h=0.5,h=0.05,h=0.01,h=0.005,画出 和 形。
20112011-3-18
的图
方法二
【例5-6】用不同的方法求函数 数 的数值导
,并在同一个坐标系中做出的图像。 并在同一个坐标系中做出的图像。
20112011-3-18
【例7-6】试用梯形法求出 内,函数sin(x),cos(x),sin(x/2)的定积 函数sin(x),cos(x),sin(x/2)的定积 分的值。 分的值。
20112011-3-18
例5.2.给出概率积分:
的数据表如下表所示,用不同的插值方法计算f(0.472)
x f(x)
0.46
0.47
0.48
0.49
0.48465555 0.4937542 0.5027498 0.5116683
20112011-3-18
二、二维网格数据的插值问题
20112011-3-18
【例5-3】

以上这些现象Newton-Leibniz公式不再适用 以上这些现象Newton-Leibniz公式不再适用,只能建 公式不再适用, 立积分的近似计算。 立积分的近似计算。 求解定积分的数值方法:梯形法、simpson法 求解定积分的数值方法:梯形法、simpson法, romberg法 romberg法,它们的基本思想都是将整个积分问题分解 为求和形式,最简单的求每一子空间的积分方法是采用梯 为求和形式, 形近似的方法。 形近似的方法。
20112011-3-18
方法一
在MATLAB中没有直接提供求数值导数的函数, MATLAB中没有直接提供求数值导数的函数, 只有计算前向差分的函数: DX=diff(X) :计算向量X的前向差分 :计算向量X DX(i)=X(i+1)DX(i)=X(i+1)-X(i) DX=diff(X,n) :计算向量X的n阶前向差分 :计算向量X diff(X,2)=diff(diff(X))
相关主题