第5章 多项式、插值与数据拟合

合集下载

数值计算方法插值与拟合

数值计算方法插值与拟合

数值计算方法插值与拟合数值计算方法在科学计算和工程应用中起着重要的作用,其中插值和拟合是其中两个常用的技术。

插值是指通过已知的离散数据点来构造出连续函数或曲线的过程,拟合则是找到逼近已知数据的函数或曲线。

本文将介绍插值和拟合的基本概念和常见的方法。

一、插值和拟合的基本概念插值和拟合都是通过已知数据点来近似表达未知数据的方法,主要区别在于插值要求通过已知数据点的函数必须经过这些数据点,而拟合则只要求逼近这些数据点。

插值更加精确,但是可能会导致过度拟合;拟合则更加灵活,能够通过调整参数来平衡拟合精度和模型复杂度。

二、插值方法1. 线性插值线性插值是一种简单的插值方法,通过已知数据点构造出线段,然后根据插值点在线段上进行线性插值得到插值结果。

2. 拉格朗日插值拉格朗日插值是一种基于多项式插值的方法,通过已知数据点构造出一个多项式,并根据插值点求解插值多项式来得到插值结果。

3. 分段线性插值分段线性插值是一种更加灵活的插值方法,通过将插值区间分成若干小段,然后在每个小段上进行线性插值。

三、拟合方法1. 最小二乘法拟合最小二乘法是一种常用的拟合方法,通过最小化实际观测点和拟合函数之间的残差平方和来确定拟合函数的参数。

2. 多项式拟合多项式拟合是一种基于多项式函数的拟合方法,通过选择合适的多项式次数来逼近已知数据点。

3. 曲线拟合曲线拟合是一种更加灵活的方法,通过选择合适的曲线函数来逼近已知数据点,常见的曲线包括指数曲线、对数曲线和正弦曲线等。

四、插值与拟合的应用场景插值和拟合在实际应用中具有广泛的应用场景,比如图像处理中的图像重建、信号处理中的滤波器设计、金融中的风险评估等。

五、插值与拟合的性能评价插值和拟合的性能可以通过多种指标进行评价,常见的评价指标包括均方根误差、相关系数和拟合优度等。

六、总结插值和拟合是数值计算方法中常用的技术,通过已知数据点来近似表达未知数据。

插值通过已知数据点构造出连续函数或曲线,拟合则找到逼近已知数据的函数或曲线。

第五章插值法

第五章插值法
另一类方法在选定近似函数的形式后,不要求近似 函数过已知样点,只要求在某种意义下它在这些点
上的总偏差最小。这类方法称为曲线(数据)拟合 法,将在下一章介绍。
本章主要讨论构造插值多项式的几种常用的方法及 其误差 用插值法求函数的近似表达式时,首先要选定 函数的形式。可供选择的函数很多,常用的是多项式 函数。因为多项式函数计算简便,只需用加、减、乘 等运算,便于上机计算,而且其导数与积分仍为多项式。
返回
第5章 插值法
前进
如行星在太空中的定位问题:当行星在空间运行时, 可通过精密观测仪器在不同的时间ti(i = 1,2,…)观测到行 星所在位置S(ti),无论花费多少人力物力,所得到的只 是一批离散数据(ti,S(ti)),i=1,2,…),而行星是在作连续运 动,它在任一时间t(与ti不同)的位置S(t),我们只能再 去通过观测得到,插值逼近是利用这组离散数据(ti,S(ti)) 构造一个简单的便于计算的近似函数(解析表达式), 用它可求任何时间的函数值(称为插值),对这个近似 解析表达式也能求导,讨论其各种性质。
六十年期间任何一年(例如1965年)的人口总数,或者预
测2019年该地区的人口数量 。利用插值方法就可以解决
这一类问题。
另一方面,有些函数,虽然有解析表达式,但因其过于
复杂,不便于计算和分析,同样希望构造一个既能反映函
数的特性又便于计算的简单函数,近似代替原来的函数。
如在积分
I
b
f (x)dx
中,当f (x)很复杂,要计算
a
积分I是很困难的,构造都要用到插值逼近。
返回代数插值第5章 插值法
前进
解决上述问题的方法有两类:一类是对于一组离 散点(xi,f (xi)) (i = 0,1,2,…,n),选定一个便于计算的函

第5章 插值方法

第5章 插值方法

第5章插值方法5.1 插值问题概述假设f(x)是某个表达式很复杂,甚至根本写不出来的实函数,且已知f(x)在某个区间[a,b]上的n+1个互异的点x0,x1,…,x n处的函数值f(x0),f(x1),…,f(x n),我们希望找到一个简单的函数y=P(x),使得P(x k)=f(x k),k=0,1,…,n.这就是插值问题。

如果我们找到了这样的函数y=P(x),我们就可以在一定范围内利用P(x)近似表示f(x),从而解决了相应的计算问题。

1.利用函数值列表来表示插值问题对于一个插值问题来说,我们的已知条件就是n+1个互异的点处的函数值.回顾高等数学中学习过的函数的表示方法,我们可用下面表1的形式列出已知的函数值,并简称为由表1给出的插值问题。

表1:插值问题的函数值列表2.重要术语对于n+1个基点的插值问题,我们称:f(x) 为被插值函数;P(x)为插值函数;x0,x1,…,x n为插值基点或插值节点;P(x k)=f(x k),k=0,1,…,n为插值条件;[a,b]为插值区间。

注释:对于早期的插值问题来说,f(x)通常是已知的,比如对数函数,指数函数,三角函数等这些问题现在已经不用插值法来计算了;对于现在的许多实际问题来说,我们并不知道f(x)的具体形式,所对应的函数值可能是由测量仪器或其他物理设备中直接读出来的,f(x)只是一个概念中的函数。

3.多项式插值对于n+1个基点的插值问题,如果要求插值函数是次数不超过n 的多项式,记为P n(x),则相应的问题就是多项式插值,并且把P n(x)称为插值多项式。

实际上,我们所考虑的插值函数通常都是多项式函数或分段多项式函数。

由于次数不超过n的多项式的一般形式为P n((x)=a 0+a 1x+a 2x 2+…+a n x n (1)所以只要确定了n+1个系数a 0,a 1,a 2,a n ,我们便确定了一个插值多项式。

4.多项式插值的一般方法对于n+1个基点的多项式插值问题,我们完全可以用上一章中的办法来求插值多项式P n (x)的系数,a 0,a 1,a 2,a n ,它们可表为下面的线性方程组的解,所以多项式插值相对说来是很简单的。

插值与拟合

插值与拟合
max f (x) P(x)
x[ a ,b ]
即:有界区间上的连续函数被多项式一致逼近。
§ 7.1.4 实际应用中两种方法的选择
在实际应用中,究竟选择哪种方法比较恰 当?总的原则是根据实际问题的特点来决定采 用哪一种方法。具体说来,可从以下两方面来 考虑:
1.如果给定的数据是少量的且被认为是严 格精确的,那么宜选择插值方法。采用插值方 法可以保证插值函数与被插函数在插值节点处 完全相等。
2.如果给定的数据是大量的测试或统计的 结果,并不是必须严格遵守的,而是起定性地 控制作用的,那么宜选用数据拟合的方法。这 是因为,一方面测试或统计数据本身往往带有 测量误差,如果要求所得的函数与所给数据完 全吻合,就会使所求函数保留着原有的测量误 差;另一方面,测试或统计数据通常很多,如 果采用插值方法,不仅计算麻烦,而且逼近效 果往往较差。
0
(
x)

1

2
x x1

x0 x0

x x0
x1 x1
2


1(x)

1
2
x x1 x0 x1

x x0 x1 x0
2



2

0
(
x)

(
x

x0
)
(7.2.3)
下 面 的 (7.2.9) 、 (7.2.10) 两 式 构 成 了 三 次 Hermite 插值基本提法二的插值公式
P3(x) = 0(x)y0 1(x)y1 0(x)m0 1(x)m1 (7.2.9)
0 ( x)

(x ( x0

《插值与拟合》课件

《插值与拟合》课件

拟合的方法
1
最小二乘法
通过最小化残差平方和,找到与数据最匹配的函数。
2
局部加权回归
给予附近数据点更高的权重,拟合接近局部数据点的函数。
3
多项式拟合
用多项式函数逼近数据,通过选择合适的次数实现拟合。
插值与拟合的误差分析
插值和拟合都会引入近似误差,需要评估误差范围和影响因素。
插值与拟合在数据处理与分析中的应用
数据分析
通过插值和拟合方法对数据进 行探索和分析。
数据处理
在数据处理过程中使用插值和 拟合技术来填充缺失值和平滑 数据。
数据建模
利用插值和拟合模型对数据特 征进行捕捉和预测分析。
插值与拟合的推广和发展前景
随着数据科学和人工智能的不断发展,插值和拟合在各个领域的应用前景越 来越广阔。
插值与拟合的应用范围
科学研究
用于数据分析、信号优化设计、近似计算和 效能提升。
经济金融
用于市场分析、预测模型和 风险评估。
插值的方法
1
拉格朗日插值
基于多项式插值公式,用拉格朗日多项式逼近函数。
2
牛顿插值
基于差商的概念,用多项式逼近函数的值。
3
分段插值
将插值区间划分为多个子区间,并在每个子区间上进行插值。
《插值与拟合》PPT课件
插值与拟合是数值计算和数据分析中重要的概念。
插值与拟合的概念
插值
通过已知值的推算,计算在未知点的近似值。
拟合
通过曲线或曲面拟合已知数据,以描述和预 测未知数据。
插值与拟合的区别与联系
1 区别
2 联系
插值重点关注已知点的准确性,而拟合则 着重于整体形状的拟合。
插值和拟合都通过数学模型逼近离散数据, 以实现数据的补全和预测。

插值与拟合方法

插值与拟合方法

插值与拟合方法在实际中,常常要处理由实验或测量所得到的一批离散数据.插值与拟合方法就是要通过这些数据去确定某一类已知函数的参数或寻找某个近似函数,使所得到的近似函数与已知数据有较高的拟合精度.插值问题:要求这个近似函数(曲线或曲面)经过所已知的所有数据点.通常插值方法一般用于数据较少的情况.数据拟合:不要求近似函数通过所有数据点,而是要求它能较好地反映数据的整体变化趋势。

共同点:插值与拟合都是根据实际中一组已知数据来构造一个能够反映数据变化规律的近似函数的方法,由于对近似要求的准则不同,因此二者在数学方法上有很大的差异.插值问题的一般提法:已知某函数)(x f y =(未知)的一组观测(或试验)数据),,2,1)(,(n i y x ii⋅⋅⋅=,要寻求一个函数)(x φ,使iiy x =)(φ),,2,1(n i ⋅⋅⋅=,则)()(x f x ≈φ.实际中,常常在不知道函数)(x f y =的具体表达式的情况下,对于i x x =有实验测量值iy y =),,2,1,0(n i ⋅⋅⋅=,寻求另一函数)(x φ使满足:)()(i i i x f y x ==φ),,2,1,0(n i ⋅⋅⋅=称此问题为插值问题,并称函数)(x φ为)(x f 的插值函数,nx x x x ,,,,21⋅⋅⋅称为插值节点,),,2,1,0()(n i y x ii⋅⋅⋅==φ称为插值条件,即)()(iiix f y x ==φ),,2,1,0(n i ⋅⋅⋅=,则)()(x f x ≈φ.(1) 拉格朗日(Lagrange )插值设函数)(x f y =在1+n 个相异点nx x x x ,,,,21⋅⋅⋅上的函数值为ny y y y ,,,,21⋅⋅⋅,要求一个次数不超过n 的代数多项式nnnx a x a x a a x P +⋅⋅⋅+++=221)(使在节点i x 上有),,2,1,0()(n i y x P ii n ⋅⋅⋅==成立,称之为n 次代数插值问题,)(x P n称为插值多项式.可以证明n 次代数插值是唯一的.事实上: 可以得到j n j n i i j in y x x xx x P j i ∑∏==⎥⎥⎦⎤⎢⎢⎣⎡⎪⎪⎭⎫⎝⎛--=≠00)()( 当1=n 时,有二点一次(线性)插值多项式:101001011)(y x x x x y x x x x x P --+--=当n =2时,有三点二次(抛物线)插值多项式:2120210121012002010212))(())(())(())(())(())(()(y x x x x x x x x y x x x x x x x x y x x x x x x x x x P ----+----+----=(2)牛顿(Newton ) 插值牛顿插值的基本思想:由于)(x f y =关于二节点10,x x 的线性插值为)()()()()()()()()(00101000010101x x x x x f x f x p x x x x x f x f x f x p ---+=---+= 假设满足插值条件)2,1,0()()(2===i x p y x f iii的二次插值多项式一般形式为))(()()(1212x x x x c x x c c x p --+-+= 由插值条件可得⎪⎩⎪⎨⎧=--+-+=-+=)())(()()()()(21202202101011000x f x x x x c x x c c x f x x c c x f c 可以解出⎪⎪⎪⎩⎪⎪⎪⎨⎧------=--==020101121220101100)()()()()()(),(x x x x x f x f x x x f x f c x x x f x f c x f c所以))(()())(()()(10211020102x x x x c x p x x x x c x x c c x p --+=--+-+=类似的方法,可以得到三次插值多项式等,按这种思想可以得到一般的牛顿插值公式.函数的差商及其性质对于给定的函数)(x f ,用),,,(10n x x x f ⋅⋅⋅表示关于节点nx x x ,,,1⋅⋅⋅的n 阶差商,则有一阶差商:01011)()(),(x x x f x f x x f --=,121221)()(),(x x x f x f x x f --= 二阶差商:021021210),(),(),,(x x x x f x x f xx x f --=n 阶差商:0110211),,,(),,,(),,,(x x x x x f x x x f x x x f n n n n -⋅⋅⋅-⋅⋅⋅=⋅⋅⋅-差商有下列性质:(1)差商的分加性:∑∏=≠=-=⋅⋅⋅nk nk j j j kk n x xx f xx x f 0)(01)()(),,,(.(2)差商的对称性:在),,,(1nx x x f ⋅⋅⋅中任意调换jix x ,的次序其值不变.牛顿插值公式: 一次插值公式为))(,()()(01001x x x x f x f x p -+=二次插值公式为))()(,,()())()(,,())(,()()(1021011021001002x x x x x x x f x p x x x x x x x f x x x x f x f x p --+=--+-+=于是有一般的牛顿插值公式为)())()(,,,()()())()(,,,())()(,,())(,()()(11010111010102100100----⋅⋅⋅--⋅⋅⋅+=-⋅⋅⋅--⋅⋅⋅+⋅⋅⋅+--+-+=n n n n n n x x x x x x x x x f x p x x x x x x x x x f x x x x x x x f x x x x f x f x p可以证明:其余项为))(())()(,,,,()(11010n n n x x x x x x x x x x x x f x R --⋅⋅⋅--⋅⋅⋅=-实际上,牛顿插值公式是拉格朗日插值公式的一种变形,二者是等价的.另外还有著名的埃尔米特(Hermite )插值等.(3)样条函数插值方法样条,实质上就是由分段多项式光滑连接而成的函数,一般称为多项式样条.由于样条函数的特殊性质,决定了样条函数在实际中有着重要的应用.样条函数的一般概念定义 设给定区间],[b a 的一个分划b x x x a n=<⋅⋅⋅<<=∆1:,如果函数)(x s 满足条件:(1) 在每个子区间),,2,1](,[1n i x x ii ⋅⋅⋅=-上是k 次多项式; (2) )(x s 及直到k -1阶的导数在],[b a 上连续.则称)(x s 是关于分划△的一个k 次多项式样条函数,nx x x ,,,1⋅⋅⋅称为样条节点,121,,,-⋅⋅⋅n x x x 称为内节点,nx x ,0称为边界节点,这类样条函数的全体记作),(k S P∆,称为k 次样条函数空间.若),()(k S x s P∆∈,则)(x s 是关于分划△的k 次多项式样条函数.k 次多项式样条函数的一般形式为∑∑=-=+-+=ki n j k j jii k x x k i x x s 011)(!!)(βα其中),,1,0(k i i=α和)1,,2,1(-=n j jβ均为任意常数,而)1,,2,1(,0,)()(-=⎪⎩⎪⎨⎧<≥-=-+n j x x x x x x x x jj kj kj在实际中最常用的是2=k 和3的情况,即为二次样条函数和三次样条函数. 二次样条函数:对于],[b a 上的分划b x x x a n=<⋅⋅⋅<<=∆1:,则)2,()(!2!2)(11222102∆βαααP n j j jS x x x x x s ∈-+++=∑-=+其中)1,2,1(,0,)()(22-=⎪⎩⎪⎨⎧<≥-=-+n j x x x x x x x x j j j j . 三次样条函数:对于],[b a 上的分划b x x xa n =<⋅⋅⋅<<=∆10:,则)3,()(!3!3!2)(1133322103∆βααααP n j j jS x x x x x x s ∈-++++=∑-=+其中)1,2,1(,0,)()(33-=⎪⎩⎪⎨⎧<≥-=-+n j x x x x x x x x jjj j .1 二次样条函数插值)2,()(2∆∈P S x s 中含有2+n 个待定常数,故应需要2+n 个插值条件,因此,二次样条插值问题可分为两类:问题(1):已知插值节点ix 和相应的函数值),,2,1,0(n i y i⋅⋅⋅=,以及端点0x (或n x )处的导数值0'y (或ny '),求)2,()(2∆∈PS x s 使得⎩⎨⎧'=''='⋅⋅⋅==))(()(),,2,1,0()(20022n n i i y x s y x s n i y x s 或(5.1)问题(2):已知插值节点ix 和相应的导数值),,2,1,0(n i y i⋅⋅⋅=',以及端点0x (或n x )处的函数值0y (或ny ),求)2,()(2∆∈P S x s 使得⎩⎨⎧==⋅⋅⋅='='))(()(),,2,1,0()(20022n n i i y x s y x s n i y x s 或(5.2)事实上,可以证明这两类插值问题都是唯一可解的.对于问题(1),由条件(5.1)⎪⎪⎪⎪⎩⎪⎪⎪⎪⎨⎧'=+='==-+++==++==++=∑-=00210211222102121211112020201002)(,,3,2,)(2121)(21)(21)(y x x s n j y x x x x x s yx x x s y x x x s j j i i j i jj j ααβααααααααα 引入记号T n ),,,,,(11210-=ββααα X 为未知向量,T nn y y y y ),,,,(10'= C 为已知向量, ⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡---=-0010)(21)(21211)(212110211211021212212222211200x x x x x x x x x x x x x x x n n n n n A 于是,问题转化为求方程组C AX =的解Tn ),,,,,(1121-=ββααα X 的问题,即可得到二次样条函数的)(2x s 的表达式.对于问题(2)的情况类似.2.三次样条函数插值由于)3,()(3∆∈P S x s 中含有3+n 个待定系数,故应需要3+n 个插值条件,因此可将三次样条插值问题分为三类: 问题(1):已知插值节点jx 和相应的函数值),,2,1,0(n j y j⋅⋅⋅=,以及两个端点0x ,n x 处的导数值0'y ,ny ',求)3,()(3∆∈PS x s 使满足条件⎪⎩⎪⎨⎧='='⋅⋅⋅==),0()(),,1,0()(33n j y x s n j y x s j j j j(5.3)问题(2):已知插值节点jx 和相应的函数值),,2,1,0(n j y j⋅⋅⋅=,以及两个端点0x ,nx 处的二阶导数值0y '',n y '',求)3,()(3∆∈PS x s 使满足条件⎪⎩⎪⎨⎧=''=''⋅⋅⋅==),0()(),,1,0()(33n j y x s n j y x s j j j j(5.4)问题(3):类似地,求)3,()(3∆∈PSx s 使满足条件⎪⎩⎪⎨⎧=+=-==)2,1,0)(0()0(),,1,0()(0)(3)(33k x s x s n j y x s k n k j j(5.5)这三类插值问题的条件都是3+n 个,可以证明其解都是唯一的〔8〕.一般的求解方法可以仿照二次样条的情况处理方法,在这里给出一种更简单的方法.仅依问题(1)为例,问题(2)和问题(3)的情况类似处理.由于在)3,()(3∆PS x s ∈区间],[b a 上是一个分段光滑,且具有二阶连续导数的三次多项式,则在子区间],[1+j jx x 上)(3x s ''是线性函数,记),,,1,0)((3n j x s d jj =''=为待定常数.由拉格朗日插值公式可得nj x x h h x x d h x x d x s j j j jj j jj j ,,1,0,,)(1113=-=-+-=''+++显然jjj h d dx s -='''+13)(在],[1+j jx x上为常数.于是在],[1+j j x x 上有31233)(6)(2))(()(j jjj j j j j j x x h d d x x d x x x s y x s --+-+-'+=+(5.6)则当1+=j x x 时,由(5.6)式和问题(1)的条件得121231362)()(+++=-++'+=j j jj j j j j j j y h d d h d h x s y x s故可解得)2(6)(113+++--='j j j jjj j d d h h y y x s(5.7)将(5.7)式代入(5.6)式得)1,,1,0](,[,)(6)(2)()2(6)(1312113-=∈--+-+-⎥⎥⎦⎤⎢⎢⎣⎡+--+=++++n j x x x x x h d d x x d x x d d h h y y y x s j j j jj j j jj j j j j j j j(5.8) 在],[1j j x x-上同样的有),,2,1](,[,)(6)(2)()2(6)(131112111111113n j x x x x x h d d x x d x x d d h h y y y x s j j j j j j j j j j j j j j j j =∈--+-+-⎥⎥⎦⎤⎢⎢⎣⎡+--+=------------(5.9) 根据)(3x s的一阶导数连续性,由(5.9)式得)()2(6)0(311113j j j j j j j j x s d d h h y y x s '=++-=-'---- 结合(5.7)式整理得⎪⎪⎭⎫ ⎝⎛---+=++++--+-+----11111111162j j j j j j j j j j j j j j j j j h y y h y y h h d h h h d d h h h 引入记号⎪⎪⎭⎫ ⎝⎛---+=+=--+--111116,j j j j j j j j j j j j j h y y h y y h h c h h h a ,111--+=-j j j j h h h a .则)1,,2,1(,2)1(11-==++-+-n j c d a d d a j j j j j j(5.10)再由边界条件:nny x s y x s '=''=')(,)(33得⎪⎪⎩⎪⎪⎨⎧⎪⎪⎭⎫ ⎝⎛--'=+⎪⎪⎭⎫ ⎝⎛'--=+----111100010106262n n n n n n n h y y y h d d y h y y h d d(5.11)联立(5.10),(5.11)式得方程组C D A =⋅(5.12)其中⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡---=----2121212112112200n n n n a a a a a aA ,⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=-n n d d d d 110 D ,⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡⎪⎪⎭⎫ ⎝⎛--'⎪⎪⎭⎫ ⎝⎛'--=----111110001066n n n n n n hy y y h c c y h y y h C 由方程组(6.12)可以唯一解出),,1,0(n j d j=,代入(5.8)式就可以得三次样条函数)(3x s 的表达式.B样条函数插值方法磨光函数实际中的许多问题,往往是既要求近似函数(曲线或曲面)有足够的光滑性,又要求与实际函数有相同的凹凸性,一般插值函数和样条函数都不具有这种性质.如果对于一个特殊函数进行磨光处理生成磨光函数(多项式),则用磨光函数构造出样条函数作为插值函数,既有足够的光滑性,而且也具有较好的保凹凸性,因此磨光函数在一维插值(曲线)和二维插值(曲面)问题中有着广泛的应用.由积分理论可知,对于可积函数通过积分会提高函数的光滑度,因此,我们可以利用积分方法对函数进行磨光处理.定义 若)(x f 为可积函数,对于0>h ,则称积分⎰+-=22,1)(1)(hx h x h dt t f h x f为)(x f 的一次磨光函数,h 称为磨光宽度.同样的,可以定义)(x f 的k 次磨光函数为)1()(1)(22,1,>=⎰+--k dt t f h x f hx h x h k h k事实上,磨光函数)(,x f h k 比)(x f 的光滑程度要高,且当磨光宽度h 很小时)(,x f h k 很接近于)(x f .等距B样条函数对于任意的函数)(x f ,定义其步长为1的中心差分算子δ如下:⎪⎭⎫ ⎝⎛--⎪⎭⎫ ⎝⎛+=2121)(x f x f x f δ在此取0)(+=x x f ,则002121+++⎪⎭⎫ ⎝⎛--⎪⎭⎫ ⎝⎛+=x x x δ是一个单位方波函数(如图5-1),记0)(+=Ωx x δ.并取1=h ,对)(0x Ω进行一次磨光得++++-+++-+++--+-+=-=⎥⎥⎦⎤⎢⎢⎣⎡⎪⎭⎫ ⎝⎛--⎪⎭⎫ ⎝⎛+==⎰⎰⎰⎰)1(2)1(2121)()(11212100212101x x x dt t dt t dt t t dt t x x xx x x x x x ΩΩ显然)(1x Ω是连续的(如图5-2).)(1x Ωo1-1/2 0 1/2 x -1 0 1 x 图5-1图5-2类似地可得到k 次磨光函数为kk j jk j k j k x k C x ++=+⎪⎭⎫ ⎝⎛-++-=Ω∑21!)1()(11 实际上,可以证明:)(x kΩ是分段k 次多项式,且具有1-k 阶连续导数,其k 阶导数有2+k个间断点,记为)1,,2,1,0(21+⋅⋅⋅=+-=k j k j x j.从而可知)(x kΩ是对应于分划+∞<<⋅⋅⋅<<<-∞∆+110:k x x x 的k 次多项式样条函数,称之为基本样条函数,简称为k 次B样条.由于样条节点为)1,,2,1,0(21+⋅⋅⋅=+-=k j k j xj是等距的,故)(x k Ω又称为k 次等距B样条函数.对于任意函数)(x f 的k 次磨光函数,由归纳法可以得到 [4,8] :⎪⎭⎫⎝⎛+≤≤--Ω=⎰∞+∞--22)()(1)(1,h x t h x dt t f htx h x f k h k 特别地,当1)(=x f 时,有1)(11⎰+∞∞--=-dt htx hk Ω,从而1)(⎰+∞∞-=dx x k Ω,且当k ≥1时有递推关系⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛-Ω⎪⎭⎫ ⎝⎛---⎪⎭⎫ ⎝⎛+Ω⎪⎭⎫ ⎝⎛++=Ω--212121211)(11x x k x k x k x k k k一维等距B样条函数插值等距B样条函数与通常的样条如下的关系: 定理设有区间],[b a 的均匀分划nab h n j jh x x j -=⋅⋅⋅=+=),,,1,0(:0∆,则对任意 k 次样条函数),()(k S x S p k ∆∈都可以表示为B样条函数族1021-=-=⎭⎬⎫⎩⎨⎧⎪⎭⎫⎝⎛+---n j k j k k j h x x Ω的线性组合[14].根据定理 5.1,如果已知曲线上一组点()jjy x ,,其中),,1,0,0(0n j h jh x x j⋅⋅⋅=>+=,则可以构造出一条样条磨光曲线(即为B样条函数族的线性组合)⎪⎭⎫⎝⎛--=∑--=j h x x c x S n kj k j k 01)(Ω 其中)1,,1,(-⋅⋅⋅+--=n k k j c j为待定常数.用它来逼近曲线,既有较好的精度,又有良好的保凸性.实际中,最常用的是3=k 的情况,即一般形式为⎪⎭⎫ ⎝⎛--=∑+-=j h x x c x S n j j 01133)(Ω 其中3+n 个待定系数)1,,0,1(+⋅⋅⋅-=n j c j可以由三类插值条件确定.由插值条件(5.3)得()()()⎪⎪⎪⎪⎩⎪⎪⎪⎪⎨⎧'=-'='==-='=-'='∑∑∑+-=+-=+-=n n j j n i n j j i n j j y j n c h x S ni y j i c x S y j c h x S 113311330113031)(,,1,0,)(1)(ΩΩΩ(5.13)注意到)(3x Ω的局部非零性及其函数值:61)1(,32)0(33=±=ΩΩ,当2≥x 时0)(3=x Ω;且由)21()21()(223--+='x x x ΩΩΩ知,21)1(,0)0(33=±'='ΩΩ,当2≥x 时0)(3='x Ω.则(5.13)中的每一个方程中只有三个非零系数,具体的为⎪⎩⎪⎨⎧'=+-==++'=+-+-+--n n n i i i i y h c c n i y c c c y h c c 2,,1,0,6421111011(5.14)由方程组(5.14)容易求解出)1,,0,1(+⋅⋅⋅-=n j c j,即可得到三次样条函数)(3x S 表达式.类似地,由插值条件(5.4)得待定系数的)1,,0,1(+⋅⋅⋅-=n j c j所满足的方程组为⎪⎩⎪⎨⎧''=+-==++''=+-+-+--nn n n i i i i y h c c c n i y c c c y h c c c 21111021012,,1,0,642(5.15)由插值条件(5.5)得待定系数的)1,,0,1(+⋅⋅⋅-=n j cj所满足的方程组为⎪⎪⎩⎪⎪⎨⎧==++=-+---=-++-=-+-+-+-+--+--+--ni y c c c c c c c c c c c c c c c c c c c i i i i n n n n n n n n ,,1,0,640)()(2)(0)(0)(0)()(4)(1111011111111011(5.16)方程组(5.15),(5.16)也都是容易求解的.注:上述等距B样条插值公式也适用于近似等距的情形,但在端点0x 和n x 处误差可能较大,实际应用时,为了提高在端点0x 和nx 处的精度,可以适当向左右延拓几个节点.二维等距B样条函数插值设有空间曲面),(y x f z =(未知),如果已知二维等距节点()()τj y ih x y x ji++=0,,)0,(>τh 上的值为),,2,1,0;,,2,1,0(m j n i z ij⋅⋅⋅=⋅⋅⋅=,则相应的B样条磨光曲面的一般形式为⎪⎭⎫ ⎝⎛--⎪⎭⎫⎝⎛--=∑∑--=--=j y y i h x x c y x s l m lj k ij n ki τΩΩ0011),( 其中),,2,1,0;,,2,1,0(m j n i c ij⋅⋅⋅=⋅⋅⋅=为待定常数,l k ,可以取不同值,常用的也是2,=l k 和3的情形.这是一种具有良好保凸性的光滑曲面(函数),在工程设计中是常用的,但只能使用于均匀分划或近似均匀分划的情况.(4) 最小二乘拟合方法最小二乘拟合方法的思想:由于一般插值问题并不总是可解的(即当插值条件多于待定系数的个数时,其问题无解),同时,问题的插值条件本身一般是近似的,为此,只要求在节点上近似地满足插值条件,并使它们的整体误差最小,这就是最小二乘拟合法.最小二乘拟合方法可以分为线性最小二乘拟合方法和非线性最小二乘拟合方法.线性最小二乘拟合方法设{}m k kx 0)(=φ是一个线性无关的函数系,则称线性组合∑==mk k k x a x 0)()(φφ为广义多项式.如三角多项式:∑∑==+=mk k mk kkx b kx ax 0sin cos )(φ.设由给定的一组测量数据),(iiy x 和一组正数),,2,1(n i w i⋅⋅⋅=,求一个广义多项式∑==mk k k x a x 0)()(φφ使得目标函数[]21)(∑=-=ni i i i y x w S φ(5.17)达到最小,则称函数)(x φ为数据),,2,1)(,(n i y x ii⋅⋅⋅=关于权系数),,2,1(n i w i⋅⋅⋅=的最小二乘拟合函数,由于)(x φ关于待定系数ia 是线性的,故此问题又称为线性最小二乘问题. 注意:这里{}m k kx 0)(=φ可根据实际来选择,权系数iw 的选取更是灵活多变的,有时可选取1=i w ,或nw i 1=,对于nw i1=,则相应问题称为均方差的极小化问题.最小二乘拟合函数的求解要使最小二乘问题的目标函数(5.17)达到最小,则由多元函数取得极值的必要条件得),,2,1,0(0m k a Sk==∂∂ 即),,2,1,0(0)()(10m k x y x a w i k ni i m k i k k i ⋅⋅⋅⋅==⎥⎦⎤⎢⎣⎡-∑∑==φφ 亦即),,2,1,0()()()(001m k x y w a x x w n i i k i i j mj n i i k i j i ⋅⋅⋅⋅==⎥⎦⎤⎢⎣⎡∑∑∑===φφφ(5.18)是未知量为ma a a a ,,,,21⋅⋅⋅的线性方程组,称(5.18)式为正规方程组.实际中可适当选择函数系{}m k kx 0)(=φ,由正规方程组解出ma a a a ,,,,210⋅⋅⋅,于是可得最小二乘拟合函数∑==mk kk x a x 0)()(φφ.一般线性最小二乘拟合方法将上面一元函数的最小二乘拟合问题推广到多元函数,即为多维线性最小二乘拟合问题.假设已知多元函数),,,(21nx x x f y ⋅⋅⋅=的一组测量数据);,,,(21iniiiy x x x ⋅⋅⋅),,2,1(m i ⋅⋅⋅=和一组线性无关的函数系{}N k nk x x x 021),,,(=⋅⋅⋅φ,求函数∑=⋅⋅⋅=⋅⋅⋅Nk n k k n x x x a x xx 02121),,,(),,,(φφ对于一组正数mw w w ,,,21⋅⋅⋅,使得目标函数[]2121),,,(∑=⋅⋅⋅-=mi ni i i i i x x x y w S φ达到最小.其中待定系数N a a a a,,,,210⋅⋅⋅由正规方程组),,2,1,0(),(),(0N k y a Nj k j k j⋅⋅⋅==∑=φφφ确定,此处ini i i k mi i k ni i i k mi ni i i j i k j y x x x w y x x x x x x w ),,,(),(),,,(),,,(),(21121121⋅⋅⋅=⋅⋅⋅⋅⋅⋅=∑∑==φφφφφφ注:上面的函数φ关于ia 都是线性的,这就是线性最小二乘拟合问题,对于这类问题的正规组总是容易求解的.如果φ关于ia 是非线性的,则相应的问题称为非线性最小二乘拟合问题.非线性最小二乘拟合方法假设已知多元函数),,,(21nx x x f y ⋅⋅⋅=的一组测量数据);,,,(21iniiiy x x x ⋅⋅⋅),,2,1(m i ⋅⋅⋅=,要求一个关于参数),,2,1,0(N j a j⋅⋅⋅=是非线性的函数),,,;,,,(1021Nn a a a x x x ⋅⋅⋅⋅⋅⋅=φφ对一组正数mw w w ,,,21⋅⋅⋅使得目标函数[]21102110),,,;,,,(),,,(∑=⋅⋅⋅⋅⋅⋅-=⋅⋅⋅mi N ni i i i i N a a a x x x y w a a a S φ达到最小,则称之为非线性最小二乘问题.这类问题属于无约束的最优化问题,一般问题的求解是很复杂的,通常情况下,可以采用共轭梯度法、最速下降法、拟牛顿法和变尺度法等方法求解.实例:黄河小浪底调水调沙问题问题的提出2004年6月至7月黄河进行了第三次调水调沙试验,特别是首次由小浪底、三门峡和万家寨三大水库联合调度,采用接力式防洪预泄放水,形成人造洪峰进行调沙试验获得成功.整个试验期为20多天,小浪底从6月19日开始预泄放水,直到7月13日恢复正常供水结束.小浪底水利工程按设计拦沙量为75.5亿立方米,在这之前,小浪底共积泥沙达14.15亿吨.这次调水调试验一个重要目的就是由小浪底上游的三门峡和万家寨水库泄洪,在小浪底形成人造洪峰,冲刷小浪底库区沉积的泥沙.在小浪底水库开闸泄洪以后,从6月27日开始三门峡水库和万家寨水库陆续开闸放水,人造洪峰于29日先后到达小浪底,7月3日达到最大流量2700立方米/每秒,使小浪底水库的排沙量也不断地增加.下面是由小浪底观测站从6月29日到7月10日检测到的试验数据:表5-1: 试验观测数据单位:水流为立方米/每秒,含沙量为公斤/立方米·84··85·注:以上数据主要是根据媒体公开报道的结果整理而成的,不一定与真实数据完全相符.现在,根据试验数据建立数学模型研究下面的问题:(1) 给出估算任意时刻的排沙量及总排沙量的方法;(2) 确定排沙量与水流量的变化关系.模型的建立与求解对于问题(1),根据所给问题的试验数据,要计算任意时刻的排沙量,就要确定出排沙量随时间变化的规律,可以通过插值来实现.考虑到实际中排沙量应该是随时间连续变化的,为了提高精度,我们采用三次B样条函数进行插值.下面构造三次B样条函数)(x S y =.由试验数据,时间是每天的早8点和晚8点,间隔都是12个小时,共24个点)24,,2,1(⋅⋅⋅=i t i.为了计算方便,令)23,,,1,0(122128⋅⋅⋅=+⎥⎦⎤⎢⎣⎡⋅+-=i i t x i i(5.19)则it 对应于)23,,1,0(1⋅⋅⋅=+=i i x i.于是以)23,,1,0(⋅⋅⋅=i x i为插值节点(等距),步长1=h .其相应的排沙量为)23,,1,0(⋅⋅⋅=i y i 对应关系如下表:·86·表5-2: 插值数据对应关系单位:排沙量为公斤函数)(x S y =所满足的条件为 (1)23,,1,0,)(⋅⋅⋅==i y x S ii;(2) 3500)(,56400)(2223222323231212-=--≈'='=--≈'='x x y y x S y x xy yx S y .取)(x S 的三次B样条函数一般形式为∑-=⎪⎭⎫⎝⎛--=24103)(j j j h x x c x S Ω·87·其中)24,,1,0,1(⋅⋅⋅-=j cj为待定常数,1=h .在这里⎪⎪⎪⎩⎪⎪⎪⎨⎧≥<<+-+-≤+-=Ω2,021,342611,3221)(23233x x x x x x x x x且易知⎪⎪⎪⎩⎪⎪⎪⎨⎧≥±===Ω2,01,610,32)(3x x x x和⎪⎪⎩⎪⎪⎨⎧≥±===Ω'2,01,210,0)(3x x x x 根据B样条函数的性质,)(x S ''在[]23,x x 上连续,则有()∑-=--'='='2413)(j jj xx c x S y Ω由插值条件(1),(2)可得到下列方程组()()()⎪⎪⎪⎪⎩⎪⎪⎪⎪⎨⎧'=-'=''=-'='⋅⋅⋅==-=∑∑∑-=-=-=23241323024130241323)()(23,,1,0,)(y j c x S y j c x S i y j i c x S j j j j i j j i ΩΩΩ 即⎪⎩⎪⎨⎧'=+-'=+-⋅⋅⋅==++-+-23242311112223,,1,0,64y c c y c c i y c c c i i i i 将232324112,2y c c y c c '+='-=-代入前24个方程中的第一个和最后一个,便可得到方程组F AC =,其中·88·⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡⋅⋅⋅⋅⋅⋅=⨯232102424,421410141014124c c c c C A ,⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡'-'+=3400048000684000458400266626232322100 y y y y y y F显然A 为满秩阵,方程组F AC =一定有解,用消元法求解可得问题的解为56044.39830=c , 4117111.2031=c , 2159510.7882=c , 9189845.6433=c ,1203106.6364=c , 8239727.8115=c ,8249182.1166=c , 1263543.7217=c ,9287842.9988=c , 2302284.2839=c ,4317419.86810=c , 1304836.24311=c ,3307635.15912=c ,6305423.11913=c ,2270672.36214=c ,4240287.43115=c ,0154177.91216=c ,4103000.92017=c ,99818.406218=c , 43725.454719=c ,49279.775020=c ,32155.445221=c , 2098.444222=c ,7450.777923=c ,-450.777924311.2034,2232324011='+=='-=-y c c y c c . 将)24,,1,0,1(⋅⋅⋅-=j c j代入()∑-=--==24131)(j jj x c x S y Ω(5.20)即得排沙量的变化规律.由(5.19)和(5.20)式可得到第i 时间段(12小时为一段)内,任意时刻]12,0[∈t 的排沙量.则总的排沙量为()dt j t c dx x S Y j j⎰∑⎰-=--Ω==284824132411)(经计算可得1110844.1⨯=Y 吨,即从6月29日至7月10日小浪底水库排沙总量大约为1.844亿吨,此与媒体报道的排沙量基本相符.对于问题(2),研究排沙量与水量的关系,从试验数据可以看出,开始排沙量是随着水流量的增加而增长,而后是随着水流量的减少而减少.显然,变化规律并非是线性的关系,为此,我们问题分为两部分,从开始水流量增加到最大值2720立方米/每秒(即增长的过程)为一段,从水流量的最大值到结束为第二段,分别来研究水流量与排沙量的关系.具体数据如表5-3和5-4.表5-3: 第一阶段试验观测数据 单位:水流为立方米/每秒,含沙量为公斤/立方米表5-4: 第二阶段试验观测数据单位:水流为立方米/每秒,含沙量为公斤/立方米对于第一阶段,由表5-3用Matlab作图(如图5-3)可以看出其变化趋势,我们用多项式作最小二乘拟合.·90··91·图5-3设拟合函数为∑==mk kk x a x 1)(φ确定待定常数),,1,0(m k ak=使得211111102])([∑∑∑===⎥⎦⎤⎢⎣⎡-=-=i i i m k k i k i i y x a y x S φ有最小值.于是可以得到正规方程组为m k x y a x mj i k i i j i j k i ,,1,0,0111111 ==⎪⎭⎫⎝⎛∑∑∑===+ 当3=m 时,即取三次多项式拟合,则3,2,1,0,1113111321112111110111==⎪⎭⎫⎝⎛+⎪⎭⎫ ⎝⎛+⎪⎭⎫ ⎝⎛+⎪⎭⎫ ⎝⎛∑∑∑∑∑==+=+=+=k x y a x a x a x a x i k i i i k i i k i i k i i k i求解可得73321108423.1,103172.1,3.1784,-2492.9318--⨯=⨯-===a a a a .于是可得拟合多项式为332213)(x a x a x a a x +++=φ,最小误差为847.72=S ,拟合效果如图所示.·92·图:三次拟合效果,带*号的为拟合曲线.类似地,当4=m 时,即取四次多项式拟合,则正规方程组为4,3,2,1,0111411143111321112111110111==⎪⎭⎫⎝⎛+⎪⎭⎫ ⎝⎛+⎪⎭⎫ ⎝⎛+⎪⎭⎫ ⎝⎛+⎪⎭⎫ ⎝⎛∑∑∑∑∑∑==+=+=+=+=k x y a x a x a x a x a x i ki i i k i i k i i k i i k i i k i求解可得104633210109312.1,1094.1,102626.7,12.0624,-7434.6557---⨯-=⨯=⨯-===a a a a a 于是可得拟合多项式为443322104)(x a x a x a x a a x ++++=φ,最小误差为102.66=S ,拟合效果如图5-5所示.图5-5:四次拟合效果,带*号的为拟合曲线.从上面的三次多项式拟合和四次多项拟合效果来看,差别不大.基本可以看出排沙量与水流量的关系.图5-6:第二段三·93··94· 次多项式拟合效果对于第二阶段,由表5-4可以类似地处理.我们用线性最小二乘法作三次和四多项式拟合.拟合效果如图5-6和5-7所示,最小误差分别为5.459=S 和1.236=S . 从拟合效果来看,显然四次多项式拟合要比三次多项式拟合好的多.图5-7:第二段四次多项式拟合效果。

第5章 多项式、插值与数据拟合

第5章  多项式、插值与数据拟合

两个多项式的和与差:
ya a1x a2 x
m n
m1 n1

am x am1 bn x bn1
yb b1x b2 x
命令poly_add:求两个多项式的和,其调用格式为: c= poly_add(a,b) 多项式a减去b,可表示为: c= poly_add(a,-b)
例: y ( x 1)6 x6 6x5 15x4 20x3 15x2 6x 1
>> r=roots([1 -6 15 -20 15 -6 1]) r= 1.0048 + 0.0000i 1.0024 + 0.0042i 1.0024 - 0.0042i 0.9976 + 0.0042i 0.9976 - 0.0042i 0.9952 + 0.0000i 舍入误差的影响,与计算精度有关。
>> x=[0.3:0.005:0.35];y=hermite(x0,y0,y1,x); >> plot(x,y) >> y2=sin(x); hold on >> plot(x,y2,'--r')
5.2.3 Runge现象
• 问题的提出:根据区间[a,b]上给出的节点做 插值多项式p(x)的近似值,一般总认为p(x)的 次数越高则逼近f(x)的精度就越好,但事实并 非如此。 1 f ( x) • 反例: 1 x2 在区间[-5,5]上的各阶导数存在,但在此 区间上取n个节点所构成的Lagrange插值多项 式在全区间内并非都收敛。 • 取n=10,用Lagrange插值法进行插值计算。



• 算例:对给定数据,试构造Hermite多项式求出 sin0.34的近似值。 >> x0=[0.3,0.32,0.35]; >> y0=[0.29552,0.31457,0.34290]; >> y1=[0.95534,0.94924,0.93937]; >> format long; y=hermite(x0,y0,y1,0.34) y= 0.333488890074074 >> sin(0.34) %与精确值比较 ans = 0.333487092140814

插值与拟合算法分析

插值与拟合算法分析

插值与拟合算法分析在数学与计算机科学领域,插值与拟合算法是两种常用的数据处理技术。

插值算法通过已知数据点之间的内插来估算未知数据点的值,而拟合算法则通过求取最佳拟合曲线或函数来逼近已知数据点。

本文将对插值与拟合算法进行详细分析,并比较它们在不同应用中的优缺点。

一、插值算法插值算法主要用于通过已知数据点之间的内插来估算未知数据点的值。

常用的插值算法包括拉格朗日插值、牛顿插值、样条插值等。

这些算法根据插值函数的不同特点,适用于不同类型的数据处理。

1. 拉格朗日插值拉格朗日插值是一种基于代数多项式的插值方法。

它通过构造一个全局多项式函数来拟合已知数据点,并推导出未知数据点的估算值。

拉格朗日插值算法具有简单易懂、计算效率高等优点,但在处理大量数据点时可能会出现龙格现象,导致插值结果有一定误差。

2. 牛顿插值牛顿插值是一种基于差商的插值方法。

它通过计算差商的递推关系,构造一个分段多项式函数来拟合已知数据点。

相比于拉格朗日插值,牛顿插值算法具有更高的数值稳定性和精度,并且可以方便地进行动态插值。

3. 样条插值样条插值是一种基于分段函数的插值方法。

它将整个数据区间划分为若干小段,并使用不同的插值函数对每一段进行插值。

样条插值算法通过要求插值函数的高阶导数连续,能够更好地逼近原始数据的曲线特征,因此在光滑性较强的数据处理中常被使用。

二、拟合算法拟合算法主要用于通过最佳拟合曲线或函数来逼近已知数据点。

常用的拟合算法包括最小二乘拟合、多项式拟合、非线性拟合等。

这些算法可以使拟合曲线与已知数据点尽可能地接近,从而进行更精确的数据分析和预测。

1. 最小二乘拟合最小二乘拟合是一种通过最小化残差平方和来求取最佳拟合曲线的方法。

它利用数据点与拟合曲线的差异来评估拟合效果,并通过求取最小残差平方和的参数值来确定拟合曲线的形状。

最小二乘拟合算法广泛应用于线性回归和曲线拟合等领域。

2. 多项式拟合多项式拟合是一种通过多项式函数来逼近已知数据点的方法。

多项式插值与拟合

多项式插值与拟合

多项式插值与拟合多项式插值与拟合技术是数学领域中一种常用的数据处理方法。

它可以有效地根据给定的数据点集,通过构造一个多项式函数,来近似描述数据的整体趋势。

本文将介绍多项式插值与拟合的基本原理、方法和应用。

一、多项式插值的原理和方法多项式插值是一种通过已知数据点集来构造与之完全吻合的多项式函数的方法。

它基于一个重要的数学定理:给定n+1个不同的数据点,存在一个n次多项式可以通过这些数据点。

在多项式插值中,最常用的插值方法是拉格朗日插值和牛顿插值。

拉格朗日插值使用一个n次多项式来逼近给定的数据点,使得多项式通过所有数据点;而牛顿插值则利用了差商的概念,使用一个n次多项式来逼近数据点,从而构造插值多项式。

二、多项式拟合的原理和方法多项式拟合是一种通过已知数据点集来找到一个次数较低的多项式函数,以最佳拟合数据的方法。

与多项式插值不同,多项式拟合不要求多项式经过所有数据点,而是通过最小化误差函数来找到最优解。

最常见的多项式拟合方法是最小二乘拟合,也称为线性最小二乘拟合。

该方法通过最小化数据点到拟合曲线的垂直距离之和,来得到最优的拟合曲线。

经过最小二乘拟合后,可以得到一个最佳的多项式函数,以最小化误差。

三、多项式插值与拟合的应用多项式插值与拟合广泛应用于各个领域的数据处理和分析中。

以下列举几个典型的应用场景:1. 数据重建:当给定一组具有缺失数据点的数据集时,通过多项式插值可以估计出缺失数据点的数值,从而恢复完整的数据集。

2. 数据平滑:多项式拟合可以通过将原始数据点拟合为平滑的曲线或者曲面,从而更好地展示数据的整体趋势,去除数据的噪声干扰。

3. 数据预测:基于已知的数据点,可以使用多项式拟合方法预测未来或未知的数据点的数值,为决策和规划提供依据。

4. 图像处理:多项式插值和拟合在图像处理中也有广泛应用,例如图像修复、数字图像放大等。

总结:多项式插值与拟合是一种有效的数据处理方法,可以用于数据重建、数据平滑、数据预测和图像处理等领域。

数值分析实验插值与拟合

数值分析实验插值与拟合

数值分析实验插值与拟合插值是指根据已知的数据点,通过其中一种数学方法来构造一个函数,使得该函数在已知的数据点上与被插值函数相等。

插值方法可以分为两类:基于多项式的插值和非多项式插值。

基于多项式的插值方法中,最常用的是拉格朗日插值和牛顿插值。

拉格朗日插值方法通过一个n次多项式来逼近被插值函数,该多项式通过n个已知数据点中的所有点。

牛顿插值方法则通过一个n次多项式来逼近被插值函数,该多项式通过n个已知数据点中的前m+1个点。

非多项式插值方法中,最常用的是分段线性插值和样条插值。

分段线性插值方法将插值区间划分为多个小段,在每一段内使用线性函数来逼近被插值函数。

样条插值方法则使用分段低阶多项式来逼近被插值函数,保证了插值函数和原函数在插值区间内的连续性、光滑性。

拟合是指在给定的离散数据点集合上,通过选取一个函数,使得该函数与数据点之间的误差最小化。

拟合方法可以分为两类:线性拟合和非线性拟合。

线性拟合方法中,最简单的是最小二乘法。

最小二乘法拟合是通过最小化观测数据与拟合函数的残差平方和来选择最佳函数参数。

在实验中,最小二乘法常用于线性回归问题,例如估计一个直线或者平面来拟合数据。

非线性拟合方法中,最常用的是非线性最小二乘法和局部加权回归。

非线性最小二乘法通过将非线性拟合问题转化为线性问题,使用最小二乘法来寻找最佳参数。

局部加权回归方法则通过给予不同数据点不同的权重,以更好地逼近数据点。

在数值分析实验中,插值与拟合可以应用于各种实际问题。

例如,在地理信息系统中,通过已知的地理坐标点来插值出未知点的地理信息。

在气象学中,通过已知的气象数据点来插值出未知点的气象信息。

在工程学中,通过已知的测量数据点来拟合出一个最佳的拟合函数来预测未来的测量值。

需要注意的是,插值和拟合的精度在很大程度上取决于数据的分布和拟合函数的选择。

如果数据点过于稀疏或者数据点中存在异常值,可能导致插值和拟合结果不准确。

因此,在进行插值和拟合之前,需要对数据进行预处理,例如去除异常值、平滑数据等。

插值法与数据拟合

插值法与数据拟合
下面是例子:
x=0:3:9;
y=x.*cos(x);
xx=linspace(0,9);
plot(x,y,'o');%样本点
hold on;
plot(xx,interp1(x,y,xx,'spline'),'r');%interp1只能使用默认边界条件
plot(xx,spline(x,[0 y 0],xx),'r:');%spline可以使用第一类边界条件,这里y'(0)=y'(9)=0 pp=csape(x,y,'second');
>> yi=New_int(x,y,0.596)
yi =0.631914405504000
4、已知函数在下列各点的值为:
0.2
0.4
0.6
0.8
1.0
0.98
0.92
0.81
0.64
0.38
试用4次牛顿插值多项式 对数据进行插值,根据{ },画出图形。
解:X=[0.2:0.2:1.0]; y=[0.98,0.92,0.81,0.64,0.38];
解:a=-1;b=1;n=100;h=(b-a)/n;
>> x=a:h:b;y=1./(1+25.*x.^2);
>> plot(x,y,'k')
其函数原图形分别如下所示:
图二龙格函数的图形
用龙格函数的Lagrange()插值函数画图源程序
当n =10时,有:
functionRunge(10)
% Runge现象
xx=[0:0.5:64]; yy=sqrt(ห้องสมุดไป่ตู้x);

第五章插值与拟合方法

第五章插值与拟合方法

已知一室模型快速静脉注射下的血药浓度数据(t=0注射300mg) t (h) 0.25 0.5 1 1.5 2 3 4 6 8
c (g/ml) 19.21 18.15 15.36 14.10 12.89 9.32 7.45 5.24 3.01
作半对数坐标系(semilogy)下的图形
2
10
101
0
回多项式的降幂系数。当k>n-2时,该命令实现多 项式插值 ✓ 一元插值 yi=interp1(x,y,xi):根据数据(x,y)给出在xi的分段线性 插值结果yi yi=interp1(x,y,xi,’spline’):使用三次样条插值 yi=interp1(x,y,xi,’cubic’):使用分段三次插值 ✓ 二元插值 zi=interp2(x,y,z,xi,yi,’method’):二维插值
根据一组(二组)数据,即平面上的若干点, 确定一个一元函数,即曲线,使这些节点与曲线总 体来说尽量接近,这就是曲线拟合。
函数插值与曲线拟合都是要根据一组数据构造 一个函 数作为近似,由于近似的要求不同,二者的 数学方法是完全不同的。
数据插值拟合MATLAB命令
✓ 多项式插值和拟合 p=polyfit(x,y,k): 用k次多项式拟合向量数据(x,y),返
求血药浓度随时间的变化规律c(t).
x=[0.25 0.5 1 1.5 2 3 4 6 8]; y=[19.21 18.15 15.36 14.
10 12.89 9.32 7.45 5.24 3.01];
plotc(x,y,'--o') c2
c(t) c0ekt c, k为待定系数
c1
0
算术坐标系统:就是普通的笛卡儿坐标,横纵的刻 度都是是等距的

多项式拟合插值

多项式拟合插值

多项式拟合1 数表的拟合计算所谓拟合是指寻找一条平滑的曲线,最不失真地去表现测量数据。

反过来说,对测量的实验数据,要对其进行公式化处理,也就是用一种计算方法,构造一个函数来近似表达数表的函数关系。

由于函数构造方法的不同,有许多的逼近方法,机械设计中常用最小平方逼近(最小二乘法理论)来实现曲线的拟合。

根据该理论可推导出计算公式,而MATLAB 在此数学基础上用一个函数命令polyfit 即可实现,命令格式为:),,(n y x polyfit p =式中:x 、y 为已知数据,n 为拟合多项式的阶次,p 为返回所得多项式的系数向量,通常多项式拟合中阶数越大,拟合的精度就越高。

例1:在工程技术中,通过实验获得一组)(i i x f y =实验数据如下表1:表1 实验实测数据下面程序分别设1=n ,2=n 进行一阶和二阶的拟合,结果如图1所示。

% 曲线拟合(Curve fitting )x=[0,1,2,3,4,5,6,7,8,9]y=[0.0,1.2,3.8,8.5,17.1,20.2,34.8,45.0,67.6,85.0]%绘实验节点数据plot(x,y,'*r')hold ongrid%绘一阶拟合曲线p1=polyfit(x,y,1)py1=polyval(p1,x)plot(x,py1,'g')hold ongrid%绘二阶拟合曲线p2=polyfit(x,y,2)py2=polyval(p2,x)plot(x,py2,'b')gridhold on图1 曲线拟合根据所编制的程序,在MATLAB 的工作空间可得1=n 时,]4545.23188.3[1-=p ,线性拟合得一条直线,即直线方程式为:4545.23188.31-=x y 2=n 时,]4773.08358.11648.0[2-=p ,拟合得一条二次曲线,即曲线方程式为: 4773.08358.11648.022-+=x x y2 数表的插值计算插值是在已知的节点数据基础上,平滑地估算出节点数据之间其它点对应的函数值,也就是通过实验或将一张已知图表处理成数表后,在实际使用时,自变量值不是数表中给定的节点时,须用插值计算方法求出相应的值。

数值分析中的插值与拟合

数值分析中的插值与拟合

数值分析中的插值与拟合插值和拟合是数值分析中常用的技术,用于估计或预测数据集中缺失或未知部分的数值。

在本文中,我们将讨论插值和拟合的概念、方法和应用。

一、插值插值是通过已知数据点之间的连续函数来估计中间数据点的数值。

插值方法可以根据不同的数据和需求选择合适的插值函数,常用的插值方法包括拉格朗日插值、牛顿插值和埃尔米特插值。

1.1 拉格朗日插值拉格朗日插值是一种基于多项式的插值方法。

通过已知的n个数据点,可以构建一个n-1次的插值多项式。

这个多项式通过已知数据点上的函数值来准确地经过每一个点。

1.2 牛顿插值牛顿插值方法也是一种多项式插值方法,通过差商的概念来构建插值多项式。

差商是一个递归定义的系数,通过已知数据点的函数值计算得出。

牛顿插值可以通过递推的方式计算出插值多项式。

1.3 埃尔米特插值埃尔米特插值是一种插值方法,适用于已知数据点和导数值的情况。

它基于拉格朗日插值的思想,通过引入导数信息来逼近数据的真实分布。

埃尔米特插值可以更准确地估计数据点之间的值,并且可以保持导数的连续性。

二、拟合拟合是通过一个模型函数来逼近已知数据点的数值。

拟合方法旨在找到最适合数据集的函数形式,并通过最小化误差来确定函数的参数。

常见的拟合方法包括最小二乘法、多项式拟合和曲线拟合。

2.1 最小二乘法最小二乘法是一种常用的拟合方法,通过最小化数据点到拟合函数的误差平方和来确定最佳拟合曲线或曲面。

最小二乘法适用于线性和非线性拟合问题,可以用于拟合各种类型的非线性函数。

2.2 多项式拟合多项式拟合是一种基于多项式函数的拟合方法。

通过多项式的线性组合来近似已知数据集的数值。

多项式拟合可以通过最小二乘法或其他优化算法来确定拟合函数的系数。

2.3 曲线拟合曲线拟合是一种用曲线函数来逼近已知数据点的拟合方法。

曲线函数可以是非线性的,并且可以根据数据的特点进行选择。

曲线拟合可以通过优化算法来确定拟合函数的参数。

三、应用插值和拟合在数值分析中有广泛的应用。

插值与拟合方法

插值与拟合方法

插值与拟合方法插值和拟合是数学中常用的方法,用于根据已知数据点的信息,推断出未知数据点的数值或函数的形式。

插值和拟合方法是经典的数学问题,应用广泛,特别是在数据分析、函数逼近和图像处理等领域。

1.插值方法:插值方法是通过已知数据点的信息,推断出两个已知数据点之间的未知数据点的数值。

插值方法的目的是保证插值函数在已知数据点处与实际数据值一致,并且两个已知数据点之间的连续性良好。

最常用的插值方法是拉格朗日插值法和牛顿插值法。

拉格朗日插值法根据已知数据点的横纵坐标,构造一个多项式函数,满足通过这些数据点。

拉格朗日插值法可以用于任意次数的插值。

牛顿插值法是使用差商的概念进行插值。

差商是指一个多项式在两个数据点之间的斜率。

牛顿插值法通过迭代计算得到与已知数据点一致的多项式。

插值方法的优点是可以精确地经过已知数据点,但是在两个已知数据点之间的插值部分可能会出现震荡现象,从而导致插值结果不准确。

2.拟合方法:拟合方法是通过已知数据点的信息,找出一个函数或曲线,使其能够最好地拟合已知数据点。

拟合方法的目标是寻找一个函数或曲线,尽可能地逼近已知数据点,并且能够在未知数据点处进行预测。

最常用的拟合方法是最小二乘法。

最小二乘法是通过求解最小化残差平方和的问题来进行拟合。

残差是指已知数据点与拟合函数的差异。

最小二乘法的目标是找到一个函数,使得所有数据点的残差平方和最小。

拟合方法的优点是可以得到一个光滑的函数或曲线,从而可以预测未知数据点的数值。

但是拟合方法可能会导致过拟合问题,即过度拟合数据点,导致在未知数据点处的预测结果不准确。

除了最小二乘法,还有其他的拟合方法,如局部加权回归和样条插值等。

局部加权回归是一种基于最小二乘法的拟合方法,它通过赋予不同的数据点不同的权重,来实现对未知数据点的预测。

样条插值是一种基于多项式插值的拟合方法,它将整个数据集分段拟合,并且在分段部分保持连续性和光滑性。

总结:插值和拟合方法是数学中的经典方法,用于根据已知数据点的信息,推断出未知数据点的数值或函数的形式。

数值分析实验报告插值与拟合

数值分析实验报告插值与拟合
解:(1)
结果分析:高次插值稳定性差,而低次插值对于较大区间逼近精度又不够,而且,随着节点的加密,采用高次插值,插值函数两端会发生激烈震荡。解决这一矛盾的有效方法就是采用分段低次代数插值。
(2)
通过采用分段线性插值得到以下结果:
结果分析:通过采用分段线性插值,发现随着插值节点增多,插值计算结果的误差越来越小,而且分段线性插值的优点是计算简单,曲线连续和一致收敛,但是不具有光滑性。
拟合是指通过观察或测量得到一组离散数据序列 ,i=1,2,…,m,构造插值函数 逼近客观存在的函数 ,使得向量 与 的误差或距离最小。
可知当基函数的选择不同时,拟合函数的误差也会不同,所以在对数据进行拟合时应选择适合的基函数。
三、练习思考
整体插值有何局限性?如何避免?
答:整体插值的过程中,若有无效数据则整体插值后插值曲线的平方误差会比较大,即在该数据附近插值曲线的震动幅度较大。在插值处理前,应对原始数据进行一定的筛选,剔除无效数据。
②相同点:通过已知一些离散点集M上的约束,求取一个定义在连续集合S(M包含于S)的未知连续函数,从而达到获取整体规律目的
四、本次实验的重点难点分析
答:加强了对插值和拟合的认识,了解了其算法思想,并使用matlab将其实现。学会了观察插值拟合后的图形,并分析其问题。
画图进行比较:
通过观察图像,经比较可知两结果是很接近的。
2.区间 作等距划分: ,以 ( )为节点对函数 进行插值逼近。(分别取 )
(1)用多项式插值对 进行逼近,并在同一坐标系下作出函数的图形,进行比较。写出插值函数对 的逼近程度与节点个数的关系,并分析原因。
(2)试用分段插值(任意选取)对 进行逼近,在同一坐标下画出图形,观察分段插值函数对 的逼近程度与节点个数的关系。

计算机算法复习题及答案(前三章)

计算机算法复习题及答案(前三章)

计算机算法复习题及答案(前三章)第一章1、什么是绝对误差?什么是相对误差?答:绝对误差等于准确值与近似值差的绝对值。

相对误差是近似数的误差与准确值的比值。

2、什么是绝对误差限?什么是相对误差限?答:绝对误差限为绝对误差的“上界”相对误差限为相对误差绝对值的“上界”3、有效数字与绝对误差限有何关系?有效数字与相对误差限有何关系?答:(绝对)若近似值的绝对误差限是某一位上的半个单位,且该位直到的第一位非零数字一共有几位。

则称近似值有n位有效数字。

(相对)设近似值=±0.···×有n位有效数字,≠0,则真相对误差限为×设近似值=±0.···×的相对误差限为×,≠0,则它有n位有效数字。

4、例1.11、例1.12、例1.15、例1.16.例1.11.设x=4.26972,那么取2位,=4.3,有效数字为2位取3位,=4.27,有效数字为3位取4位,=4.270,有效数字为4位取5位,=4.2697,有效数字为5位例1.12,若=3587.64是x的具有6位有效数字的近似值,则误差限是|-x|≤×=×若=0.0023156是x的具有5位有效数字的近似值,则误差限是|-x|≤×≤×例1.15,若=2.72来表示e的具有3位有效数字的近似值,则相对误差限是=×=×例1.16要使的近似值的相对误差限小于0.1%,要取几位有效数字?由定理1.1,≤×.由于=4.4···,已知=4,故只要取n=4,就有≤0.125×=0.1%只要对的近似值取4位有效数字,其相对误差限就小于0.1%。

此时由开方表得≈4.472 5、课本13~14页习题1、2、3、4.习题1:下列各数都是经过四舍五入得到的近似数,试指出它们是具有几位有效数字的近似数,并确定++和的误差限答:=1.1021,5位,=0.031,2位,=385.6,4位|++|-|++|≤|-|+|-|+|-|=×+×+×=0.5055 η()≈||η()+|η()|=1.1021××+0.031××=0.00055105+0.00000155=0.0005526η()≈||η()+||η() =0.001708255+0.21308256 =0.2148习题2.已测得某场地长L 的值为=110m ,宽d 的值为=80m,已知|L-|≤0.2m ,|d-|≤0.1m ,试求面积S=Ld 的绝对误差限和相对误差限。

计算方法第5章插值

计算方法第5章插值

计算方法第5章插值插值与拟合5.1插值的基本概念设y = f (x)在某些离散点上的函数值, 或函数y = f (x)以表格形式给出:x yx0 y0x1 y1x2 xn y2 yn(5.1)插值问题:根据已知数据,构造函数y = f (x)的一种简单的近似表达式P(x),以便于计算点x xi 的函数值 f ( x ) , 或计算函数的导数值。

用简单的函数y=P(x)来近似地表示y=f(x), 使得:p( xi ) = f ( xi ) (i=0,1,2,。

,n)(5.1)称P(x)为插值函数,称f(x)为被插值函数, 称xi为插值节点, 称式(5.1)为插值条件.选P(x)为n次多项式Pn(x)作为f (x) 的近似,且使得Pn ( xi ) yi ,设x0 x1 。

xni 0, 1, 2, , n(5.2)满足关系(5.2)的函数Pn(x)为f (x)的n次插值多项式.记a = x0, b = xn,则[a, b] 为插值区间。

5.1.2插值多项式的存在唯一性三个问题: (1)满足插值条件的多项式是否存在? 是否唯一?(2)用pn ( x) 表示f(x)的误差是多少? (3)怎样求出pn ( x) ?定理1: 插值多项式Pn(x)存在且唯一. 证:设所要构造的插值多项式为:Pn ( x) a0 a1 x a2 x 2 an x n由插值条件Pn ( xi ) yii 0, 1, , n得到如下线性代数方程组:n 1 a0 x0 a1 x0 an y0 n 1 a0 x1a1 x1 an y1 1 a x a x n a y n 1 n n n 0此方程组的系数行列式为1 x0 D 1 x1 1 xn(范得蒙行列式!当2 n x0 x0 2 n x1 x10 j i n2 n xn xn( xix j ) 0,xi x ji 1,2, n;j 1,2, n时,0) D因此,Pn(x) 中的a0, a1,。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
N阶多项式n个根,其中包含重根和复根。若多 项式所有系数均为实数,则全部复根都将以共轭对 的形式出现
• 幂系数:在MATLAB里,多项式用行向量表示,其 元素为多项式的系数,并从左至右按降幂排列。
例:
y 2x x 4x 5
3 2
被表示为 >> p=[2 1 4 5] >> poly2sym(p) ans = 2*x^3+x^2+4*x+5
x xj xk x j
)
• MATLAB实现
function y=lagrange(x0,y0,x) n n x xj ) ii=1:length(x0); y=zeros(size(x)); y ( x) yk ( k 1 j 1 xk x j for i=ii j k ij=find(ii~=i); y1=1; for j=1:length(ij), y1=y1.*(x-x0(ij(j))); end y=y+y1*y0(i)/prod(x0(i)-x0(ij)); end • 算例:给出f(x)=ln(x)的数值表,用Lagrange计算 ln(0.54)的近似值。 >> x=[0.4:0.1:0.8]; >> y=[-0.916291,-0.693147,-0.510826,-0.356675,-0.223144]; >> lagrange(x,y,[0.54,0.55,0.78]) ans = -0.6161 -0.5978 -0.2484 ( 精确解-0.616143)
多项式为 Polyfit的第三个参数是多项式的阶数。
y 0.2015x3 1.4385x2 2.7477x 5.4370
多项式积分:
y c1xn c2 xn1 cn x cn1
cn 2 c1 n 1 c2 n Y ydx x x x cn 1 x :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') %原曲线
• Roots: 多项式的零点可用命令roots求的。
例: >> r=roots(p) 得到 r= 0.2500 + 1.5612i 0.2500 - 1.5612i -1.0000 所有零点由一个列向量给出。
• Poly: 由零点可得原始多项式的各系数,但可能相差 一个常数倍。 例: >> poly(r)
5.2.2 Hermite插值
• 方法介绍 不少实际问题不但要求在节点上函数值相等,而且 要求导数值也相等,甚至要求高阶导数值也相等,满足 这一要求的插值多项式就是Hermite插值多项式。下面 只讨论函数值与一阶导数值个数相等且已知的情况。 已知n个插值点 x1 , x2 ,, xn 及对应的函数值 y1 , y2 ,, yn 和一阶导数值 y1' , y2' ,, y'n 。则对插值区间 内任意x的函数值y的Hermite插值公式:
ya yq yb yr
其中 yq 是商, yr 是除法的余数。多项式 yq 和 yr 可由命令deconv算出。 例:[q, r]=deconv(a,b)
• 例 >> a=[2,-5,6,-1,9]; b=[3,-90,-18]; >> c=conv(a,b) c= 6 -195 432 -453 9 -792 -162 >> [q,r]=deconv(c,b) q= 2 -5 6 -1 9 r= 0 0 0 0 0 0 0 >> poly2sym(c) ans = 6*x^6-195*x^5+432*x^4-453*x^3+9*x^2-792*x-162
第五章 多项式、插值与数据拟合
• 多项式MATLAB命令 • 插值
– – – – – Lagrange插值 Hermite插值 Runge现象和分段插值 分段插值 样条插值的MATLAB表示
• 数据拟合
–多项式拟合 –函数线性组合的曲线拟合方法 –最小二乘曲线拟合 –B样条函数及其MATLAB表示
5.1 关于多项式MATLAB命令
5.2 插值
5.2.1 Lagrange插值
• 方法介绍 对给定的n个插值点 x1, x2 ,, xn 及对应的函 数值 y1, y2 ,, yn ,利用构造的n-1次Lagrange插 值多项式,则对插值区间内任意x的函数值y 可通过下式求的:
y ( x) yk (
k 1 j 1 j k n n
• 为解决Rung问题,引入分段插值。
5.2.4 分段插值
• 算法分析:所谓分段插值就是通过插值点用折 线或低次曲线连接起来逼近原曲线。 • MATLAB实现 可调用内部函数。
– 命令1 interp1
• 功能 : 一维数据插值(表格查找)。该命令对数据点之 间计算内插值。它找出一元函数f(x)在中间点的数值。其 中函数f(x)由所给数据决定。 • 格式1 yi = interp1(x,Y,xi) %返回插值向量yi,每一元素对应于参量xi,同时由向 量x与Y的内插值决定。参量x指定数据Y的点。若Y为一矩阵, 则按Y的每列计算。 • 算例 对于t,beta 、alpha分别有两组数据与之对应,用分段线 性插值法计算当t=321, 440, 571时beta 、alpha的值。
• polyval: 可用命令polyval计算多项式的值。 例: y 3x4 7 x3 2x2 x 1 计算y(2.5)
>> c=[3,-7,2,1,1]; xi=2.5; yi=polyval(c,xi) yi = 23.8125 如果xi是含有多个横坐标值的数组,则yi也 为与xi长度相同的向量。 >> c=[3,-7,2,1,1]; xi=[2.5,3]; >> yi=polyval(c,xi) yi = 23.8125 76.0000
• 一个多项式的幂级数形式可表示为:
y c1x c2 x
n
n1
cn x cn1
• 也可表为嵌套形式
y (((c1x c2 ) x c3 ) x cn ) x cn1
• 或因子形式
y c1 ( x r1 )( x r2 )( x rn )
功能:求多项式积分 调用格式:py=poly_itg(p) p:被积多项式的系数 py:求积后多项式的系数 poly_itg.m function py=poly_itg(p) n=length(p); py=[p.*[n:-1:1].^(-1),0] 不包括最后一项积分常数
多项式微分:
y c1x c2 x
n
n1
cn x cn1
n 2
y nc1x
'
n1
(n 1)c2 x
cn
• Polyder: 求多项式一阶导数的系数。 调用格式为: b=polyder(c ) c为多项式y的系数,b是微分后的系数, 其值为:
[nc1 , (n 1)c2 ,, cn ]
两个多项式的和与差:
• polyfit:给定n+1个点将可以唯一确定一个n阶多项式。利 用命令polyfit可容易确定多项式的系数。 例: >> x=[1.1,2.3,3.9,5.1]; >> y=[3.887,4.276,4.651,2.117]; >> a=polyfit(x,y,length(x)-1) a= -0.2015 1.4385 -2.7477 5.4370 >> poly2sym(a) ans = -403/2000*x^3+2877/2000*x^2-27477/10000*x+5437/1000
ya a1x a2 x
m n
m1 n1
am x am1 bn x bn1
yb b1x b2 x
命令poly_add:求两个多项式的和,其调用格式为: c= poly_add(a,b) 多项式a减去b,可表示为: c= poly_add(a,-b)
功能:两个多项式相加 调用格式:b=poly_add(p1,p2) b:求和后的系数数组
• m阶多项式与n阶多项式的乘积是d=m+n阶的多项式:
ya a1x a2 x
m
m1
am x am1
d 1
yb b1xn b2 xn1 bn x bn1
yc ya yb c1x c2 x
d
cd x cd 1
计算 yc 系数的MATLAB命令是:c=conv(a,b) • 多项式 yb 除多项式 ya 的除法满足:
y ( x) hi [( xi x)(2ai yi yi' ) yi ]
i 1 n
其中
hi (
j 1 j i
n
x xj xi x j
) ;
2
1 ai j 1 xi x j
j i
n
• MATLAB实现 n % hermite.m y( x) hi [( xi x)(2ai yi yi' ) yi ] function y=hermite(x0,y0,y1,x) i 1 n=length(x0); m=length(x); n n x xj 2 1 for k=1:m yy=0.0; 其中 hi ( ) ; ai j 1 xi x j j 1 xi x j for i=1:n h=1.0; a=0.0; j i j i for j=1:n if j~=i h=h*((x(k)-x0(j))/(x0(i)-x0(j)))^2; a=1/(x0(i)-x0(j))+a; end end yy=yy+h*((x0(i)-x(k))*(2*a*y0(i)-y1(i))+y0(i)); end y(k)=yy; end
相关文档
最新文档