数值计算方法计算习题
- 格式:doc
- 大小:62.57 KB
- 文档页数:2
数值计算⽅法习题答案(第⼆版)(绪论)数值分析(p11页)4 试证:对任给初值x 0,0)a >的⽜顿迭代公式112(),0,1,2,......k a k k x x x k +=+= 恒成⽴下列关系式:2112(1)(,0,1,2,....(2)1,2,......k k k x k x x k x k +-=-=≥=证明:(1)(21122k k k k k k x a x x x x +-??-=+==? ??(2)取初值00>x ,显然有0>k x ,对任意0≥k ,a a x a x x a x x k k k k k ≥+-= +=+2121216 证明:若k x 有n 位有效数字,则n k x -?≤-110218,⽽()k k k k k x x x x x 288821821-=-???? ??+=-+ nn k k x x 2122110215.22104185.28--+?=??<-∴>≥ 1k x +∴必有2n 位有效数字。
8 解:此题的相对误差限通常有两种解法.①根据本章中所给出的定理:(设x 的近似数*x 可表⽰为m n a a a x 10......021*?±=,如果*x 具有l 位有效数字,则其相对误差限为()11 **1021--?≤-l a x x x ,其中1a 为*x 中第⼀个⾮零数)则7.21=x ,有两位有效数字,相对误差限为025.010221111=??≤--x x e 71.22=x ,有两位有效数字,相对误差限为025.010221122=??≤--x x e 3 2.718x =,有两位有效数字,其相对误差限为:00025.010221333=??≤--x e x ②第⼆种⽅法直接根据相对误差限的定义式求解对于7.21=x ,0183.01<-e x∴其相对误差限为00678.07.20183.011≈<-x e x 同理对于71.22=x ,有003063.071.20083.022≈<-x e x 对于718.23=x ,有00012.0718.20003.033≈<-x e x备注:(1)两种⽅法均可得出相对误差限,但第⼀种是对于所有具有n 位有效数字的近似数都成⽴的正确结论,故他对误差限的估计偏⼤,但计算略简单些;⽽第⼆种⽅法给出较好的误差限估计,但计算稍复杂。
fuxiti例1证明方程1-x-sin x=0在区间[0,1]内有一个根,使用二分法求误差不超过0.5×10-4的根要迭代多少次?证明令f(x)=1-x-sin x,∵f(0)=1>0,f(1)=-sin1<0∴f(x)=1-x-sin x=0在[0,1]有根.又f'(x)=1-c os x>0(x∈[0.1]),故f(x)=0在区间[0,1]内有唯一实根.给定误差限ε=0.5×10-4,有只要取n=14.例4选择填空题1. 设函数f(x)在区间[a,b]上连续,若满足,则方程f(x)=0在区间[a,b]一定有实根.答案:f(a)f(b)<0解答:因为f(x)在区间[a,b]上连续,在两端点函数值异号,由连续函数的介值定理,必存在c,使得f(c)=0,故f(x)=0一定有根.2. 用简单迭代法求方程f(x)=0的实根,把方程(x)=0表成x=ϕ(x),则f(x)=0的根是( )(A)y=x与y=ϕ(x)的交点(B) y=x与y=ϕ(x)交点的横坐标(C) y=x与x轴的交点的横坐标(D) y=ϕ(x)与x轴交点的横坐标答案:(B)解答:把f(x)=0表成x=ϕ(x), 满足x=ϕ(x)的x是方程的解,它正是y=x与y=ϕ(x)的交点的横坐标.3.为求方程x3―x2―1=0在区间[1.3,1.6]内的一个根,把方程改写成下列形式,并建立相应的迭代公式,迭代公式不收敛的是( )(A)(B)(C)(D)答案:(A)解答:在(A)中故迭代发散.在(B)中,故迭代收敛.在(C)中,,故迭代收敛.在(D)中,类似证明,迭代收敛.例3填空选择题:1. 用高斯列主元消去法解线性方程组作第1次消元后的第2,3个方程分别为。
解答1. 选a21=2为主元,作行互换,第1个方程变为:2x1+2x2+3x3=3,消元得到是应填写的内容。
一、解答下列问题:1) 数值计算中,最基础的五个误差概念(术语)是 , , , , .2) 分别用 2.718281, 2.718282 作数e 的近似值 ,它们的有效位数分别有位, 位; 又取73.13≈ (三位有效数字),则≤-73.13 .3)为减少乘除法运算次数,应将算式32)1(7)1(51318---+-+=x x x y 改写成4)为减少舍入误差的影响,应将算式 9910- 改写成 5)递推公式 ⎪⎩⎪⎨⎧=-==-,2,1,110210n y y y n n如果取41.120≈=y 作计算,则计算到10y 时,误差有这个计算公式数值稳定不稳定 ?1) 绝对误差 , 相对误差 , 有效数字 , 截断误差 , 舍入误差 。
数值计算方法复习题 一、填空题 1、以n + 1个 整 数 点k ( k =0,1,2,…,n ) 为 节 点 的 Lagrange 插 值 基 函 数 为l k (x)( k =0,1,2,…,n ),则()_____.nkk klx ==∑()nkk klx x ==∑以n + 1个 整 数 点k ( k =1,2,…,n ,n+1) 为 节 点 的 Lagrange 插 值 基 函 数 为l k (x)( k =1,2,…,n,n+1),则111(0)__________.n n kk lk ++==∑(1)(1)!n n -+2、序列{}n=0n y ∞满足递推关系:1101,(1,2,...)n n y y n -=-=,若0y 有误差, 这个计算过程是否稳定?____________.不稳定3、42()23,[1,2,3,4,5,6]_____.f x x x f =+-=若则[1,2,3,4,5]_____.f =[1,2,3,4,5,6]0f = [1,2,3,4,5]f = 4、形如()()nbk k ak f x dx A f x =≈∑⎰的插值型求积公式,其代数精度至少可达______次,至多可达______次。
n , 2n+15、已知x =62.1341是由准确数a 经四舍五入得到的a 的近似值,试给出x 的绝对误差界_______________.41102-⨯ 6、设x 和y 的相对误差均为0.001,则xy 的相对误差约为____________.0.002二、计算题 1、(1)设3211A ⎡⎤=⎢⎥-⎣⎦,求1().cond A 解:1121513A--⎡⎤=⎢⎥⎣⎦,1111()414cond A A A -==⨯=。
(2) 设121111A ⎡⎤⎢⎥=-⎢⎥⎢⎥⎣⎦,求2().cond A 解:1232,7,2,26T T A A A A σσ⎡⎤===⎢⎥⎣⎦的特征值为,122()cond A σσ===2、给出数据点: 013419156i i x y =⎧⎨=⎩(1)用012,,x x x 构造二次Lagrange 插值多项式2()L x ,并计算 1.5x =的近似值2(1.5)L 。
第一章 绪论(12)1、设0>x ,x 的相对误差为δ,求x ln 的误差。
[解]设0*>x 为x 的近似值,则有相对误差为δε=)(*x r ,绝对误差为**)(x x δε=,从而x ln 的误差为δδεε=='=*****1)()(ln )(ln x x x x x , 相对误差为****ln ln )(ln )(ln x x x x rδεε==。
2、设x 的相对误差为2%,求n x 的相对误差。
[解]设*x 为x 的近似值,则有相对误差为%2)(*=x r ε,绝对误差为**%2)(x x =ε,从而nx 的误差为nn x x nxn x x n x x x **1***%2%2)()()()(ln *⋅=='=-=εε,相对误差为%2)()(ln )(ln ***n x x x nr==εε。
3、下列各数都是经过四舍五入得到的近似数,即误差不超过最后一位的半个单位,试指出它们是几位有效数字:1021.1*1=x ,031.0*2=x ,6.385*3=x ,430.56*4=x ,0.17*5⨯=x 。
[解]1021.1*1=x 有5位有效数字;0031.0*2=x 有2位有效数字;6.385*3=x 有4位有效数字;430.56*4=x 有5位有效数字;0.17*5⨯=x 有2位有效数字。
4、利用公式(3.3)求下列各近似值的误差限,其中*4*3*2*1,,,x x x x 均为第3题所给的数。
(1)*4*2*1x x x ++; [解]3334*4*2*11***4*2*1*1005.1102110211021)()()()()(----=⨯=⨯+⨯+⨯=++=⎪⎪⎭⎫ ⎝⎛∂∂=++∑x x x x x f x x x e nk k k εεεε;(2)*3*2*1x x x ;[解]52130996425.010********.2131001708255.01048488.2121059768.01021)031.01021.1(1021)6.3851021.1(1021)6.385031.0()()()()()()()()(3333334*3*2*1*2*3*1*1*3*21***3*2*1*=⨯=⨯+⨯+⨯=⨯⨯+⨯⨯+⨯⨯=++=⎪⎪⎭⎫⎝⎛∂∂=-------=∑x x x x x x x x x x x f x x x e n k k kεεεε;(3)*4*2/x x 。
数值计算方法倪勤习题答案数值计算方法倪勤习题答案数值计算方法是一门研究如何利用计算机进行数值计算的学科。
它在科学计算、工程计算、金融计算等领域中有着广泛的应用。
倪勤的《数值计算方法》是该领域的经典教材之一,其中的习题是帮助学生巩固所学知识的重要资源。
下面是一些数值计算方法倪勤习题的答案,供大家参考。
一、插值与拟合1. 设有下列数据点:(0, 0),(1, 1),(2, 4),(3, 9)。
试用拉格朗日插值多项式求x=2.5处的函数值。
解答:拉格朗日插值多项式的表达式为:P(x) = ∑[f(xi) * l(x)] / ∑[l(xi)]其中,l(x) = ∏[(x - xj) / (xi - xj)],i ≠ j根据给定的数据点,可以得到:l0(x) = (x - 1)(x - 2)(x - 3) / (0 - 1)(0 - 2)(0 - 3) = -x(x - 1)(x - 2) / 6l1(x) = (x - 0)(x - 2)(x - 3) / (1 - 0)(1 - 2)(1 - 3) = x(x - 2)(x - 3) / 2l2(x) = (x - 0)(x - 1)(x - 3) / (2 - 0)(2 - 1)(2 - 3) = -x(x - 1)(x - 3) / 2l3(x) = (x - 0)(x - 1)(x - 2) / (3 - 0)(3 - 1)(3 - 2) = x(x - 1)(x - 2) / 6代入公式,得到:P(x) = 0 * l0(x) + 1 * l1(x) + 4 * l2(x) + 9 * l3(x)= -x(x - 1)(x - 2) / 6 + 4x(x - 1)(x - 3) / 2 + 9x(x - 1)(x - 2) / 6= -x(x - 1)(x - 2) / 6 + 2x(x - 1)(x - 3) + 3x(x - 1)(x - 2) / 2= x^3 - 3x^2 + 3x将x=2.5代入上式,得到:P(2.5) = 2.5^3 - 3 * 2.5^2 + 3 * 2.5 = 2.375因此,当x=2.5时,函数值为2.375。
数值分析(p11页)4 试证:对任给初值x 0,0)a >的牛顿迭代公式 112(),0,1,2,......ka k kx x x k +=+=恒成立下列关系式:2112(1)(,0,1,2,....(2)1,2,......kk kx k x x k x k +-=-=≥=证明: (1)(2211222k k k k k k k kx a x ax x x x x +⎫⎛-+=+-==⎪ ⎝⎭(2) 取初值0>x ,显然有0>kx,对任意0≥k ,a a x a x x a x x k k k k k ≥+⎪⎪⎭⎫ ⎝⎛-=⎪⎪⎭⎫ ⎝⎛+=+2121216 证明:若kx 有n 位有效数字,则n kx-⨯≤-110218,而()k k k kk x x x x x 288821821-=-⎪⎪⎭⎫⎝⎛+=-+nnk k x x 2122110215.22104185.28--+⨯=⨯⨯<-∴>≥Θ1k x +∴必有2n 位有效数字。
8 解:此题的相对误差限通常有两种解法. ①根据本章中所给出的定理:(设x 的近似数*x 可表示为mna a a x 10 (02)1*⨯±=,如果*x 具有l 位有效数字,则其相对误差限为()11**1021--⨯≤-l a xx x ,其中1a 为*x 中第一个非零数) 则7.21=x ,有两位有效数字,相对误差限为 025.010221111=⨯⨯≤--x x e 71.22=x ,有两位有效数字,相对误差限为 025.010221122=⨯⨯≤--x x e 3 2.718x =,有两位有效数字,其相对误差限为: 00025.010221333=⨯⨯≤--x e x ②第二种方法直接根据相对误差限的定义式求解对于7.21=x ,0183.01<-e x∴其相对误差限为00678.07.20183.011≈<-x e x 同理对于71.22=x,有 003063.071.20083.022≈<-x e x对于718.23=x,有00012.0718.20003.033≈<-x e x备注:(1)两种方法均可得出相对误差限,但第一种是对于所有具有n 位有效数字的近似数都成立的正确结论,故他对误差限的估计偏大,但计算略简单些;而第二种方法给出较好的误差限估计,但计算稍复杂。
,。
第一章 绪论(12)1、设0>x ,x 的相对误差为δ,求x ln 的误差。
[解]设0*>x 为x 的近似值,则有相对误差为δε=)(*x r ,绝对误差为**)(x x δε=,从而x ln 的误差为δδεε=='=*****1)()(ln )(ln x xx x x , 相对误差为****ln ln )(ln )(ln x x x x rδεε==。
2、设x 的相对误差为2%,求n x 的相对误差。
[解]设*x 为x 的近似值,则有相对误差为%2)(*=x r ε,绝对误差为**%2)(x x =ε,从而nx 的误差为nn x x nxn x x n x x x **1***%2%2)()()()(ln *⋅=='=-=εε,相对误差为%2)()(ln )(ln ***n x x x nr==εε。
3、下列各数都是经过四舍五入得到的近似数,即误差不超过最后一位的半个单位,试指出它们是几位有效数字:1021.1*1=x ,031.0*2=x ,6.385*3=x ,430.56*4=x ,0.17*5⨯=x 。
[解]1021.1*1=x 有5位有效数字;0031.0*2=x 有2位有效数字;6.385*3=x 有4位有效数字;430.56*4=x 有5位有效数字;0.17*5⨯=x 有2位有效数字。
4、利用公式(3.3)求下列各近似值的误差限,其中*4*3*2*1,,,x x x x 均为第3题所给的数。
(1)*4*2*1x x x ++;[解]3334*4*2*11***4*2*1*1005.1102110211021)()()()()(----=⨯=⨯+⨯+⨯=++=⎪⎪⎭⎫ ⎝⎛∂∂=++∑x x x x x f x x x e nk k k εεεε;(2)*3*2*1x x x ;[解]52130996425.010********.2131001708255.01048488.2121059768.01021)031.01021.1(1021)6.3851021.1(1021)6.385031.0()()()()()()()()(3333334*3*2*1*2*3*1*1*3*21***3*2*1*=⨯=⨯+⨯+⨯=⨯⨯+⨯⨯+⨯⨯=++=⎪⎪⎭⎫⎝⎛∂∂=-------=∑x x x x x x x x x x x f x x x e n k k kεεεε;(3)*4*2/x x 。
上机作业题程序1 编写程序计算下列向量范数∑==+++=ni i n x x x x X1211||||||||∑==+++=ni inxx x x X12222212或),(2X X X=|}{|max |}|,|,||,max{|121i n i n x x x x X≤≤∞==输入:向量的阶数n ,向量X 的元素 输出:向量范数程序2 编写程序计算下列矩阵范数||||max ||A a j nij i n111=≤≤=∑Aa i ni j j n∞≤≤==∑max ||11||||||A a E i n ij j n=⎛⎝⎫⎭⎪⎪⎪==∑∑12112输入:方程组的阶数n ,矩阵A 的元素 输出:矩阵范数程序3 编写程序计算如下级数,要求误差小于1.06e -11()()k x k k x ∞=ψ=+∑并计算0.1,0.2,,1.0,10.0,20.0,,300.0x = 的值 输入:无 输出:,()x x ψ的值程序4 下面给出美国从1920年到1970年的人口表:的人口。
在1910年的实际人口约为91772000,请判断插值计算得到的1965年和2002年的人口数据准确性是多少?程序5 数据同上表,用牛顿插值估计: (1)1965年的人口数; (2)2002年的人口数。
程序6 数据同上表,用自然样条函数预测在1910,1965和2002年的人口数。
请比较以上三种方法所求值的效果。
那一种方法最优?程序7 给定1+n 个插值节点,构造n 次拉格朗日插值多项式,并计算)(x f 。
输入:插值节点数n ,插值点{}n i x f x i i ,,2,1,0)(, =,;要计算的函数点x 。
输出:)(x L n 的值。
程序8 对函数21() , [5,5](1)f x x x =∈-+以如下两组节点为插值节点构造插值函数,(1)105,0,1,i x i i N N =-+= (2)215cos ,0,1,22i i x i NN π+=-=+并用式子55max ()()max ()(),5,0,10010i i i x iif x p x f y p y y i -≤≤-≈-=-=对5,10,20,40N =估计两组节点的误差输入:无。
数值计算方法复习题9习题九1. 取步长h = 0.1,分别用欧拉法与改进的欧拉法解下列初值问题(1);(2)准确解:(1);(2);欧拉法:,,,改进的欧拉法:,,,2. 用四阶标准龙格—库塔法解第1题中的初值问题,比较各法解的精度。
,,,3. 用欧拉法计算下列积分在点处的近似值。
0.5000,1.1420,2.5011,7.24504. 求下列差分格式局部截断误差的首项,并指出其阶数。
(1),2(2),3;(3),4(4),45.用Euler法解初值问题取步长h=0.1,计算到x=0.3(保留到小数点后4位).解: 直接将Eulerr法应用于本题,得到由于,直接代入计算,得到6.用改进Euler法和梯形法解初值问题取步长h=0.1,计算到x=0.5,并与准确解相比较.解:用改进Euler法求解公式,得计算结果见下表用梯形法求解公式,得解得精确解为7.证明中点公式(7.3.9)是二阶的,并求其局部截断误差主项.证明根据局部截断误差定义,得将右端Taylor展开,得故方法是二阶的,且局部截断误差主项是上式右端含h3的项。
8.用四阶R-K方法求解初值问题取步长h=0.2.解直接用四阶R-K方法其中计算结果如表所示:9.对于初值问题解因f'(y)=-100,故由绝对稳定区间要求(1)用Euler法解时,(2)用梯形法解时,绝对稳定区间为,由因f对y是线性的,故不用迭代,对h仍无限制。
(3)用四阶R-K方法时,10. (1) 用Euler法求解,步长h应取在什么范围内计算才稳定?(2) 若用梯形法求解,对步长h有无限制? (3) 若用四阶R-K方法求解,步长h如何选取?解:用四阶显式Adams公式先要算出,而,其余3点可用四阶R-K方法计算。
由,得由计算得再由四步四阶Adams显式方法得11.用四步四阶的Adams显式方法求解初值问题取h=0.1.(1)用形如的线性二步法解(2)试确定参数,使方法具有尽可能高的阶数,并求出局部截断误差主项.解本题仍利用局部截断误差的Taylor展开,要确定参数,可令解得而方法得局部截断。
数值计算方法练习题习题一1。
下列各数都是经过四舍五入得到的近似数,试指出它们有几位有效数字以及它们的绝对误差限、相对误差限。
(1);(2); (3);(4);(5);(6);(7);2。
为使下列各数的近似值的相对误差限不超过,问各近似值分别应取几位有效数字?3。
设均为第1题所给数据,估计下列各近似数的误差限.(1);(2); (3)4. 计算,取,利用下列等价表达式计算,哪一个的结果最好?为什么?(1); (2); (3) (4)5。
序列满足递推关系式若(三位有效数字),计算时误差有多大?这个计算过程稳定吗?6。
求方程的两个根,使其至少具有四位有效数字(要求利用。
7。
利用等式变换使下列表达式的计算结果比较精确。
(1);(2)(3);(4)8. 设,求证:(1)(2)利用(1)中的公式正向递推计算时误差增大;反向递推时误差函数减小。
9。
设x〉0,x*的相对误差为δ,求f(x)=ln x的误差限.10。
下列各数都是经过四舍五入得到的近似值,试指出它们有几位有效数字,并给出其误差限与相对误差限.11.下列公式如何才比较准确?(1)(2)12.近似数x*=0。
0310,是位有数数字。
13。
计算取,利用式计算误差最小。
四个选项:习题二1. 已知,求的二次值多项式。
2. 令求的一次插值多项式,并估计插值误差。
3。
给出函数的数表,分别用线性插值与二次插值求的近似值,并估计截断误差.0.40.50.60.70。
80.389420.479430.564640.644220。
717364. 设,试利用拉格朗日余项定理写出以为节点的三次插值多项式。
5. 已知,求及的值.6。
根据如下函数值表求四次牛顿插值多项式,并用其计算和的近似值。
X1。
615 1.634 1.702 1.828 1.921F (x) 2.41450 2.464592。
652713。
030353。
340667. 已知函数的如下函数值表,解答下列问题(1)试列出相应的差分表;(2)分别写出牛顿向前插值公式和牛顿向后插值公式。
习 题 一1、下列各数都是经过四舍五入得到的近似值。
试分别指出它们的绝对误差、相对误差和有效数字的位数。
35801=x ,00476.02=x ,33101430.0⨯=x ,24102958-⨯=x ,85000.55=x 。
解:2、已知2031.1=a ,978.0=b 是经过四舍五入后得到的近似值,问b a b a ⨯+,有几位有效数字?解:321110,1022a ab b *-*--≤⨯-≤⨯,而 2.1811, 1.1766a b a b +=⨯=()()3212111101010222a b a b a a b b ****---+-+≤-+-≤⨯+⨯≤⨯故a b +至少具有2位有效数字。
()()32120.978 1.2031110100.006510222ab a b b a a a b b *****----≤-+-≤⨯+⨯=≤⨯ 故a b +至少具有2位有效数字。
3、求二次方程01162=+-x x 的较小正根,取94.763≈,要求有3位有效数字。
解:*1228887.940.06x x x ==-==,*2x 只有一位有效数字。
若改用2180.062715.94x =≈,具有三位有效数字。
4、正方形的边长约cm 100,问测量边长时误差应多大,才能保证面积的误差不超过21cm ?解:正方形的面积函数为2()A x x =(*)2*(*)A A x εε∴=.当*100x =时,若(*)1A ε≤, 则21(*)102x ε-≤⨯故测量中边长误差限不超过0.005cm 时,才能使其面积误差不超过21cm 5、改变下列表达式,使其计算结果比较精确。
(1)1,11>>--+x xx x x ; (2)1),1ln(2>>--x x x ; (3)1,1<<-x e x ; (4)xxsin cos 1-。
解:(1(2) (3)(4)22sin 1cos 2tan sin 22sin cos 22x x xx x x -==习 题 二1、已知314567.032.0sin =,333487.034.0sin =,352274.036.0sin =,用线性插值及抛物插值计算3367.0sin 的值并估计截断误差。
1.已知ln(2.0)=0.6931;ln(2.2)=0.7885,ln(2.3)=0.8329, 试用线性插值和抛物插值计算.ln2.1的值并估计误差(牛顿插值和拉格朗日插值)2.已知函数y=sinx 的数表如下,分别用前插和后插公式计算sin0.57891的值,并估算误差。
i x0.4 0.5 0.6 0.7 )(i x f0.389420.479430.564640.644223. 已知i x-2 -1 0 1 2 )(i x f42135求)(x f 的二次拟合曲线)(2x p ,并求)0(f '的近似值。
4. 数值积分公式形如⎰'+'++=≈1)1()0()1()0()()(f D f C Bf Af x S dx x xf 试确定参数D C B A ,,,使公式代数精度尽量高;(2)设]1,0[)(4C x f ∈,推导余项公式⎰-=1)()()(x S dx x xf x R ,并估计误差。
5. 已知数值积分公式为:)]()0([)]()0([2)(''20h f f h h f f hdx x f h-++≈⎰λ,试确定积分公式中的参数λ,使其代数精确度尽量高,并指出其代数精确度的次数。
6. 用复化Simpson 公式计算积分()⎰=10sin dx x x I 的近似值,要求误差限为5105.0-⨯。
7. 已知012113,,424x x x ===,给出以这3个点为求积节点在[]0.1上的插值型求积公式。
8. 给出 900,cos ≤≤x x 的函数表,步长)60/1(1='=h ,若函数具有5位有效数字,研究用线性插值求x cos 近似值时的总误差界。
9. 求一个次数不高于4次的多项式)(x P ,使它满足0)0()0(='=P P ,1)1()1(='=P P ,1)2(=P 。
10. 单原子波函数的形式为bxae y -=,试按照最小二乘法决定参数a 和b ,已知数据如下:X 0 1 2 4 y2.010 1.210 0.740 0.45011. 分别用梯形公式和辛普森公式计算下列积分:⎰+1024dx x x。
习题二问题:1.编制通用子程序对n+1个节点x i及y i=f(x i) (i=1,…n) (1)n次拉格朗日插值计算公式;(2)n次牛顿向前插值计算公式;(3)n次牛顿向后插值计算公式;(一)程序流程图(1)拉格朗日插值程序流程图(2)牛顿向前插值程序流程图(3)牛顿向后插值程序流程图。
(二)源程序见主程序清单问题:2.计算(1)已知f(x)=lnx,,[a,b]=[1,2],取h=0.1,x i=1+ih,i=0,1, (10)用通用程序(1),(3)计算ln1.54及ln1.98的近似值;(一)程序清单/* program of question 2.1, page 61 */#include "stdio.h"#include "math.h"main(){ int i,flag=0;double z1,z2,x[11],y[11],t,s1,s2,z[10],c[11][11],log(double),ntb(),L(); for(i=0;i<=10;i++){x[i]=1+0.1*i;y[i]=log(x[i]);}printf("data x:\n");for(i=0;i<=10;i++){flag++;printf("%11.6f",x[i]);if(flag%4==0)printf("\n");}printf("\ndata y:\n");flag=0;for(i=0;i<=10;i++){flag++;printf("%11.6f",y[i]);if(flag%4==0)printf("\n");}printf("\nThe true value:\n");printf(" ln1.54=%f ln1.98=%f\n",log(1.54),log(1.98));z1=L(x,y,10,1.54);z2=L(x,y,10,1.98);t=(1.54-x[10])/0.1;s1=ntb(y,10,t,z,c);s2=ntb(y,10,t,z,c);t=(1.98-x[10])/0.1;printf("The approximate value:\n");printf(" L(1.54)=%f L(1.98)=%f\n",z1,z2);printf(" NTB(1.54)=%f NTB(1.98)=%f\n",s1,s2);}double L(double x[],double y[],int n,double t){ int i,k; double z=0.0,s;if(n==1)z=y[0];for(k=0;k<=n;k++){ s=1.0;for(i=0;i<=n;i++) if(i!=k)s=s*(t-x[i])/(x[k]-x[i]);z=z+s*y[k]; }return z;}double ntb(double y[],int n,double t,double z[],double c[][11]) { int i,j,sn=n;double s;z[0]=t;for(i=1;i<=n-1;i++) z[i]=z[i-1]*(t+i)/(i+1);for(i=0;i<=n;i++) c[i][0]=y[sn--];for(j=1;j<=n;j++)for(i=0;i<=n-j;i++) c[i][j]=c[i][j-1]-c[i+1][j-1];s=y[n];for(i=0;i<=n-1;i++) s=s+z[i]*c[0][i+1];return s;}(二)运行结果data x:1.000000 1.100000 1.200000 1.3000001.400000 1.500000 1.600000 1.7000001.800000 1.9000002.000000data y:0.000000 0.095310 0.182322 0.2623640.336472 0.405465 0.470004 0.5306280.587787 0.641854 0.693147The true value:ln1.54=0.431782 ln1.98=0.683097The approximate value:L(1.54)=0.431782 L(1.98)=0.683097NTB(1.54)=0.431782 NTB(1.98)=0.683097问题:(2)f(x)=1/(1+25x2), |x|≤1取等距节点n=5和n=10,用通用程序(1),(2)依次计算x=-0.95+ih(i=0,1, (19)h=0.1)处f(x)的近似值,并将其结果与其真实值相比较。
《数值计算方法》课后题答案详解吉 林 大 学第一章 习 题 答 案1. 已知(1)2,(1)1,(2)1f f f −===,求()f x 的Lagrange 插值多项式。
解:由题意知:()01201212001020211012012202121,1,2;2,1,1()()(1)(2)()()6()()(1)(2)()()2()()(1)(1)()()3(1)(2)(1)(2)()2162nj j j x x x y y y x x x x x x l x x x x x x x x x x l x x x x x x x x x x l x x x x x x x x L x y l x ==−=====−−−−==−−−−+−==−−−−−+−==−−−−+−==×+×−∴∑()2(1)(1)131386x x x x +−+×=−+2. 取节点01210,1,,2x x x ===对x y e −=建立Lagrange 型二次插值函数,并估计差。
解11201201210,1,;1,,2x x x y y e y e −−======1)由题意知:则根据二次Lagrange插值公式得:02011201201021012202110.510.520.51()()()()()()()()()()()()()2(1)(0.5)2(0.5)4(1)(224)(43)1x x x x x x x x x x x x L x y y y x x x x x x x x x x x x x x x x e x x e e e x e e x −−−−−−−−−−−−=++−−−−−−=−−+−−−=+−+−−+22)Lagrange 根据余项定理,其误差为(3)2210122()1|()||()||(1)(0.5)|3!61max |(1)(0.5)|,(0,1)6()(1)(0.5),()330.5030.2113()61()0.2113(0.21131)(0.21130.5)0.008026x f R x x e x x x x x x t x x x x t x x x x t x R x ξξωξ−+≤≤==−−≤−−∈′=−−=−+=−==≤××−×−=∴取 并令 可知当时,有极大值3. 已知函数y =在4, 6.25,9x x x ===处的函数值,试通过一个二次插值函数求的近似值,并估计其误差。
1.已知ln(
2.0)=0.6931;ln(2.2)=0.7885,ln(2.3)=0.8329, 试用线性插值和抛物插值计算.ln2.1的值并估计误差(牛顿插值和拉格朗日插值)
2.已知函数y=sinx 的数表如下,分别用前插和后插公式计算sin0.57891的值,并估算误差。
i x
0.4 0.5 0.6 0.7 )(i x f
0.38942
0.47943
0.56464
0.64422
3. 已知
i x
-2 -1 0 1 2 )(i x f
4
2
1
3
5
求)(x f 的二次拟合曲线)(2x p ,并求)0(f '的近似值。
4. 数值积分公式形如
⎰'+'++=≈1
)1()0()1()0()()(f D f C Bf Af x S dx x xf 试确定参数D C B A ,,,使公式代数
精度尽量高;(2)设]1,0[)(4
C x f ∈,推导余项公式⎰-=1
)
()()(x S dx x xf x R ,并估计
误差。
5. 已知数值积分公式为:
)]
()0([)]()0([2)(''20
h f f h h f f h
dx x f h
-++≈⎰
λ,试确定积分公式中的参数
λ,使其代数精确度尽量高,并指出其代数精确度的次数。
6. 用复化Simpson 公式计算积分
()⎰
=1
0sin dx x x I 的近似值,要求误差限为
5105.0-⨯。
7. 已知012113,,4
2
4
x x x ===,给出以这3个点为求积节点在[]0.1上的插值型求积公
式。
8. 给出 900,cos ≤≤x x 的函数表,步长
)60/1(1='=h ,若函数具有5位有
效数字,研究用线性插值求x cos 近似值时的总误差界。
9. 求一个次数不高于4次的多项式)(x P ,使它满足0)0()0(='=P P ,
1)1()1(='=P P ,1)2(=P 。
10. 单原子波函数的形式为bx
ae y -=,试按照最小二乘法决定参数a 和b ,已
知数据如下:
X 0 1 2 4 y
2.010 1.210 0.740 0.450
11. 分别用梯形公式和辛普森公式计算下列积分:⎰
+1
02
4dx x x。
并估算误差。
12. 用矩阵的克劳特和克利特尔三角分解法求解方程组:⎪⎪⎪⎪⎪⎭⎫ ⎝⎛=⎪⎪⎪⎪⎪⎭⎫ ⎝⎛⎪⎪⎪⎪⎪⎭⎫ ⎝⎛7173530103421101002014321x x x x。