Charpter1F(,t,L,U)0.a1a2a3atak0,1,,1c3232.a2a30.2a2a3101得到a=2。假设x*
1
至少要取n位有效数字才能保证相对误差小于0.1%,
LcU其中t(字长)是正整数; 一般取为2,8,10和16;C(阶码)是整数,L≤c≤U,L和U为固定整数;
0.a1a2a3at称为尾数;数x称为t位进制浮点数。
计算机对数的运算处理 1.加减法先对阶,后运算,
再舍入;2.乘除法先运算,再舍入。定义1.1 设x
是准确值,x*是x的一个近似值,称差 x*-x为近
似值x*的绝对误差,简称误差,记为e*或e (x*) ,即e (x*)= x*-x定义1.2 称满足e*x*x*的正数 *为近似值x*的误差限。
x**xx**该范围常用xx**表
示。定义1.3 设x是准确值,x*是x的近似值,称
e**xxxx为近似值x*的相对误差,记为e*r或e*e*r(x*),即erxxx*xx称满足的正数r*为x*的相对误差限。
e(x*y*)ex*ey*e(x*y*)y*ex*x*ey*x*y****e(exxeyy*)y*2x*0.a1am2ak10a10,al0,1,2,,9,
m为整数,k为不小于正整数n的整数。若有关系式 ex*x*x0.510mn则称近似数x*有n
位有效数字。1.已知近似数x*有5位有效数字,试
求其相对误差限。解 因为x*有5位有效数字,可以设
x*0.a1a2a510m,a11于是有
n=5和
x*x0.510m5考虑x*的相对误差
x*xm55x*0.51051014140.aam1010故有x*相1a2510a12a12对误差限为0.510 -4 。若x*有n位有效数字,则有ex*xrx*x*11n2a10若x*的相对误差
1erx*x*x11nx*2a110则x*有n位
1有效数字。例 1.6 为保证某算式的计算精度,要求参与计算的323的近似值x*的相对误差小于0.1%,请确定x*至少要取几位有效数字才能达到要求。 解先将
323写成浮点数。因为23233
由定理1.3的1.5式12a101n1101n0.1%的12211最小整数n即可。由
2210n0.1%得104n4,有n4,故x*至少要取4位有效数
字才能达到相对误差小于0.1%的要求。
例1.9选用一个数值稳定方法计算数列
nI1xn0x5dx,n1,2,,100的直接推导有递推公
式In1n5In1故其带有误差的对应计算公式为I*1*nn5In1为考察其数值稳定性,二式相减得
I*nIn5I*n1In15nI*0I0,n1,2,该公式由I*0开
始,依次可计算出I***1,I2,,I100其在每次计算过程中,
都将上次计算的误差放大5倍。记
I*kIkek,k0,1,2,则
eI*nnIn5ne0,n1,2,可知:计算In时
的误差为初始误差的5n
倍!因此该算法不是数值稳定
算法。下面采用逆序计算方式给出一个数值稳定的计
算公式将In1n5In1,n1,2,,100转换为 I1Inn1*5n5,n100,99,,1该式由I100开始,依
次计算出I*I**99,98,,I1,其舍入误差关系为
I*n1In115I*nIn这说明,在每次计算过程中,都将上次计算的舍入误差缩小5倍,因此该算法是数
值稳定算法。该算法的关键是取计算的初值I*100,
这里采用如下定积分估计的方法选取:因为
16101I1x10011100111000x5dx50xdx10155101取均值I*11111110021015660600.001815其初始误差为 I*1113*100I100101560.000330.33110用此I100做递
推计算,依次算出I**99,I98,,I*1,它们值所有误差
会超过0.331103。
Chapter2limkxk1x*xkx*pC则称xk的收敛阶为注意到0L1,在上式中令kk,可得p或方法具有p阶敛速, p=1且C<1时,称方法线性收敛;p>1时称方法超线性收敛。二分法基本思想:利用连续函数零点定理,将含根区间逐次减半缩小,
*limxx0,因而有L0,有 kklimxkx*定理得证。推论
k2.1 设迭代函数
构造点列xk来逼近根x*。
x*x111k2(bkak)22(bk1ak1)2k1(ba)于是当k时,由12k1(ba)0得到
xkx*说明由二分法产生的数列xk总是收
敛于根x*的,其具有二阶收敛。简单迭代法基本思想:
利用对方程做等价变换根不发生变化的特点,将方程f(x)0等价变形为x(x),获得迭代计
算公式xk1(xk)由它算出逼近根x*
的数列
xk。判别收敛的充分条件。定理2.1 设迭代函数(x)满足两个条件1.当x[a,b]时,有
(x)[a,b];2.x1,x2[a,b],存在常数
L1满足(x1)(x2)Lx1x2则有1.(x)在[a,b]中有唯一的不动点x*;迭代公式xk1(xk)对任取x0[a,b],产生的数列
xk都收敛于x*。证明存在性易证迭代函数
(x)C[a,b]。作辅助函数
(x)x(x)显然(x)C[a,b]。由条
件1知(a)(b)0由中值定理,至少存在一个[a,b],使()0,即(),
这说明(x)在[a,b]上有不动点。唯一性如果
(x)在[a,b]上还有一个不动点,有
(),利用条件2,有
()()L矛
盾,这就证明了满足定理条件的(x)在[a,b]中有
唯一的不动点,记为x*。xx*k的收敛性由是不
动点、迭代格式及条件2,有
x**kx(xk1)(x)Lxk1x*L2xk2x*Lkx0x*
(x)满足1当x[a,b]时,有(x)[a,b]'(x)L1,x[a,b]
定理
2.2 设x*是迭代函数(x)的不动点,且
(x)在点x*处连续,则若
(x*),迭代xk1(xk)局部收敛;若(x*),迭
代
xk1(xk)发散,证明 只给出1的证明。
由
(x*)和(x)在点x*处连续性,存在
一个正实数
L<1
和
x*的某个闭邻域
D:xx*,0,使
xD时有
'(x)L1成立。注意到,当xD时,由x*(x*)及中值定理有(x)x*(x)(x*'()xx*Lxx*xx*所以xD时,有(x)D,由推论2.1可知迭代xk1(xk)产生的数列{xk}4对任意
x0D都收敛于不动点x*,故迭代格式xk1(xk)局部收敛。例2.4用简单迭代法求方
程
x32x210x200在x1附近的根,计算结果准确到4位有效数字。解:令
f(x)x32x210x20因为f(1)f(2)0,
在x[1,2]时,f'(x)3x24x100,故原方
程f(x)0在[1,2]内有唯一的根。将原方程改写
x20x22x10得迭代函数 (x)20x22x10。
为观察(x)在[1,2]内的取值,注意到
'(x)20(2x2)(x22x10)20,x[1,2]故
(x)在[1,2]单调下降。由(1)20(2)10139,有1109(x)20132。于是有当x[1,2]时,
(x)[1,2]。此外,易得当x[1,2]时
20(2x2)20(222)'(x)222(x2x10)(12110)2Taylor公式:
f(x)f(xk)f'(xk)(xxk)xkN(x*),k在
x与x之间将xx代入,
*k1f''(k)(xxk)22!120169L1由推论2.1,可得迭代格式xk120x22x对
kk10任取x0[1,2]产生的数列{xk}都收敛。由
x*[1,2],得计算结果准确到4位有效数字时应有误差限。取x01进行迭代计算,x11.538461538 x1x00.5380.5102x21.295019517
x22x10.2434420210.510
x101.36869397
x310x90.3658421030.510
所以取 x*x101.36869397。注意到本题准确
根为 1.3688081…,显然以上算出的近似根满足要求。定理2.4 设x*是迭代函数(x)的不动点,m为正整
数,且(m)x在x*的邻域N(x*)内连续,并有关系
:
(x*)0,(x*)0,,(m1)(x*)0,(m)(x*)0,
则有
xk1(xk)产生的数列{xk}在N(x*)上
x**)是m阶收敛的,且有limk1x(m)(xk(xkx*)mm!
(2.9)Newton迭代法基本思想:将函数f(x)做线
性化处理(即将
f(x)在某点展开为Taylor级数后,
取其线性部分L(x)代替f(x)),把方程f(x)0转化为对应的近似方程L(x)0,再从L(x)0中构造迭代公式。定理5 设
f(x*)0,
f'(x*)0,且f(x)在x*的领域N(x*)内有二阶
连续导数,则
Newton迭代格式
xk1xf(xk)kf'(x至少是平方收敛的(Newton
k)不动点方程)。证明 由条件知
f(x)在N(x*)成立
0f(x*)f(xk)f'(xk)(x*xk)1f''()(x*x22k)设
f'(xk)0,用f'(xk)同除上式两端,并利用
Newton
迭代公式,整理后可得
x**x1xf''()f'(x(xkx)22k)所以有
limx*k1xf''()f''(kxx*2limk2f'(x)x*)2f'(x*)证毕。 kk定理6 设
f(x)C2[a,b],满足下列
3个条件
f(a)f(b)0;
f'(x)0,x[a,b];
f''(x),x[a,b]存在且不变号。
例2.8 用Newton迭代法求例2.4中非线性方程在x1附近的根,计算到x6k1xk10。 解 令 f(x)x32x210x20考虑区间
[a,b][0,2],由f(0)f(2)0及在[0,2]内有
f'(x)3x24x100,
f(x)6x40满足定理
6的条件,要
f(x0)f''(x0)0,取x01.5,用Newton迭代
x32x2法计算:xkk10xk20k1xk3x2
k4xk10有x11.37362637363
x1x00.126374106
x21.36881481962
x2x10.481155102106
x31.36880810783
x3x20.671179105106
x41.36880810782x4x30.1303961010106所
以
x*x41.36880810782即为所求。
Chapter 3线性方程组的迭代解法基本思想(与简单
迭代法类比)将线性方程组
Axb等价变形为
xBxgx理
k1k以构造向量迭代格式
用算出的向量迭代序列
Bxgx1,x2,去逼近解。1)Jacobi迭代法构造原
10x1x22x37.2x110x22x38.3x1x25x34.2点方程组
先将其写成不动
1x1a(b1a12x2a13x3a1nxn)111(b2a21x1a23x3a2nxn)x2a22……1xna(bnan1x1an2x2ann1xn1)nn将上式写成迭代格式(Jacobi迭代格式):
1x110(7.2x22x3)1(8.3x1x3)x210 1x35(4.2x1x2)由
xk11xkxk1
(k1)1(k)(k)(k)x(baxax…-ax11221331nn)1a11(k1)1(k)(k)(k)x(baxax…-ax222112332nn)a22……(k1)1(k)(k)(k)x(baxax…-axnn11n22nn1n1)nann 3)取定初始向量x0得Sor迭代 (k1)k(k)(k)x1x(7.2x2x123)110(k1)k(k1)(k)x1x(8.3xx2213)10(k1)k(k1)(k1)x1x(4.2xx)31235 Ax=b,将系数矩阵A作如下分解ADLU
a11a22D00a021Lan1an2,ann00a12000,U000x1,x2,12T00,xn0kT,代入,,这里
x,x,可逐次算出向量序列,xxkx1,x2,kk,xnk。Seidel迭代格式:
(k1)1(k)(k)(k)x(baxax…-ax11221331nn)1a11(k1)1(k)(k)(b2a21x1(k1)a23x3…-a2nxn)x2a22Jacobi迭代的向量迭代格式 ……k1k11xDLUxDb1(k1)(k1)(k1)(k1)kxna(bnan1x1an2x2…-ann1xn1)k1xBJxgJ nna1n
a2n0Sor法的迭代格式 Seidel向量迭代格式 xik1k1ki1k1nkBSxgS 1xibiaijxjaijxj,i1,2,,nxaiij11ji1k对线性方程组
BSDLU,gSDLb。
1Sor法的向量迭代格式
xk1Bxg1kBDL1DUgDLb
n维向量空间
1IBIBI11IBIBIB11IBIBIB1B1
Ra|aa1,a2,n,an,akR
mnIB
1矩阵空间
RmnAmn|Amnaij,aijR
IB111Bn连续函数空 常用的矩阵范数有如下4种 1)列范数:A1max1jnCa,bfx|fx在[a,b]上连续(1)Rn的向量范数1) 2xkk1nx1xkk1nai1ij2)行范数:
2) Amaxaij3)F范数:A1inj1nFi,j12aij nx23) xmaxxk1kn 4)2范数:特征值。 A2maxkk,max是kATA最大(2) 的矩阵范数
矩阵范数要满足如下四条
Rnn**limxxlimxx0。定理3.2
kAR1)
nn,有
A0,且A0A0;
;
nnAR,K,有AA2)
式中
是
Rn上任何一种范数。定理3.3 设
A3)A,BR4)
nn,有,有ABAB为任意算子范数,则有AxkA;证明 设
k
是A的任意一个特征值,
A,BRmaxnxRx0nnABAB为对应的特征向量,
(相,称
容性)定义3.3 设矩阵
ARnnAxx则有kkk取范数,得
AAxxPpP为矩阵A的算子范数。例:设
AxkAxkkxkkxk因为
xk0,上式同除
k1xk,得
kA
为矩阵的算子范数,证明若奇异矩阵,且
B1,则IB为非
IB11证:用反证法。若
1B由k的任意性可得AA。1)收敛条件,
kx定理:线性迭代格式始向量
Bxg对任意初
IB为奇异矩阵,则其对应的方程组
IBx0有非零解x,即有x0,使
IBx0,得出Bxx两边取范数并作
范数运算
x0都收敛的充要条件是迭代矩阵谱半径
xkx*,在(B)1。证明 必要性,设limkBxBxxxxk1Bxkg中令
k,得
x*Bx*g,两式相减并把k+1记为k,得
x0B1,矛盾,得IB非奇异。
xkx*Bxk1x*B2xk2x*Bkx0x*k由lim*kxx及x0,x*的任意性,有klimBk0。再由引理,可得(B)1。充
分性,因为
(B)1,则有I-B非奇异(这里I为单位矩阵),从而线性方程组IBxg有唯一解
x*,即有
IBx*g展开有
x*Bx*g。类似必要性处理,有
xkx*Bkx0x*由引理,由
(B)1有limkBk0,上式取极限,得
limk*kxx。定义3.6,设ARnn1)如果A的主对角元素满
足
nakkakj,k1,2,,nj 则称矩阵A是
j1k严格行对角占优阵;2)如果A的主对角元素满足nakkaik,k1,2,,ni则称矩阵A是严格
i1k列对角占优。定理 严格对角占优阵是非奇异矩阵。证明 不妨设矩阵
Aaijnn是严格行对角占优阵。
用反正法。若A是奇异的,则由矩阵理论可知,齐次线性方程组
Ax0有非零解x*,即存在
x*x*,x*12,,x*Tn0,满足Ax*0。记
x*mxx*m0,x*x*mk,k1,2,,n将
Ax*0的第m个等式nax*mkk0写为
k1ax*nax*mmmmkkk等式两边取绝对值有
k1m
na*mmx*mammxmx*kknamkax*mkkk1mkk1mmkx*kknak1m因为
x*m0,上式同除
x*m,有
nammamkkx*/x*kmnamkk1mk此与A是
k1m严格行对角占优阵矛盾。故若A是非奇异的。
判别条件Ⅱ设矩阵A是严格对角占优阵,则线性方程组
Axb的Jacobi迭代和Seidel迭代对任
意初始向量x0都收敛。证明 只对A是行对角占优情况证之。设矩阵A是严格行对角占优阵,则有
nakkakj,k1,2,,nj,
j1k1naakj1,k1,2,,nkkj Jacobi迭代矩
j1k阵BJID1A,故有 nnBJmax1knakj1max1knakjjaj1akkkkkjj1k1由判别条件Ⅰ,可得Jacobi迭代的收敛性。对Seidel迭代,其迭代矩阵BSDL1U,设
k是
矩阵
BS的任一特征值,则有特征方程
det1kIBSdetDLdetkDLU0因detDL10,故矩阵Bs的特征方程变为
detkDLU0这个行列式方程
对
应
的
矩
阵
ka11a12a1nBDLUka21ka22a2nSkkan1kan2kann
如果得k1,利用矩阵A的行对角占优定义,可以
出如下n不等式Gauss构造原理Gauss消元法的求解过程分为两个:“消元”:把原方程组化为上三角方程组; “回代”:求上三角方程组的解。例3.4 研究下面
kakkkakkkakjj1jkkakjj1k1jk1nx1x210.0001线性方程组 xx212,k1,2,,n的Gauss消元法求解结果,假设计算在4位浮点十进制数的计算机上求解。当将方程组输入计算机后,计算机中记录为
akj这说明矩阵BS也是行严格对角占优阵,由定理,有
detBS0。矛盾,故应有k1成立。由k的收敛性。
例3.1 用Jacobi 迭代法解线性方程组
的
任意性有谱半径BS1,于是可得Seidel迭代
0.1000103x10.1000101x20.1000110.100010x0.100010x20.20001可以进行
Gauss
消元法计算。因为
a110.10001030 5x1+2x2+3x3= -12 x1+4x2+2x3= 20 2x1-3x2+10x3= 3 kk1要求误差xx104解 本题的Jacobi迭代格
(k1)1m21a21/a11104,做第一步Gauss消元法,
有
(1)(0)(0)a22a22m21a120.10001010.1000105对阶式
(k)2(k)3为
x2.40.4x0.6x(k1)(k)(k)x250.25x10.5x3(k1)(k)(k)x30.30.2x10.3x20.000011050.10001050.09999105(1)b20.10001050.1000105它的
类似有
,得方程组
0.40.600.25B00.5Jacobi迭代矩阵为J。 00.20.3因为
0.1000103x10.1000101x20.1000150.100010x20.10001回代,求得解
x21,x10,但这个解不满足
BJF0.981071<1,故本题的Jacobi迭
原方程组,求出的解是错误的!若将本例的方程组调
代格式对任意初值取初值
1x0都收敛。
Tx00,0,0T进行迭代计算如下
10x1x22换方程的次序,变为在同一个
0.0001xx112计算机上再用Gauss消元法计算,可得到解x1x2.4,5,0.3,2Txx51041,
x4.58,4.25,2.28,x2x12.06104x21,它与原方程组的准确解xx2110000,9999x4.,2.99997,2.,xx故
所
求
近
18T18170.41104104解
为
9998相差不多,是可以接受的解,主要是舍入9999误差造成的。LU分解法:基本思想:将方程组
似
x14,x22.9997,x32。(准确解为
x14,x23,x32)
Axb的系数矩阵A分解为下三角矩阵L与上三
角矩阵U的乘积,即
ALU,使求解Axb的
问题变为求解两个三角矩阵的
问
ALULyb和Uxy。
即
题
LybAxbLUxbUxyDoolittle分解算法
100223L210U031故,求解
121006100y13Ly210y21解得
121y73u1ja1j (j1,2,,n),li1ai1/u11 (i2,3,,n)i1uijaijlikukj k1j1lij(aijlikukj)/ujj A可以进行Doolittle
k1分解的条件,定理3.11:非奇异矩阵A的Doolittle分解是唯一的。定理3.12设ARnn,且A的各
阶顺序主子式k0(k1,2,,n),则A有唯
一的Doolittle分解。即:能进行Gauss消元法就能
做Doolittle分解。Doolittle分解的紧凑格式按下图方式存贮和计算的格式称为Doolittle分解的紧凑格式。
u11u12u13u1n第一框l21u22u23u2n第二框l31l32ln1ln2unn第n框例3.6用LU分解法求解线性方程组
2x12x23x334x17x27x312x4x5x37解 因为没
12有指定用哪种LU分解,这里使用Doolittle分解法
223231做之。用紧凑格式计算。紧凑格式
126
y13, y25, y36求解
223Ux031x1x32006x5得所求解为
36x31, x22, x12定义3.8 设非奇阵
ARnn,称Condp(A)ApA1p为矩阵A的条件数。条件数值越大,解对系数越敏感方
程组越病态。
Chapter4.幂法:基本思想:利用矩阵的特征值与特征向量的关系Axx构造迭代向量序列来求矩阵按模最大的特征值及其相应规范化幂法算
法1.输入矩阵A、初始向量V0,误差eps,实用中一般取V01,1,,1;2.k13.计算V(k) Au(k-1)4.mk
max(V(k)), mk-1 max(V(k-1))5.u(k) V(k)/mk 6.如果|mk - mk-1| 逆序相乘Ak的分解矩阵, Ak1RkQk③ 判别Ak1是否为主对角线为1*1或2*2的子块形式的分块 上三角形矩阵,若是对角线上各子块的特征值为所求特征值,终止,否则k+1k,转①。定义4.2 设非零 向量VvT1,v2,,vnRn,则称矩阵 PI1VVT为Householder矩阵,式中 0.5V2。例4.3 设向量x1,1,1,1T2,试 构造一个镜面反射矩阵P,使Px,0,0,0,式中x2。解 Tsgnx1x242,面 反 射 矩 阵 xxklinxk0xxikkini0,1,2,n x16,uxe13,1,1,1T 得 所 求 镜 代入式(5.3),有定理3. 设函数次插值多项式,则有对任何xyf(x)在 b成立 333335111PI1uuT63151。 3115Chapter 5 Lagrange插值:基本思想 将待求的n次多项式插值函数Pn(x)改写成用已知函数值为系数的n+1个待定n次多项式的线性组合型式,再利用插值条件和函数分解技术确定n+1个待定n次多项式形式求出插值多项式。 构造原理 已知数表 n(x)是满足插值条件的n[a,b]上有n+1阶导数,Pa,fn1RnxfxPnxn1x,n1!式中n1(x)xxk,k0nxka,b。 Lnxi0nxxkyi证明 因为k0xxik kinPn(xk)f(xk),故有xy设 次 x0 x1 …xn y0 y1 …yn 插 值 多 项 nRnxk0,可分解为式 k0,1,,n于是R(x) n Rnxkxn1x为求出 k(x),做辅助函数 nLn(x)y0l0n(x)y1l1n(x)ynlnn(x)yilin(x)i0gtftPntkxn1t则有在 tx0,x1,,xn,x时,g(t)=0,即g(t)式中lin(x)(i0,1,,n)是与yi无关的 nn次多 在[a,b]上有n+2个零点,显然g(t)在由 项式。由插值条件(5.1),有 x0,x1,,xn,x组成的n+1个小闭区间上满足 gn1Ln(xk)yklkn(xk)yilin(xk)yki0ikRolle中值定理,故g'(t) 在[a,b]上有n+1个零点。 类似的有g(t) 在[a,b]上有n个零点,反复运用Rolle中值定理,有 t在[a,b]上有1个零 (k0,1,,n)由于 yk与linx(i0,1,2,,n)无关,可得 n1g0。在上式两边对t点,设为,则有 求n+1阶导数,有 1iklinxkik0ik为确定linni,k0,1,2,,ngn1tfn1t0n1!kxt = 代入上式,例1 已知 代入式(5.8),即得定理结果。 将 x,注意到linx是n次多项式,由式 k0kikxfn1/n1! lxaxxk式中a为待定常数,由 可知inf(x)lnx的函数表为 linxi1确定,于是有 x 3.0 3.1 3.2 3.3 3.4 y=f(x1.0981.1311.1631.1931.22) 612 402 151 922 3775 试用线性插值和抛物线插值分别计算似值,并估计相应的误差。 f(3.27)的近 解 线性插值需要两个节点,内插比外推好,因为3.27(3.2,3.3),故选x03.2,x13.3, xi1xih,xi2xi2hLagrange余项定理,有函数余项。利用n=2的在[xi,xi2]的插值 为由n1的Lagrange 插值公式,有 exx3.3x3.2L1(x)1.1631511.193922 3.23.33.33.20.307710x0.178479 所以有ln3.27L1(3.27)1.1846907x03.2,x13.3,x23.4,由 值 公 式 eR2(x)t(t1)(t2)h33!因为t[0,2],[4,4] 为 保证内插,对抛物线插值,选取三个节点为 n=2的Lagrange 插 , 有 23T3maxt(t1)(t2)0t29所,以 M3maxexe4344x4(x3.3)(x3.4)要L2(x)1.1631511.193922(3.23.3)(3.23.4)R2(x)106,只需33h3106,得 (x3.2)(x3.4)(x3.2)(x3.3)1.223775102(3.33.2)(3.33.4)(3.43.2)(3.43.3)h360.00578取h=0.0057可满足要求.由 h8/n得n1405,故造表时取1405个等距0.0459x0.60606x0.306225故有 2M333233R2(x)T3()h33h33!2933ln3.27L2(3.27)1.18478709考 节点来计算函数值 f(xk)即可。2.Newton 插值, 1f(x)x[3.2,3.3]虑误差.当时,有, 3.22所以线性插值计算ln3.27的误差估计为基本思想:Newton插值也是n次多项式函数作为新基底,将待求的n次插值多项式Pn(x)改写成新基底的线性组合形式,然后利用插值条件确定Pn(x)的待定系数来求插值函数。定义 已知函数f(x)在互异节点 13R1(3.27)(3.273.2)(3.273.3)0.103102!3.222f(x)而当x[3.2,3.4]时,,故抛物 3.23线插值计算x0,x1,,xn上的值分别为 f(x0),f(x1),,f(xn),记 ln3.27的误差估计为25R2(3.27)(3.273.2)(3.273.3)(3.273.4)0.9103!3.234,4上给出e的等距节点函数表,若 x想用二次插值来计算e的近似值,并要求截断误差 例2在不超过106xf[xi1,xi2,,xik]f[xi0,xi1,,xik1]f[xi0,xi1,,xik]xikxi0式中xi0,xi1,,xik是x0,x1,,xn中互不相同的 k1,2,,n,k+1个节点,称f[xi0,xi1,,xik]为f(x)关于节点xi0,xi1,,xik的k阶差商。 表.1 差商表 ,问此函数表的步长h应为多少?解 x f(x) 一阶差商 二阶差商 设xk(k0,1,,n)为4,4上的等距节点。 xi,xi1,xi2是 ,注 意 有到 x0 y0 f[x0,x1] f[x0,x1,x2] ………二次插值需要三个节点,为满足一般性,这里取三个相邻的节点构造二次插值函数。设 x1 y1 f[x1,x2] . . . . . . f[x1,x2,x3] . . 4,4上的任何三个相邻节点,则当 x[xi,xi2]时 xn2yn2f[xn2,xn1]f[xn2,xn1,xn]xxith(0t2) xn1yn1 f[xn1,xn] xn yn 近似函数来计算f(1.5)的近似值2)给出你所得插值多项式的误差关系式,估计近似计算f(1.5)的误差。解 仿照Lagrange插值函数的构造方法来做之。给定4个数据信息,选择3次多项式作为值多项式。令f(x)的插f(x)的3次插值多项式为 H(x)f11(x)f22(x)f13(x)f24(x)中 例3 给定数表 x f(x) 1 0 2 2 4 8 5 12 6 18 8 28 式 k(x),k1,2,3,4都是与 f1,f1,f2,f2无关的3次多项式。插值 的特点是插值函数H(x)要与给定的关于f(x)的所有数据相等,即满足插值条件 试用二次和四次Newton插值多项式计算的近似值。 解 作差商表 f(5.8)H1f(1),H1f(1),H2f(2),H2f(2) 由此可得有关 一 阶二阶三阶四阶 x f(x) 差差商 差商 差商 商 1 2 4 0 2 8 2 3 4 6 5 1/3 1/3 1 -1/3 0 k(x),k1,2,3,4的一组值 五阶差商 1/30 -1/60 1/6 -1/12 -1/3 1(1)1,2(1)0,3(1)0,4(1)0(2)0,(2)1,(2)0,(2)01234(1)0,3(1)1,4(1)0利用 1(1)0,2(2)0,3(2)0,4(2)11(2)0,2这组数据,可得k(x),k1,2,3,4函数分解形式 5 12 6 18 8 28 并求出k(x)。为求1(x),找到与之有关的数据 用二阶Newton插值近似计算f(5.8),应选与5.8最近的3个节点x04,x15,x26。由表中 1(1)1,1(2)0,1(1)0,1(2)0由该数据可知x=2是1(x)的二重根,且1(x)是3次多项式,故可设1(x)的分解形式为 1(x)ax1bx22x04由 行数据有 2N2(x)84(x4)1(x4)(x5)125xx 2(x)2x1x2类似地可以求出所以有f(5.8)N2(5.8)16.。要用N4(x)来计求得1算 1(1)1,1(1)0,可以求出式中的 它 3 个 待 定 a,b,最后 f(5.8),取与5.8最近的5 x02,x14,x25,x36,x48个节点由表中 有 其函数 2(x)(52x)(x1)2,3(x)(x1)(x2)2,故有所求插值函数 x02行数据 336356x122x19xx 1211222N4(x)23(x2)(x2)(x4)(x2)(x4)(x5)0.693147(52x)(x1)(x1)(x2)0.5(x2)(x1)361从而有f(1.5)H(1.5)0.409074,为求其余(x2)(x4)(x5)(x6)12RxfxHx项,令由234H(x)01(x)0.6931472(x)13(x解 2所以 R(1)R(2)R(1)R(2)0,有R(x)可 分 为 f(5.8)N4(5.8)11.0272。3.Hermite插值例 f(x)有四阶导数,且4设 Rxkxx,xx1x22f(1)0,f(1)1,f(2)0.693147,f(2)0.51)求函数 f(x)的一个插值多项式H(x),并用此 基本思想仿照Lagrange插值函数的构造方法,先设 定函数形式,再利用插值条件求出插值函数。 例 5已知函数 f(x)的4个数值为 得若干个小区间,然后在每个小区间上都用 f(x)的 f(1),f(1),f(1),f(2)1试求 多项式 f(x)的一个插值 满足插值条件 P(x),这里 P(x)m次插值多项式作为f(x)的近似函数。定理 8 假设出现在如下不等式中的函数的高阶导数存在,记 P(1)f(1),P(1)f(1),P(1)f(1),P(2)f(2)。② 写出 故取 hmax(xk1xk),则有1. 分段线性插值的误 0kn1差估计为h2f(x)f(x)P(x)的误差估计式。解 因为有4个值,R1(x)f(x)(x)8maxaxbP(x)为三次多项式,令 x[a,b]2. 分段三次Hermite插值函数的误差估计为 P(x)f(1)h1(x)f(1)h2(x)f(1)h3(x)f(2)h4(x)式中hi(x)(i值 条 件 1,2,3,4)都是三次多项式。由插 有 , 当 h4(4)R3(x)f(x)(x)maxf(x)x[a,b]4axb4!2x1证明 只对结果2给出证明,结果1可类似证明。由两点的Hermite插值余项可知,在区间[xk,xk1]上,分段三次Hermite插值函数 时,得 h1(1)1,h2(1)0,h3(1)0,h4(1)0(1)1,h3(1)0,h4(1)0h1(1)0,h2(1)0,h3(1)1,h4(1)0h1(1)0,h2x=2 时 , 可 (x)与被插值函数 关 系 式 当得 f(x)的误差 f(4)()R3(x)f(x)(x)(xxk)2(xxk1)24!1max[(xxk)2(xxk1)2]maxf(4)(x)axb4!xkxxk1因h1(2)0,h2(2)0,h3(2)0,h4(2)1利用 h1(x)的4个值, (1)0,h1(2)0及h1(x)是三h1(1)1,h1(1)0,h1次 多 项 式 , 可 设由 x[xk,xk1]为又h1(x)[a(x1)2b(x1)c](x2)由 4h1max[(xxk)2(xxk1)2]4(xk1xk)4k4xkxxk122h1(1)1,得c = -1;由h1(1)0,得b = -1; h1(1)0, 得 故对k= 0,1,…,n有 a =-1,于是有 h1(x)[(x1)2(x1)1](x2)(x2x1)(2x)2。5.4曲线拟合法,基本思想:关,这就证明了结果 同理可设 根据给定的数据点yif(xi)(i0,1,,n), 选择合适的拟合函数类M,再利用最小二乘法确定具体的拟合函数。法方程组为h3(x)a(x1)2(x2)由nnnnm3xxyiiiiiiih4(x)a(x1)i0i0i0a0i0nnnnh2(x),h3(x),h4(x)在x =1,x =2的值可得 2m1xxxaxyiiiii1iiii0i0i01i023h2(x)x(x1)(x2),h3(x)(x1)(x2),h4(x)(x1)2anmnnnmm1xmy于是所求ixi2mixiixiiiii0i0i0i0f(1)223P(x)f(1)(xx1)(2x)f(1)x(x1)(x2)(x1)(x2)f(2)(x1)例7给定数据表 2观察余项在x=1,x=2的信息,可写出误差关为xi -3 -1 0 1 3 h4(4)R3(x)f(x)(x)maxf(x) 4axb4!2x[a,b]注意到上式右端与x属于哪个小区间无 h2(x)[a(x1)b](x1)(x2)f(4)()f(x)P(x)(x1)3(x2)4!(1,2)y i-1.2 1.3 1.5 1.9 2 分段多项式插值:基本思想将被插函数f(x)的插值节点由小到大排序,以每对相邻的两个节点为端点获 求二次拟合曲线。解 求二次拟合曲线就是求2次最 小二乘多项式,由于没给出权系数,可选 i1(i0,1,…,4)。下面用两种方法求解。取 基函数0(x)1,1(x)权函数(x)1的二次最佳平方逼近多项式。解 有题意知 Mx,2(x)x2,则 a1xa2x2 二次拟合曲线函数形式为(x)a0本题有5对数据,故 Span{1,x,x2},即0(x)1, n4,计算得法方程组 1(x)x,2(x)x2设所求最佳平方逼近多项 2(x)abxcx式为其对应的法方程组 5020a05.50200a10.21解之得 2001a210.4***a01.6524,a10.51,a20.1381,故所 求 *二次拟合曲线 2为 (0,0)(0,1)(0,2)a(0,f)(,)(,)(,)b(,f)1112110 (,)(,)(,)c(,f)2122220分 别 11(x)1.65240.51x0.1381x血样,测得血药浓度Cg/mL数据如下 计算系数 11例8为 试验某种新药的疗效,医生对某人用快速静脉注射方式一次注入该药300mg后,在一定的时期th采取 (0,0)dx2,(0,1)(1,0)=xdx(1,2)(2,1)=x3dx0112128 (2,0)=xdxth 0.25 0.5 1 1.5 2 3 (1,4 1)(6 0,2)1311224Cg/mL 19.21 18.15 15.36 14.10 12. 9.32 7.45 5.24 3.01 (2,2)xdx,(0,f)x4dx1155试确定血药浓度C与时间t的关系。解 在平面坐标112解得56(1,f)xdx0,(2,f)xdx11上画出ti,ci散点图并观察此图形状,发现其呈现负7指数曲线特点,故选择拟合模型为 36CC(t)aebt ,ab0两边取对数,得 b0,a35,c7故所求的最佳平方逼近 lnCtlnabt令362P(t)lnC(t),Alna,Bb,则有线性模 型P(t)多项式为 (x)35x。 7ABt本题没有强调某次注射具有不 1,i0,1,,8。 Chapter 6,例 6.1确定求积公式 同的重要程度,因此可以认为权i于是有P(t)ABt的法方程组为 21f(x)dx11f(1)f(2) 2298tii0888tiPcilncilnciAi0i0i0i02118888ti取fx1,R(1)1dx1102B1ti22tiPcitilncilncii0i0i0i021133取fxx,R(x)xdx120求解得 12222Aln a2.9943, B=b0.2347,从而 21212751222取fxx,R(x)xdx1202.99431ae19.9714,b0.2347故血药与时232628的代数精度。 解 间的关系为C19.9714e0.2347t。例 9 f(x)x4,x[1,1],求f(x)在[1,1]上关于 故本题求积公式代数精度为1。例 6.2确定下面求积公式 2h2hf(x)dxAf(h)Bf(0)Cf(2h)若fxM2,对给定计算精度 ,令 的参数A,B,C,使它具有尽可能高的代数精度,并指出相应的代数精度。解 本题要先求出具体的求积公式,然后再判断所求公式的代数度。公式有3个待定参数,h不是求积公式的参数,故利用3个条件得到的3个等式关系就可以解决求出具体求积公式的问题。依次取 Rf,Tnba212hM2得出h12baM2复化Simpson公式 baf(x)1,x,x2代入求积公式并取 等号,有 n1baf(x)dxf(a)fb46nk0n1fx12k1k2复化Simpson公式的余项 记 n1baSnf(a)fb46nk0n1fx12f(xk)k1k21. ABC4hA2C0A4C16h/3解之得 有复化Simpson公式的求积余项 4A2h1h8hh,B,C故所求的求积公式为93916h4h8h2hf(x)dx9f(h)3f(0)9f(2h)3为确定其代数精度,再取f(x)x代入求出的公 13R(x)h0,故所求的式继续计算,有 3求积公式具有二阶代数精度。插值型求积公式,基本思想:利用被积函数 Rf,Snhbabah4f(x)dxSnf()1802ba,a,bn1例5.7考虑用复化Simpson公式计算 sinxIdx 0x要使误差小于0.5×10−6,那么求积区间[0,1]应分成 多少个子区间。以此计算积分近似值。 解 复化Simpson公式的求积余项为 f(x)的插值函数(x)代替 f(x)做定积分的近似计算来构造求积公式。复化求 积公式,基本思想,将求积区间[a,b]分成若干个小区间,然后在每个小区间上采用数值稳定的Newton-Cotes公式求小区间上的定积分,最后把所有小区间上的计算结果相加起来作为原定积分的近似值。复化梯形公式 Rf,Sn10h414f()hf51802290 4ban1baf(x)dxf(a)f(b)2f(x)k 2nk1式中h要 计101sinx,f(x)。为估计误差,nnx算复化梯形公式的余项 n1ba记Tnf(a)f(b)2f(x)k2nk1maxf(x)40x1。注意到 (5.15) bah3f(x)dxTnf(k)k012n1kxk,xk1h3nba2f()hf()1212故复化梯形公式的求积余项1sinxf(x)costxdt故0xkk1d1sinxkkf(x)costxdttcos0txkdt0kdxx2a,b由此得 Rf,Tnf(x)dxTnabba2h f()1211maxf(x)tcostxkdttkdt000x12k1a ,b从而有k1k 由此可知,复化梯形公式的代数精度是1。 Rf,Sn43211111h2y15540.5106(xn)O(h)O(h)6 290n412905n解出n103.43,故要求出满足计算精度要47212故局部截断误差主项是hy(xn),方法是一阶的。 6定义6.3 设用某种数值方法求初值问题(6.1)在任意节点xk的数值解yk时,满足k1k,则称该数值方法是绝对稳定的。试验方程求的定积分值,只要将[0,1]分成4个子区间即可,此时算出 IS40.9460833 Chapter7 用数值微分的2点前差公式代替近似离散化方程 y'y将Euler公式用于试验方程y'y, 得到yk1设计算 y'(xk),得到 ykhyk(1h)yk (6.8) y(xk1)y(xk)y'(xk)f(xk,y(xk))记xk1xkhxk1xk,做yky(xk),“”,得 差分方程 yk时有舍入误差k,k0,1,2,,则 yk1k1(1h)(ykk)得有 k1(1h)k要想k1k,只须 1h1,因此Euler方法在1h1时是绝对稳定的,其绝对稳定域为复平面h上以-1为中 心的单位圆盘。 yk1ykf(xk,yk)写容易计算的形h式 yk1ykhf(xk,yk),n1) (Euler公式) (k0,1,2,ek1y(xk1)yk1为单步法(6.4)在节点 xk1的整体截断误差,而称 Tk1y(xk1)y(xk)h(xk,y(xk),h))为在xk1点的局部截断误差。例6.1常微分方程初 yf(x,y)值问题的单步法 y(x)y00hyn1yn[f(xn,yn)2f(xn1,yn1)],hxk1xk3试求其局部截断误差主项并回答它是几阶精度的? 解 该单步公式的局部截断误差是 hTn1y(xn1)y(xn)[f(xn,y(xn))2f(xn1,y(xn1))]3hy(xn)2y(xn1) 3h2h3h4(4)y(xn)hy(xn)y(xn)y(xn)y(xn)2!3!4!y(xn1)y(xn)h2h2y(xn)y(xn)hy(xn)hy(xn)y(xn)332!1212(1)hy(xn)()h2y(xn)O(h3) 3323 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- efsc.cn 版权所有 赣ICP备2024042792号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务