习 题 一 解 答
1.取3.14,3.15,
227,355113
作为π的近似值,求各自的绝对误差,相对误差和有效数字的位数。
分析:求绝对误差的方法是按定义直接计算。求相对误差的一般方法是先求出绝对误差再按定义式计算。注意,不应先求相对误差再求绝对误差。有效数字位数可以根据定义来求,即先由绝对误差确定近似数的绝对误差不超过那一位的半个单位,再确定有效数的末位是哪一位,进一步确定有效数字和有效数位。有了定理2后,可以根据定理2更规地解答。根据定理2,首先要将数值转化为科学记数形式,然后解答。
解:(1)绝对误差:
e(x)=π-3.14=3.14159265…-3.14=0.00159…≈0.0016。 相对误差:
3()0.0016
()0.51103.14
r e x e x x -==≈?
有效数字:
因为π=3.14159265…=0.314159265…×10,3.14=0.314×10,m=1。 而π-3.14=3.14159265…-3.14=0.00159…
所以│π-3.14│=0.00159…≤0.005=0.5×10-2=21311
101022
--?=?
所以,3.14作为π的近似值有3个有效数字。
(2)绝对误差:
e(x)=π-3.15=3.14159265…-3.14=-0.008407…≈-0.0085。 相对误差:
2()0.0085
()0.27103.15
r e x e x x --==≈-?
有效数字:
因为π=3.14159265…=0.314159265…×10,3.15=0.315×10,m=1。 而π-3.15=3.14159265…-3.15=-0.008407…
所以│π-3.15│=0.008407……≤0.05=0.5×10-1=11211
101022
--?=?
所以,3.15作为π的近似值有2个有效数字。
(3)绝对误差:
22
() 3.14159265 3.1428571430.0012644930.00137
e x π=-=-=-≈-L L
相对误差:
3()0.0013
()0.4110227
r e x e x x
--=
=≈-?
有效数字:
因为π=3.14159265…=0.314159265…×10, 22
3.1428571430.3142857143107
==?,m=1。 而22 3.14159265 3.1428571430.0012644937π-=-=-L L
所以 2213
22 3.14159265 3.1428571430.0012644930.005
7
11
0.510101022
π----=-=≤=?=?=?L L
所以,22
7
作为π的近似值有3个有效数字。
(4)绝对误差:
355
() 3.14159265 3.141592920.00000027050.000000271
113
e x π=-=-=-≈-L L 相对误差:
7()0.000000271
()0.86310355113
r e x e x x
--==≈-?
有效数字:
因为π=3.14159265…=0.314159265…×10, 355
3.141592920.31415929210113
==?,m=1。 而355 3.14159265 3.141592920.0000002705113π-=-=-L L
所以
6617
355 3.14159265 3.141592920.00000027050.0000005
113
11
0.510101022π----=-=≤=?=?=?L L
所以,355
113作为π的近似值有7个有效数字。
指出:
①实际上,本题所求得只能是绝对误差限和相对误差限,而不是绝对误差和相对误差。
2、用四舍五入原则写出下列各数的具有五位有效数字的近似数。 346.7854,7.000009,0.0001324580,0.600300 解:346.7854≈346.79, 7.000009≈7.0000,
0.0001324580≈0.00013246, 0.600300≈0.60030。 指出: 注意0。
只要求写出不要求变形。
3、下列各数都是对准确数进行四舍五入后得到的近似数,试分别指出他们的绝对误差限和相对误差限和有效数字的位数。
12340.0315,0.3015,31.50,5000x x x x ====。
分析:首先,本题的准确数未知,因此绝对误差限根据四舍五入规则确定。其次,应当先求绝对误差限,再求相对误差限,最后确定有效数字个数。有效数字由定义可以直接得出。
解:由四舍五入的概念,上述各数的绝对误差限分别是
1234()0.00005,()0.00005,()0.005,()0.5x x x x εεεε==== 由绝对误差和相对误差的关系,相对误差限分别是
111222
333
444
()0.00005
()0.16%,
0.0315
()0.00005
()0.02%,
0.3015()0.005
()0.002%,31.5()0.5
()0.01%.5000
x x x x x x x x x x x x εδεδεδεδ==≈==≈==≈=
=
≈
有效数字分别有3位、4位、4位、4位。 指出:
本题显然是直接指出有效数位、直接写出绝对误差,用定义求出相对误差。
4.
0.1%。 解:设取n 个有效数字可使相对误差小于0.1%,则 111
100.1%2n a -?<,
而34≤≤,显然13a =,此时,
1111110100.1%223n n a --?=?, 即131
10106
n --?<, 也即461010n ?> 所以,n=4。
3.162≈。
5、在计算机数系F(10,4,-77,77)中,对
31120.14281100.31415910x x =?=-?与,试求它们的机器浮点数()(1,2)i fl x i =及
其相对误差。
解:
333311111111
2222()0.142810,(())()0.14281100.1428100.0000110,()0.314210,(())()0.31415910(0.314210)0.0004110fl x e fl x x fl x fl x e fl x x fl x =?=-=?-?=?=-?=-=-?--?=?其相对误差分别是
31
1231
0.00001100.000041100.007%,0.013%0.1428100.314210e e ??=≈=≈-?-?。
6、在机器数系F(10,8,L,U)中,取三个数
4220.2337125810,0.3367842910,0.3367781110x y z -=?=?=-?,试按
(),()x y z x y z ++++两种算法计算x y z ++的值,并将结果与精确结果比较。
解:
4222222
2
2
(())(0.23371258100.3367842910)0.3367781110(0.00000023100.3367842910)0.33677811100.33678452100.33677811100.0000064110fl x y z -++=?+?-?=?+?-?=?-?=?
422422
2
2(())0.2337125810(0.33678429100.3367781110)0.23371258100.00000618100.00000023100.00000618100.0000064110fl x y z --++=?+?-?=?+?=?+?=?
精确计算得:
4222222
2
2
0.23371258100.33678429100.3367781110(0.00000023371258100.3367842910)0.33677811100.33678452371258100.33677811100.000064137125810x y z -++=?+?-?=?+?-?=?-?=?
第一种算法按从小到大计算,但出现了两个数量级相差较大的数相加,容易出现大数吃小数.而第二种算法则出现了两个相近的数相减,容易导致有效数位的减少。计算结果证明,两者精度水平是相同的。
***
在机器数系F(10,8,L,U)中,取三个数
4220.2337125810,0.3367842910,0.3367781110x y z --=?=?=-?,试按
(),()x y z x y z ++++两种算法计算x y z ++的值,并将结果与精确结果比较。
解:
42222222222
(())(0.23371258100.3367842910)0.3367781110(0.00233713100.3367842910)0.33677811100.33912142100.33677811100.00003391100.33677811100.336744210fl x y z -----++=?+?-?=?+?-?=?-?=?-?=-?
42242242222
(())0.2337125810(0.33678429100.3367781110)0.2337125810(0.00003368100.3367781110)0.23371258100.33674742100.00000023100.33674742100.3367471910fl x y z ----++=?+?-?=?+?-?=?-?=?-?=-?
第一种算法是按从小到大的顺序计算的,防止了大数吃小数,计算更精确。
精确计算得:
4222
0.23371258100.33678429100.33677811100.0000233712580.003367842933.6778110.00339121415833.67781133.6744197858420.3367441978584210x y z --++=?+?-?=+-=-=-=-?
显然,也是第一种算法求出的结果和精确结果更接近。
7、某计算机的机器数系为F(10,2,L,U),用浮点运算分别从左到右计算及从右到左计算
10.40.30.20.040.030.020.01+++++++ 试比较所得结果。 解:从左到右计算得
10.40.30.20.040.030.020.01
0.1100.04100.03100.02100.00100.00100.00100.00100.19101.9
+++++++=?+?+?+?+?+?+?+?=?=
从右到左计算得
111110.40.30.20.040.030.020.010.010.020.030.040.20.30.41
0.1100.2100.3100.4100.20.30.410.10.20.30.41
0.1101
0.1100.1100.2102
----+++++++=+++++++=?+?+?+?++++=++++=?+=?+?=?=
从右到左计算避免了大数吃小数,比从左到右计算精确。
8、对于有效数1233.105,0.001,0.100x x x =-==,估计下列算式的相对误差限
2
1123212333
,,x y x x x y x x x y x =++==
分析:求和差的相对误差限采取先求出和差的绝对误差限再求相对误差限的方法。求积商的相对误差限采取先求每一个数的相对误差限再求和的方法。
解:因为1233.105,0.001,0.100x x x =-==都是有效数, 所以123()0.0005,()0.0005,()0.0005x x x εεε===
1230.00050.00050.0005
()0.16%,()50%,()0.5%3.1050.0010.100
x x x δδδ=
===== 则123123()()()()0.00050.00050.00050.0015x x x x x x εεεε++=++=++=
4123123123
()
0.00150.0015
() 4.99100.05%
3.1050.0010.100 3.004
x x x x x x x x x εδ-++++==
=≈?=++-++
123123()()()()0.16%50%0.5%50.66%x x x x x x δδδδ=++=++=
2
233
(
)()()50%0.5%50.5%x x x x δδδ=+=+= 指出:
如果简单地用有效数字与误差的关系计算,则不够精确。
注意是相对误差限的讨论。符号要正确,商的误差限是误差限的和而不是差。
9、试改变下列表达式,使其计算结果比较精确(其中1x =表示x 充分接近0,1x ?表示x 充分大)。
(1)1212ln ln ,x x x x -≈; (2)
11,111x x x x
---+=;
(3)1x ?; (4)
1cos ,01x
x x x -≠=且; (5)1
cot ,01x x x x
-≠=且。
分析:根据算法设计的原则进行变形即可。当没有简单有效的方法时就采用泰勒展开的方法。
解:(1)1
122
ln ln ln x x x x -=; (2)
2
2
2
111(1)11(1)(1)1(12)3(1)(1)(1)(1)
x x x x x x x x x x x x
x x x x -+---=
-+-++--+-=
=
-+-+;
(3)
=
=
=
或
112
()()
2
x x
x
=
+--
==
=
=
(4)
242
242
1
321
1
1(1(1))
1cos2!4!(2)!
(1)
2!4!(2)!
(1)
2!4!(2)!
n
n
n
n
n
n
x x x
x n
x x
x x x
n
x
x x x
n
+
-
+
--+-+-+ -
=
--+-+
=
=--+-+
L L
L L
L L
(5)
2
321
2
321
n
2
11111
cot()
345(2)!
2
11
345(2)!
B
n
n
n
n
n
n
B
x x x x
x x x n
B
x x x
n
-
-
-=------
=++++
L L
L L
(是贝努利数)
指出:
①采用等价无穷小代换的方法一般不可行。近似计算中的误差并不是无穷小量,利用无穷小量等价代换,两个量的差别可能恰恰是影响精度的因素。采用等价无穷小代换,可能只会得到精度水平比较低的结论。
例如
2
2
2sin 2()1cos 222
x x
x
x x
x x -=≈= 11cos sin cos cot sin sin cos (1,sin )
sin 1cos sin 11(1,cos 1)sin 0
x x x x
x x x x x x x x x x x x x x x
x x x x --=-=-≈≈-=
-≈≈=== 试与上例比较。
有时候这种方法可以使用,例如 因为cos()cos cos sin sin x x x δδδ+=-, 当1δ=时,cos 1,sin 0δδ≈≈
cos()cos cos sin sin cos sin x x x x x δδδδ+=-≈-g
在这个计算中,由于x 是常数,x 的函数值实际上放大了每一项的计算结果,使得相近的数相减的问题不很突出。
而利用一阶的泰勒展开()()()()f x f x f x x δδξξδ'+≈+<<+,当1δ=时,就有()()()f x f x f x δδ'+≈+,因此
cos()cos sin x x x δδ+≈-
和上面的结果一样。但显然,用泰勒展开的方法具有一般性并能得到精度更高的结果,而且不会有方法上出错的可能。
②采用洛必达法则也是不可以的。实际上,无论是等价无穷小还是洛必达法则都是极限方法,而因为近似计算中的误差虽然可以近似地看作是微分,但本质上却是一个确定的可能极小的小数而不是无穷小(趋于零的变量),因此近似计算是不能采用极限方法的。
③转化的结果要化简,比如化繁分式为简分式,但不能取极限。取极限就违背的了数值计算的本意。
所以,
11110110111010x x x ---≈-=-=-+-+ 是错误的。
④极小的数做除数,实际上是
型的不定型,要转化为非不定型。 10、用4位三角函数表,怎样算才能保证1cos 2-o 有较高的精度? 解:根据21cos 22sin 1-=o o ,先查表求出sin1o 再计算出要求的结果精度较高。
指出:
用度数就可以。不必化为弧度。
11、利用27.982≈求方程25610x x -+=的两个根,使它们至少具有4位有效数字。
解:
由方程的求根公式,本方程的根为
1,256562822
x ±±===±
27.982≈,则
1282827.98255.982x =≈+=
如果直接根据求根公式计算第二个根,则因为两个相近的数相减会造成有效数字的减少,误差增大。因此
根据韦达定理121x x =,在求出155.982x ≈后这样计算2x :
1211155.982
x x =
≈?=0.01786=0.178610 这样就保证了求出的根有四位有效数字。 12、试给出一种计算积分
1
1
(0,1,2,3,...)n x n I e
x e dx n -==?, 近似值的稳定算法。
解:当n =0时,1
1
011
00
(1)1x I e
x e dx e e e ---==-=-?。 (1
1
1x x e dx e e ==-?)。
对I n 运用分部积分法(b
b
b
a a
a
udv uv vdu =-??)得
1
1
1
1
1
1
11
10
()(0)n x n x n x
n x n I e
x e dx e x e
n x e dx e e n x e dx -----==-=--???
11
110
11n x
n ne
x e dx nI ---=-=-? 由此得到带初值的递推关系式
1
0111(1,2,3,...)n
n I e
I nI n --?=-??
=-=?? 由递推公式I n =1-nI n -1 解得11
(1)n n I I n
-=-,这是逆向的递推公式,对I n 的值作估计,有
1
1
1
11
1
1
n x
n
n I e
x e dx e e x dx n --=≤=+?? 另有
1
1
111
11
n x n n I e x e dx e x dx e n ---=≥=+?? (取e 的指数为最小值0,将e x 取作 e 0 =1作为常数即可简化公式)。
则 11111
n e I n n -≤≤++。 那么,我们可以取其上下限的平均值作为其近似值。即取
111
(1)21
n I e n -=
++ 可以看出,n 越大,这个近似值越精确地接近于准确值。
(n 越大,I n 的上限和下限就越接近,近似值区间的长度就越短,近似值和
精确值就越接近)
此时,e n -1=I n -1*-I n -1=-1n (I n *-I n )=1n e n ,│e 0│= 1
!
n │e n │,计算是稳
定的。
实际上,如果我们要求I 9,可以先求出I 20,这样求出的I 9的误差是比I 20
的误差小得多的,而I 20的误差本身也并不大。实际上,这样求出的I 9比直接计算出来的精确得多。
补充题(一)
1、给出数系F(10,4,-5,5)中的最大数、最小数和最小整数。 解:最大数:0.9999×105;
最小数:-0.9999×105; 最小正数:0.0001×10-5。 2、已知 2.71828182845904523536028747e =L ,求它在F(10,5,-5,5)和F(10,8,-5,5)中的浮点数。
解:在F(10,5,-5,5)中,1()0.2718310fl e =? 在F(10,8,-5,5)中,1()0.2718281810fl e =?
3、已知数e 的以下几个近似数,它们分别有几位有效数字?相对误差是多少?
0102.7182, 2.7183, 2.7182818x x x ===。
分析:题目没有说明近似数是通过哪种途径取得的,也就没有明确每个近似数和准确数之间的误差关系。
所以,本题的解答应当从求近似数的误差开始。 解:因为
31404151718211
0.000081811010,
2211
0.000021010,22
11
0.000000031010.
22
e x e x e x -------==?-≈=?-≈=?,
所以,0102.7182, 2.7183, 2.7182818x x x ===分别有4、5、8个有效数字。 其相对误差分别是
14
0300417
21101
2()10,
2.718241
10,
41
104
r e x e x x e x e x ----?-=<--
4
、数3
与下述各式在实数的意义上是相等的, (1
)3(17-,(2
)31[(17]--,(3
)6(3-,(4
)61[(3]-+, (5
)19601-6
)1(19601-+。
试说明在浮点数系(10,4,8,8)F -中,用哪个公式计算出的结果误差最小。 分析:本题实际上是一个算法分析与设计问题,也就是说要应用算法设计的基本原则进行分析讨论。
解:在本例中,显然3
和17
和19601
和也是相近的数。因此:
①为避免相近的数相减,不应采用(1)、(3)、(5)三种计算方法。 ②在余下的三种计算方法中,(2)需要进行4次乘除法,(4)需要进行7次乘除法,(6)需要进行1次除法。从减少运算次数来说,应采用(6)。
所以,采用(6)计算,计算结果误差最小。
5、32
()[ln(1)]/x f x xe x x =+-,当1x =时,如何计算才能获得准确的结果? 解:当1x =(即很小时),f(x)的分子是两个相近的小数相减,而分母也是一个小数,因此应避免简单地按原计算顺序直接计算,而应进行变形。
由泰勒展开得
2342
23()()()222()22!3!4!ln(1)23x
n x x x x
xe x x x x x x x x
x x n
=+++++-=------g g g L
L L
因此
3453
2
111111
()[()()()]/8348416245
51139724481920
f x x x x x x x
=-+-+-+?≈---L
此处最后略去部分的第一项为 33
11639()1203263840
x x -=-? 当1x =时,这一部分是相当小的值,可以略去。 指出:
如果要提高计算精度,就可以考虑保留更多的项。
补充题(二)
(一)
1、计算e 的近似值,使其误差不超过10-6。
2、利用
122
1()1(01,1)1(1)n n
n x f x x x x x x x θθ++==+++++
<<<--L
计算f(0.1)的近似值,其误差不超过10-2,求n 。
3、3.142和3.141分别作为π的近似数,各有几位有效数字?
4、已知近似数x 的相对误差限为0.3%,问x 至少有几个有效数字?
5、已知x 的下列3个近似数的绝对误差限都是0.005,问它们的有效数字各有几位?
a=138.00,b=-0.0132,c=-0.86×10-4
6、设近似值x=1.234,且绝对误差界为0.0005,则它至少有几位有效数字?
7、某校有学生6281人,通常说有6000人。下面哪个式子表示6000这个近似数合适?
444
4
0.6100.60100.60010
0.600010????
分析与解答
1、解:令f(x)=e x ,而f (k)(x)=e x ,f (k)(0)=e 0=1。由麦克劳林公式,可知
21
1(01)2!!(1)!
n x
x
n x x e e x x n n θθ+=+++++<<+L
当x=1时,1111(01)2!!(1)!
e e n n θ
θ=+++++
<<+L
故3(1)(1)!(1)!
n e R n n θ=<++。
当n =9时,R n (1)<10-6,符合要求。此时,
e≈2.718 285
解决这类问题其实很简单。只要知道了泰勒展开式,余下的就只是简单的计算了。
泰勒(Taylor)中值定理:若函数f(x)在[a,b]上存在直至n 阶的连续导函数,在(a,b)上存在n+1阶导函数,则对任意给定的x ,x 0∈[a ,,b],至少存在一点ξ∈(a ,,b ),使得
()(1)21
00000000()()()()()()()()()()2!!(1)!
n n n
n f x f x f f x f x f x x x x x x x x x n n ξ++'''=+-+-++-+-+L 其中,
(1)10()
()()(1)!
n n n f R x x x n ξ++=
-+ 叫做拉格朗日型余项。 当x 0=0时,得到麦克劳林公式。
()(1)21
(0)(0)()()(0)(0)(01)
2!!(1)!
n n n n f f f x f x f f x x x x
n n θθ++'''=+++++<<+g g L g g
2、解:
11122
222
(2)323
0.10.11()1010,9(1)(10.1)0.9910,910n n n n n n n n n x x θ++++-+++-+-+<==?<--<>
所以,n=2。 3、
π=3.14159265…=0.314159265…×10,3.142=0.3142×10,m=1。
因为π-3.142=3.14159265…-3.142=-0.00040…
所以,│π-3.142│=0.00040…≤0.0005=0.5×10-3=
31411
101022
--?=? 所以,3.142作为π的近似值有4个有效数字。
2213
3.1415926,
11
3.1415926 3.1410.000590.0050.510101022
π---=-=≤=?=?=?L L 小数点后几个0,10的指数的绝对值就是几。
4、解:设x 有n 位有效数字,其第一位有效数字按最不利情况取为9,则
1131111
0.3%10101010002(91)2102210n n n n
δ---===?=?=?=+??, 由上可得
6101000n ?=,
n ≈2.2, 所以取n=2。
5、解:21
0.005102
x a x b x c --=-=-≤=?,
所以m-n=-2。
a=138.00=0.13800×103,则m=3,所以n=3-(-2)=5, 即a 有5位有效数字;
b=-0.0132=-0.132×10-1,则m=-1,所以n=-1-(-2)=1, 所以b 有1位有效数字。
c=-0.86×10-4,则m=-4,所以n=-4-(-2)=-2<0, 所以c 没有有效数字。
6、解:因为近似数x=1.234的绝对误差界为0.0005,
所以*31
0.0005102
x x --≤=?,
则m-n=-3。
而x=1.234=0.1234×101, 则m=1,
所以n=1-(-3)=4,
所以,x=1.234有4位有效数字。
7、解:哪个式子表示6000这个近似数合适实际上要看近似数6000有多少个有效数字。
6281近似到十位、百位,千位分别是 628162806281630062816000
≈≈≈ 写成科学记数的形式分别是
444
628162800.62810628163000.6310628160000.610≈=?≈=?≈=?
可见,上述写法中,第一种是合适的。
实际上,
4462810.628110,60000.600010=?=?
所以m=4,
而3331
628160002810.281100.510102
-==?≤?=?
所以m-n=3,
则n=m-3=4-3=1,
即近似数6000只有一个有效数字,所以,只有40.610?这种写法是合适的。
(二)
1、已知测量某长方形场地的长为a =110米,宽为b =80米。若 │a *-a│≤0.1(米),│b *-b│≤0.1(米), 试求其面积的绝对误差限和相对误差限。
2、已知三角形的两个角的测量误差都不超过0.1°,则计算第三个角时,绝对误差不超过多少。
3、若x 1=1.03±0.01,x 2=0.45±0.01,计算22112
x y x e =+的近似值并估计误差。
4、已知测量某长方形场地的长为a =110米,宽为b =80米。若
│a *-a│≤0.2(米),│b *-b│≤0.1(米),
试利用多元函数的误差分析方法求其面积S=ab 的绝对误差限和相对误差限,并与四则运算的误差分析比较。
5、如果用电表测得一个电阻两端的电压和通过的电流分别是
V=110±2(V),I=20±0.5(A)
试运用欧姆定律V
R I
=求这个电阻值R 的近似值,并估计所求出的近似值的绝对误差和相对误差。
6、已知近似值a 1=2.21,a 2=4.63,a 3=7.98是由四舍五入得到的,它们的绝对误
差界都是0.005试估计
12
33a a a a +和1312
a a a a -的相对误差界。 分析与解答
1、2,()()()()19.1()S ab S ab a b b a m εεεε==≤+= ()19.1
()()0.002170.217%11080
ab S ab ab εδδ===≈=?
2、提示:角和为180°,而且180是准确数,没有误差。
3、由已知,x 1=1.03,△x 1=0.01,x 2=0.45,△x 2=0.01。所以,
1
22121121
(,)2 2.06,(,)0.7842,2
x x x f x x x f x x e ''==== ε(x 1)=△x 1=0.01,ε(x 2) =△x 2=0.01。 所以,y 的绝对误差限为
1
2
121122()(,)()(,)()
2.060.010.78420.010.028
x x y f x x x f x x x εεε''≤+=?+?=
将有关数据代入函数表达式,可以求出函数值的近似值为
2211
1.8452
x y x e =+=,
则y 的相对误差限为
()0.028() 1.5%1.845
y y y εδ==≈
进一步地,本题的绝对误差限可以看作是0.05,那么计算结果中只需要保留到百分位就可以了,即最终结果取1.8,那么计算过程中各数只需要取到千分位。)
4、(。 6、略解。
12121233123333
(,,),(,,)x x a a
f x x x x f a a a a x a =
+=+则 12121231233333
(,,)(,,)()()x x a a
f x x x f a a a x a x a -=+-+
所以,
12312312312321121232333211212323332211223332123((,,))((,,))
(,,)(,,)()()1()()()1()1
(
1)102
1
(()()()10)
2f a a a e f a a a f x x x f a a a a a a a
e a e a e a a a a a a a a
e a e a e a a a a a a a a a a a e a e a e a ε--==-≤++-+≤
+++≤+++??===? 则相对误差限为
123123123((,,))
((,,))(,,)
f a a a f a a a f a a a εδ=
下略。 解二:
根据函数12(,,,)n y f x x x =L 的函数值的绝对误差
1231()((,,,,))()n
n i i i
f
e y e
f x x x x e x x =?==?∑
L 。 相对误差
1231123()((,,,,))()(,,,,)
n
i r r n r i i i n x f
e y e
f x x x x e x x f x x x x =?==?∑
L L
公式计算。
(三)
1、用九韶算法的多项式格式乘法计算多项式 P(x)=x 7-2x 6-3x 4+4x 3-x 2+6x-1 在x=2处的值p(2)。
2、利用等价变换使下面式子的计算结果比较精确。 11(1)121x
x x x
--++=。 3、指出下列各题的合理计算途径(对给出具体数据的,请算出结果) [1]1-cos1○(三角函数值取四位有效数字) [2
]ln(30(对数函数值取六位有效数字)
[3]
1cos sin x
x
- (其中x 的绝对值很小)
[4]x 127
[5]100
11
(1)
n n n =+∑
4、设近似值T 0=S 0=35.70具有四位有效数字,计算中无舍入误差,试分析分别用递推式
15142.8i i T T +=-和11
142.85
i i S S +=-
计算T 20和S 20所得结果是否可靠。
5、计算6426()2341p x x x x x =-+-+的值6(3)p 。
分析与解答
1、p(2)=-9
2、2
2(12)(1)
x x x ++
3、[1]201cos 2sin ,sin 0.50.00872
x
x -==
[2]
300.01667,
ln(30 4.09414
===-
[3]
1cos sin tan sin 1cos 2x x x x x -==+
[4]x 127=x·x 2·x 4·x 8·x 16·x 32·x 64
[5]由小到大依次相加。
100100
11
1111100
()1(1)1101101n n n n n n ===-=-=++∑∑ 4、设计算T i 的绝对误差为e(T i )=T i *-T i ,其中计算T 0的误差为ε,那么计算T 20的误差为 e(T 20)=T 20*-T 20=(5T 19*-142.8)-(5T 19-142.8)=5(T 19*-T 19)
=5e(T 19)=52e(T 18)=520e(T 0) 显然误差被放大,结果不可靠。
同理,20
2001()()5e S e S ??
= ???,误差缩小,结果可靠。
5、解:将所给多项式的系数按降幂排列,缺项系数为0。
第一章 误差 1. 试举例,说明什么是模型误差,什么是方法误差. 解: 例如,把地球近似看为一个标准球体,利用公式2 4A r π=计算其表面积,这个近似看为球体的过程产生 的误差即为模型误差. 在计算过程中,要用到π,我们利用无穷乘积公式计算π的值: 12 222...q q π=? ?? 其中 11 2,3,... n q q n +?=?? ==?? 我们取前9项的乘积作为π的近似值,得 3.141587725...π≈ 这个去掉π的无穷乘积公式中第9项后的部分产生的误差就是方法误差,也成为截断误差. 2. 按照四舍五入的原则,将下列各数舍成五位有效数字: 816.956 7 6.000 015 17.322 50 1.235 651 93.182 13 0.015 236 23 解: 816.96 6.000 0 17.323 1.235 7 93.182 0.015 236 3. 下列各数是按照四舍五入原则得到的近似数,它们各有几位有效数字? 81.897 0.008 13 6.320 05 0.180 0 解: 五位 三位 六位 四位 4. 若1/4用0.25表示,问有多少位有效数字? 解: 两位 5. 若 1.1062,0.947a b ==,是经过舍入后得到的近似值,问:,a b a b +?各有几位有效数字? 解: 已知4311 d 10,d 1022 a b --, 又0.2053210a b +=?, ()4332111 10100.551010222 d a b da db da db ----+=+≤+=?+?=?, 所以a b +有三位有效数字; 因为0.1047571410a b ?=?, ()4332111 0.94710 1.1062100.600451010222 d a b b da a db ----?=+=??+??=? 所以a b ?有三位有效数字.
习 题 四 解 答 1、设010,1x x ==,写出()x f x e -=的一次插值多项式1()L x ,并估计插值误差。 设插值函数为1()L x ax b =+,由插值条件,建立线性方程组为 1 01 1a b a b e -?+=???+=? 解之得11 1a e b -?=-?=? 则11()(1)1L x e x -=-+ 因为(),()x x y x e y x e --'''=-= 所以,插值余项为 (1)(2) (2)011 ()()()()() (1)! 1()()2!1 ()()()2!1 (0)(1)((0,1))2n r x f x p x f x n f x f x x x x e x x ξξπξπξξ+-=-=+= =--=--∈ 所以 01 0101 ()max max (1) 2111248x r x e x x e ξξ-≤≤≤≤-≤-=??=。 2选用合适的三次插值多项式来近似计算f 和f 。 解:设三次插值多项式为230123()f x a a x a x a x =+++,由插值条件,建立方程组为 23012323 012323 01232301 23(0.1)(0.1)(0.1)0.9950.30.30.30.995 0.70.70.70.7651.1 1.1 1.10.454 a a a a a a a a a a a a a a a a ?+?-+?-+?-=?+?+?+?=??+?+?+?=??+?+?+?=?
即 012301230123 123012312301230.10.010.0010.9950.10.010.0010.9950.30.090.0270.9950.40.080.02800.70.490.3430.7650.80.480.344 1.761.1 1.21 1.3310.454a a a a a a a a a a a a a a a a a a a a a a a a a a -+-=-+-=??+++=++=??? +++=++=??+++=?12301231232330.40.720.9880.3110.10.010.0010.9950.40.080.02800.320.288 1.760.384 3.831a a a a a a a a a a a a a ??????++=-? -+-=??++=??? +=? ?-=-? 解之得 01 230.416.293.489.98 a a a a =??=-?? =-??=? 则所求的三次多项式为23()0.41 6.29 3.489.98f x x x x =--+。 所以 2323 (0.2)0.41 6.290.2 3.480.29.980.20.91 (0.8)0.41 6.290.8 3.480.89.980.8 1.74f f =-?-?+?=-=-?-?+?=- 3、设(0,1,2,,)i x i n =L 是 n+1个互异节点,证明: (1)0()(0,1,2,,)n k k i i i x l x x k n ===∑L ; (2)0 ()()0(0,1,2,,)n k i i i x x l x k n =-==∑L 。 证明: (1)由拉格朗日插值定理,以x 0,x 1,x 2,…x n 为插值节点,对y=f(x)=x k 作n 次插值,插值多项式为 0()()n n i i i p x l x y ==∑, 而y i =x i k , 所以0 ()()()n n k n i i i i i i p x l x y l x x ====∑∑ 同时,插值余项 (1)(1)11 ()()()()()()0(1)!(1)! n k n k n r x x p x f x x x n n ξξππ++=-= ==++ 所以0 ()n k k i i i l x x x ==∑ 结论得证。 (2)取函数()(),0,1,2,,k f x x t k n =-=L 对此函数取节点(0,1,2,,)i x i n =L ,则对应的插值多项式为
2.1 用二分法求方程013=--x x 在[1, 2]的近似根,要求误差不超过3102 1-?至少要二分多少? 解:给定误差限ε=0.5×10-3,使用二分法时,误差限为 )(211*a b x x k k -≤-+ 只要取k 满足ε<-+)(2 11 a b k 即可,亦即 96678.912lg 10lg 35.0lg 12lg lg )lg(=-+-=---≥εa b k 只要取n =10. 2.3 证明方程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,1]单调减少,所以f (x ) 在区间 [0,1]内有唯一实根. 给定误差限ε=0.5×10-4,使用二分法时,误差限为 )(211*a b x x k k -≤-+ 只要取k 满足ε<-+)(211 a b k 即可,亦即 7287.1312 lg 10lg 45.0lg 12lg lg )lg(=-+-=---≥εa b k 只要取n =14. 2.4 方程0123=--x x 在x =1.5附近有根,把方程写成四种不同的等价形式,并建立相应的迭代公式: (1)211x x +=,迭代公式2111k k x x +=+ (2)231x x +=,迭代公式3211k k x x +=+ (3)112-=x x ,迭代公式111-=+k k x x (4)13-=x x ,迭代公式131-=+k k x x 试分析每种迭代公式的收敛性,并选取一种收敛迭代公式求出具有四位有效数字的近似根。 解:(1)令211)(x x f + =,则3 2)(x x f -=',由于 159.05.112)(33<≈≤='x x f ,因而迭代收敛。 (2)令321)(x x f +=,则322)1(3 2)(-+='x x x f ,由于
1、解:将)(x V n 按最后一行展开,即知)(x V n 是n 次多项式。 由于 n i i i n n n n n i n x x x x x x x x x x V ...1...1... ......... ...... 1 )(21110 20 0---= ,.1,...,1,0-=n i 故知0)(=i n x V ,即110,...,,-n x x x 是)(x V n 的根。又)(x V n 的最高 次幂 n x 的系数为 )(...1...1... ...... .........1),...,,(101 1 21 11 2 2221 02001101j n i j i n n n n n n n n n n n x x x x x x x x x x x x x x V -== ∏-≤<≤-----------。 故知).)...()()(,...,,()(1101101------=n n n n x x x x x x x x x V x V 6、解:(1)设 .)(k x x f =当n k ,...,1,0=时,有.0)()1(=+x f n 对 )(x f 构造Lagrange 插值多项式, ),()(0 x l x x L j n j k j n ∑== 其 0)()! 1() ()()()(1)1(=+=-=++x w n f x L x F x R n n n n ξ, ξ介于j x 之间,.,...,1,0n j = 故 ),()(x L x f n =即 .,...,1,0,)(0 n k x x l x k j n j k j ==∑= 特别地,当0=k 时, 10) (=∑=n j x j l 。 (2) 0)()1(1) ()1()()(0000=-=??? ? ??-??? ? ??-=--=-===∑∑∑∑k j j i j i k j k i i j i i k j n j k i i j k n j j x x x x i k x l x x i k x l x x )利用(。 7、证明:以b a ,为节点进行线性插值,得 )()()(1 b f a b a x a f b a b x x P --+--= 因 0)()(==b f a f ,故0)(1=x P 。而 ))()(("2 1 )()(1b x a x f x P x f --= -ξ,b a <<ξ。 故)("max )(8 122)("max )(max 2 2 x f a b a b x f x f b x a b x a b x a ≤≤≤≤≤≤-=??? ??-≤。 14、解:设 ))...()(()(21n n x x x x x x a x f ---=, k x x g =)(,记)() (1 ∏=-=n j j n x x x w ,则 ),()(x w a x f n n =).()(' j n n j x w a x f = 由差商的性质知 [])! 1()(1,..,,1) (' 1 )(')('1 211 11 -== ==-===∑∑∑ n g a x x x g a x w x a x w a x x f x n n n n n j j n k j n n j j n n k j n j j k j ξ, ξ介于n x x ,...,1之间。 当20-≤≤ n k 时,0)()1(=-ξn g , 当 1-=n k 时,)!1()(1-=-n g n ξ, 故 ???-=-≤≤=-= --=∑1,,20,0)!1()(1) ('1 11 n k a n k n g a x f x n n n n j j k j ξ 16、解:根据差商与微商的关系,有 [] 1! 7! 7!7)(2,...,2,2)7(7 10===ξf f , [ ] 0! 80 !8)(2,...,2,2)8(8 1 ===ξf f 。 ( 13)(47+++=x x x x f 是7次多项式, 故 ,!7)()7(=x f 0)()8(=x f )。 25、解:(1) 右边= [][]dx x S x f x S dx x S x f b a b a ??-+-)(")(")("2)(")("2 = [] d x x S x f x S x S x S x f x f b a ?-++-)("2)(")("2)(")(")("2)(" 222 = [] d x x S x f b a ?-)(")(" 22 = [][]dx x S dx x f b a b a 2 2 )(")("??- =左边。 (2)左边= ? -b a dx x S x f x S ))(")(")(("
计算方法第3版习题答案 习题1解答 1.1 解:直接根据定义得 *411()102x δ-≤?*411()102r x δ-≤?*3*12211 ()10,()1026 r x x δδ--≤?≤?*2*5331()10,()102r x x δδ--≤?≤ 1.2 解:取4位有效数字 1.3解:433 5124124124 ()()() 101010() 1.810257.563 r a a a a a a a a a δδδδ----++++++≤≤=?++? 123()r a a a δ≤ 123132231123 ()()() a a a a a a a a a a a a δδδ++0.016= 1.4 解:由于'1(),()n n f x x f x nx -==,故***1*(())()()()n n n f x x x n x x x δ-=-≈- 故** * ***(()) (())()0.02()r r n f x x x f x n n x n x x δδδ-= ≈== 1.5 解: 设长、宽和高分别为 ***50,20,10l l h h εεωωεεεε=±=±=±=±=±=± 2()l lh h ωωA =++,*************()2[()()()()()()]l l l h h l h h εδωωδδδωδδωA =+++++ ***4[]320l h εωε=++= 令3201ε<,解得0.0031ε≤, 1.6 解:设边长为x 时,其面积为S ,则有2()S f x x ==,故 '()()()2()S f x x x x δδδ≈= 现100,()1x S δ=≤,从而得() 1 ()0.00522100 S x x δδ≈ ≤ =? 1.7 解:因S ld =,故 S d l ?=?,S l d ?=?,*****()()()()()S S S l d l d δδδ??≈+?? * 2 ()(3.12 4.32)0.010.0744S m δ=+?=, *** ** * () () 0.0744 ()0.55%13.4784 r S S S l d S δδδ= = = ≈ 1.8 解:(1)4.472 (2)4.47 1.9 解:(1) (B )避免相近数相减 (2)(C )避免小除数和相近数相减 (3)(A )避免相近数相减 (3)(C )避免小除数和相近数相减,且节省对数运算 1.10 解 (1)357sin ...3!5!7!x x x x x =-+-+ 故有357 sin ..3!5!7! x x x x x -=-+-, (2) 1 (1)(1)1lnxdx ln ln ln N+N =N N +-N N +N +-? 1 (1)1ln ln N +=N +N +-N 1.11 解:0.00548。 1.12解:21 16 27 3102 ()()() -? 1.13解:0.000021
《计算方法》习题答案 第一章 数值计算中的误差 1.什么是计算方法?(狭义解释) 答:计算方法就是将所求的的数学问题简化为一系列的算术运算和逻辑运算,以便在计算机上编程上机,求出问题的数值解,并对算法的收敛性、稳定性和误差进行分析、计算。 2.一个实际问题利用计算机解决所采取的五个步骤是什么? 答:一个实际问题当利用计算机来解决时,应采取以下五个步骤: 实际问题→建立数学模型→构造数值算法→编程上机→获得近似结果 4.利用秦九韶算法计算多项式4)(5 3 -+-=x x x x P 在3-=x 处的值,并编程获得解。 解:400)(2 3 4 5 -+?+-?+=x x x x x x P ,从而 所以,多项式4)(5 3 -+-=x x x x P 在3-=x 处的值223)3(-=-P 。 5.叙述误差的种类及来源。 答:误差的种类及来源有如下四个方面: (1)模型误差:数学模型是对实际问题进行抽象,忽略一些次要因素简化得到的,它是原始问题的近似,即使数学模型能求出准确解,也与实际问题的真解不同,我们把数学模型与实际问题之间存在的误差称为模型误差。 (2)观测误差:在建模和具体运算过程中所用的一些原始数据往往都是通过观测、实验得来的,由于仪器的精密性,实验手段的局限性,周围环境的变化以及人们的工作态度和能力等因素,而使数据必然带有误差,这种误差称为观测误差。 (3)截断误差:理论上的精确值往往要求用无限次的运算才能得到,而实际运算时只能用有限次运算的结果来近似,这样引起的误差称为截断误差(或方法误差)。 (4)舍入误差:在数值计算过程中还会用到一些无穷小数,而计算机受机器字长的限制,它所能表示的数据只能是一定的有限数位,需要把数据按四舍五入成一定位数的近似的有理数来代替。这样引起的误差称为舍入误差。 6.掌握绝对误差(限)和相对误差(限)的定义公式。 答:设* x 是某个量的精确值,x 是其近似值,则称差x x e -=* 为近似值x 的绝对误差(简称误差)。若存在一个正数ε使ε≤-=x x e * ,称这个数ε为近似值x 的绝对误差限(简称误差限或精度)。 把绝对误差e 与精确值* x 之比* **x x x x e e r -==称为近似值x 的相对误差,称
数值计算方法习题一(2) 习题二(6) 习题三(15) 习题四(29) 习题五(37) 习题六(62) 习题七(70) 2009.9,9
习题一 1.设x >0相对误差为2%4x 的相对误差。 解:由自变量的误差对函数值引起误差的公式: (())(())'()()()() f x x f x f x x f x f x δδ?= ≈得 (1)()f x = 11 ()()*2%1% 22x x δδδ≈ ===; (2)4 ()f x x =时 44 4 ()()'()4()4*2%8%x x x x x x δδδ≈ === 2.设下面各数都是经过四舍五入得到的近似数,即误差不超过最后一位的半个单位,试指出他们各有几位有效数字。 (1)12.1x =;(2)12.10x =;(3)12.100x =。 解:由教材9P 关于1212.m n x a a a bb b =±型数的有效数字的结论,易得上面三个数的有效 数字位数分别为:3,4,5 3.用十进制四位浮点数计算 (1)31.97+2.456+0.1352; (2)31.97+(2.456+0.1352) 哪个较精确? 解:(1)31.97+2.456+0.1352 ≈2 1 ((0.3197100.245610)0.1352)fl fl ?+?+ =2 (0.3443100.1352)fl ?+ =0.3457210? (2)31.97+(2.456+0.1352) 2 1 (0.319710(0.245610))fl fl ≈?+? = 21 (0.3197100.259110)fl ?+? =0.34562 10? 易见31.97+2.456+0.1352=0.3456122 10?,故(2)的计算结果较精确。 4.计算正方形面积时,若要求面积的允许相对误差为1%,测量边长所允许的相对误差限为多少?
习 题 三 解 答 1、用高斯消元法解下列方程组。 (1)1231231 22314254 27x x x x x x x x -+=?? ++=??+=?①②③ 解:?4②+(-)①2,1 2 ?③+(-)①消去第二、三个方程的1x ,得: 1232323231425313222 x x x x x x x ? ?-+=? -=???-=?④⑤⑥ 再由5 2)4 ?⑥+(-⑤消去此方程组的第三个方程的2x ,得到三角方程组: 1232332314272184x x x x x x ? ?-+=? -=???-= ? 回代,得: 36x =-,21x =-,19x = 所以方程组的解为 (9,1,6)T x =-- 注意: ①算法要求,不能化简。化简则不是严格意义上的消元法,在算法设计上就多出了步骤。实际上,由于数值计算时用小数进行的,化简既是不必要的也是不能实现的。无论是顺序消元法还是选主元素消元法都是这样。 ②消元法要求采用一般形式,或者说是分量形式,不能用矩阵,以展示消元过程。 要通过练习熟悉消元的过程而不是矩阵变换的技术。 矩阵形式错一点就是全错,也不利于检查。 一般形式或分量形式: 1231231 22314254 27x x x x x x x x -+=?? ++=??+=?①②③ 矩阵形式 123213142541207x x x -?????? ??? ?= ??? ? ??? ???????
向量形式 123213142541207x x x -???????? ? ? ? ?++= ? ? ? ? ? ? ? ????????? ③必须是方程组到方程组的变形。三元方程组的消元过程要有三个方程组,不能变形出单一的方程。 ④消元顺序12x x →→L ,不能颠倒。按为支援在方程组中的排列顺序消元也是存储算法的要求。实际上,不按顺序消元是不规范的选主元素。 ⑤不能化简方程,否则系数矩阵会变化,也不利于算法设计。 (2)1231231231132323110 221x x x x x x x x x --=?? -++=??++=-? ①②③ 解:?23②+( )①11,1 11 ?③+(-)①消去第二、三个方程的1x ,得: 123232311323523569111111252414111111x x x x x x x ? --=?? ? -=? ? ? +=-??④⑤⑥ 再由25 11)5211 ?⑥+(-⑤消去此方程组的第三个方程的2x ,得到三角方程组: 123233113235235691111111932235252x x x x x x ? ?--=? ? -=?? ? =-?? 回代,得: 32122310641 ,,193193193 x x x =- ==, 所以方程组的解为 41106223(,,)193193193T x =- 2、将矩阵 1020011120110011A ?? ? ?= ?- ???
比较详细的数值分析课后习题答案
0.1算法 1、 (p.11,题1)用二分法求方程013 =--x x 在[1,2]的近似根,要求误差不超过 10-3. 【解】 由二分法的误差估计式31 1*102 1 2||-++=≤=-≤ -εk k k a b x x ,得到100021≥+k .两端取自然对数得96.812ln 10 ln 3≈-≥ k ,因此取9=k ,即至少需 2、(p.11,题2) 证明方程210)(-+=x e x f x 在区间[0,1]有唯一个实根;使用二 分法求这一实根,要求误差不超过2102 1 -?。 【解】 由于210)(-+=x e x f x ,则)(x f 在区间[0,1]上连续,且 012010)0(0<-=-?+=e f ,082110)1(1>+=-?+=e e f ,即0)1()0(+=x e x f ,即)(x f 在区间[0,1]上是单调的,故)(x f 在区间[0,1]有唯一实根.
由二分法的误差估计式21 1*1021 2 12||-++?=≤=-≤-εk k k a b x x ,得到1002≥k .两端取自然对数得6438.63219.322 ln 10 ln 2=?≈≥ k ,因此取7=k ,即至少需二分 0.2误差 1.(p.12,题8)已知e=2.71828…,试问其近似值7.21=x ,71.22=x ,x 2=2.71, 718.23=x 各有几位有效数字?并给出它们的相对误差限。 【解】有效数字: 因为111021 05.001828.0||-?= <=- x e ,所以7.21=x 有两位有效数字; 因为1 2102105.000828.0||-?=<=- x e ,所以71.22=x 亦有两位有效数字; 因为3 3102 10005.000028.0||-?=<=- x e ,所以718.23=x 有四位有效数字; %85.17.205 .0||111=<-= x x e r ε; %85.171 .205 .0||222=<-= x x e r ε;
第五章 7.试比较缺页中断机构与一般的中断,他们之间有何明显的区别? 答:缺页中断作为中断,同样需要经历保护CPU现场、分析中断原因、转缺页中断处理程序进行处理、恢复CPU现场等步骤。但缺页中断又是一种特殊的中断,它与一般中断的主要区别是: ( 1)在指令执行期间产生和处理中断信号。通常,CPU都是在一条指令执行完后去检查是否有中断请求到达。若有便去响应中断;否则继续执行下一条指令。而缺页中断是在指令执行期间,发现所要访问的指令或数据不在内存时产生和处理的。 (2)一条指令在执行期间可能产生多次缺页中断。例如,对于一条读取数据的多字节指令,指令本身跨越两个页面,假定指令后一部分所在页面和数据所在页面均不在内存,则该指令的执行至少产生两次缺页中断。 8.试说明请求分页系统中的页面调入过程。 答:请求分页系统中的缺页从何处调入内存分三种情况: (1)系统拥有足够对换区空间时,可以全部从对换区调入所需页面,提高调页速度。在进程运行前将与该进程有关的文件从文件区拷贝到对换区。 (2)系统缺少足够对换区空间时,不被修改的文件直接从文件区调入;当换出这些页面时,未被修改的不必换出,再调入时,仍从文件区直接调入。对于可能修改的,在换出时便调到对换区,以后需要时再从对换区调入。 (3)UNIX 方式。未运行页面从文件区调入。曾经运行过但被换出页面,下次从对换区调入。UNIX 系统允许页面共享,某进程请求的页面有可能已调入内存,直接使用不再调入。 19.何谓工作集?它是基于什么原理确定的? 答:工作集:在某段时间间隔里,进程实际所要访问页面的集合。 原理:用程序的过去某段时间内的行为作为程序在将来某段时间内行为的近似。 24.说明请求分段式系统中的缺页中断处理过程。 答:在请求分段系统中,每当发现运行进程所要访问的段尚未调入内存时,便由缺段中断机构产生一缺段中断信号,进入操作系统后由缺段中断处理程序将所需的段调入内存。缺段中断机构与缺页中断机构类似,它同样需要在一条指令的执行期间,产生和处理中断,以及在一条指令执行期间,可能产生多次缺段中断。
roots([1 -1 -1]) x=linspace(0,2*pi,10); y=sin(x); xi=linspace(0,2*pi,100); y1=interp1(x,y,xi); y2=interp1(x,y,xi,'spline'); y3=interp1(x,y,xi,'cublic'); plot(x,y,'o',xi,y1,xi,y2,xi,y3) x=[0 300 600 1000 1500 2000]; y=[0.9689 0.9322 0.8969 0.8519 0.7989 0.7491]; xi=linspace(0,2000,20); yi=1.0332*exp(-(xi+500)/7756); y1=interp1(x,y,xi,'spline'); subplot(2,1,1);plot(x,y,'o',xi,yi,xi,y1,'*') p=polyfit(x,y,2); y2=polyval(p,xi); subplot(2,1,2);plot(x,y,'o',xi,yi,xi,y2,'*') x=[0 300 600 1000 1500 2000]; y=[0.9689 0.9322 0.8969 0.8519 0.7989 0.7491]; xi=linspace(0,2000,20); y1=interp1(x,y,xi,'spline'); subplot(2,1,1);plot(x,y,'-o', xi,y1,'-*') p=polyfit(x,y,2); y2=polyval(p,xi); subplot(2,1,2);plot(x,y,'-o',xi,y2,'-*')
第一章 误差 1. 试举例,说明什么是模型误差,什么是方法误差. 解: 例如,把地球近似看为一个标准球体,利用公式2 4A r π=计算其表面积,这个近似看为球体的过程产生的误差即为模型误差. 在计算过程中,要用到π,我们利用无穷乘积公式计算π的值: 其中 我们取前9项的乘积作为π的近似值,得 这个去掉π的无穷乘积公式中第9项后的部分产生的误差就是方法误差,也成为截断误差. 2. 按照四舍五入的原则,将下列各数舍成五位有效数字: 816.956 7 6.000 015 17.322 50 1.235 651 93.182 13 0.015 236 23 解: 816.96 6.000 0 17.323 1.235 7 93.182 0.015 236 3. 下列各数是按照四舍五入原则得到的近似数,它们各有几位有效数字? 81.897 0.008 13 6.320 05 0.180 0 解: 五位 三位 六位 四位 4. 若1/4用0.25表示,问有多少位有效数字? 解: 两位 5. 若 1.1062,0.947a b ==,是经过舍入后得到的近似值,问:,a b a b +?各有几位有效数字? 解: 已知4311 d 10,d 1022 a b --< ?, 又0.2053210a b +=?, ()4332111 10100.551010222 d a b da db da db ----+=+≤+=?+?=?, 所以a b +有三位有效数字; 因为0.1047571410a b ?=?, 所以a b ?有三位有效数字. 6. 设120.9863,0.0062y y ==,是经过舍入后作为12,x x 的近似值.求 12 11,y y 的计算值与真值的相对误差限及12y y ?与真值的相对误差限. 解: 已知-4-41112221211 d ,d ,d = 10,d 1022 x y x x y x x x =+=+?=?, ()4 4111111110d d 12dr dr 0.50100.9863x x x x x y --???==≈=≈? ??? ;
数值分析 (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 )(2 1122k 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 ≥+??? ? ??-=???? ??+=+2 12121 6 证明: 若k x 有n 位有效数字,则n k x -?≤ -1102 1 8, 而() k k k k k x x x x x 28882182 1-=-???? ? ?+=-+ n n k k x x 21221102 1 5.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.0102 21 111=??≤--x x e 71.22=x ,有两位有效数字,相对误差限为 025.0102 21 122=??≤--x x e 3 2.718x =,有两位有效数字,其相对误差限为: 00025.0102 21 333=??≤--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 位有效数字的近似数都成立的正确结论,故他对误差限的估计偏大,但计算略简单些;而第二种方法给出较好的误差限估计,但计算稍复杂。 (2)采用第二种方法时,分子为绝对误差限,不是单纯的对真实值与近似值差值的四舍五入,绝对误差限大于或等于真实值与近似值的差。 11. 解: ......142857.3722≈,.......1415929.3113 255≈ 2102 1 722-?≤-∴ π,具有3位有效数字
习 题 四 解 答 1、设010,1x x ==,写出()x f x e -=的一次插值多项式1()L x ,并估计插值误差。 设插值函数为1()L x ax b =+,由插值条件,建立线性方程组为 解之得11 1 a e b -?=-?=? 则11()(1)1L x e x -=-+ 因为(),()x x y x e y x e --'''=-= 所以,插值余项为 所以 01 0101 ()max max (1) 2111248x r x e x x e ξξ-≤≤≤≤-≤ -=?? =。 2选用合适的三次插值多项式来近似计算f(0.2)和f(0.8)。 解:设三次插值多项式为230123()f x a a x a x a x =+++,由插值条件,建立方程组为 即 解之得 则所求的三次多项式为23()0.41 6.29 3.489.98f x x x x =--+。 所以 3、设(0,1,2, ,)i x i n =是 n+1个互异节点,证明: (1)0()(0,1,2, ,)n k k i i i x l x x k n ===∑; (2)0 ()()0(0,1,2, ,)n k i i i x x l x k n =-==∑。 证明: (1)由拉格朗日插值定理,以x 0,x 1,x 2,…x n 为插值节点,对y=f(x)=x k 作n 次插值,插值多项式为 0()()n n i i i p x l x y ==∑, 而y i =x i k ,
所以0 ()()()n n k n i i i i i i p x l x y l x x ====∑∑ 同时,插值余项 所以0()n k k i i i l x x x ==∑ 结论得证。 (2)取函数()(),0,1,2,,k f x x t k n =-= 对此函数取节点(0,1,2,,)i x i n =,则对应的插值多项式为 0()()()n k n i i i p x x t l x ==-∑, 由余项公式,得 (1) (1)011 ()()()()()()()()0 (1)!(1)! n n k k n k i i i r x x t x t l x f x x t x n n ξ ξππ++==---= =-=++∑所以 令t=x , 4 ()f x = (1)试用线性插值计算f(2.3)的近似值,并估计误差; (2)试用二次Newton 插值多项式计算f(2.15)的近似值,并估计误差。 解:用线性插值计算f(2.3),取插值节点为2.2和2.4,则相应的线性插值多项式是 用x=2.3代入,得 (2) 根据定理2f(x)=f(x 0)+f[x 0,x 1](x-x 0)+f[x 0,x 1,x 2](x-x 0)(x-x 1)+… +f[x 0,x 1,…,x n ](x-x 0)(x-x 1)…(x-x n -1) +f[x 0,x 1,…,x n ,x]π(x) 。 以表中的上方一斜行中的数为系数,得 f(2.15)=1.41421+0.3501 ×(2.15-2.0)-0.047 ×(2.15-2.0) ×(2.15-2.1) =1.663725
习 题 一 解 答 1.取3.14,3.15, 227,355113 作为π的近似值,求各自的绝对误差,相对误差和有效数字的位数。 分析:求绝对误差的方法是按定义直接计算。求相对误差的一般方法是先求出绝对误差再按定义式计算。注意,不应先求相对误差再求绝对误差。有效数字位数可以根据定义来求,即先由绝对误差确定近似数的绝对误差不超过那一位的半个单位,再确定有效数的末位是哪一位,进一步确定有效数字和有效数位。有了定理2后,可以根据定理2更规地解答。根据定理2,首先要将数值转化为科学记数形式,然后解答。 解:(1)绝对误差: e(x)=π-3.14=3.14159265…-3.14=0.00159…≈0.0016。 相对误差: 3()0.0016 ()0.51103.14 r e x e x x -==≈? 有效数字: 因为π=3.14159265…=0.314159265…×10,3.14=0.314×10,m=1。 而π-3.14=3.14159265…-3.14=0.00159… 所以│π-3.14│=0.00159…≤0.005=0.5×10-2=21311 101022 --?=? 所以,3.14作为π的近似值有3个有效数字。 (2)绝对误差: e(x)=π-3.15=3.14159265…-3.14=-0.008407…≈-0.0085。 相对误差: 2()0.0085 ()0.27103.15 r e x e x x --==≈-? 有效数字: 因为π=3.14159265…=0.314159265…×10,3.15=0.315×10,m=1。 而π-3.15=3.14159265…-3.15=-0.008407… 所以│π-3.15│=0.008407……≤0.05=0.5×10-1=11211 101022 --?=? 所以,3.15作为π的近似值有2个有效数字。 (3)绝对误差: 22 () 3.14159265 3.1428571430.0012644930.00137 e x π=-=-=-≈-L L 相对误差:
实验三 数值积分 实验目的: 1、了解数值积分的基本原理和方法; 2、熟练掌握复化梯形公式、复化Simpson 公式及其截断误差的分析; 实验内容:(复化梯形求积公式,根据复化梯形求积公式相关公式和原理自己 填写,以下仅作参考) 由于高阶牛顿--柯特斯公式是不稳定的,因此不可能通过提高阶的方法来提高求积精度,为了提高精度通常可把积分区间分成若干n 等份,再在每个子区间上用梯形公式即当n=2时的Newton-Cotes 公式进行计算,最后将所有区间上的梯形相加即可得该积分的近似值。 )] ()(2)([2)]()([21 1110b f x f a f h x f x f h T n k k k n k k n ++=+=∑∑-=+-=, 它的余项公式是 2 ()()12n b a R f h f η-''=- , 实际上=-=n n T I f R )()()],(12[1,1 3+-=∈''-∑k k n k x x f h ηη, )(1)(1 0∑-=''=''n k k f n f ηη; 具体计算步骤如下 1).给出被积函数f (x )、区间[a ,b ]端点a ,b 和等分数n ; 2).求出 n a b h h k a x k -= +=,*; 3).计算)(a f 、)(b f 、 1 1 ()n k k f x -=∑; 4). 得**21 h T n =?? ? ???+*+∑-=)()(2)(1 1b f x f a f n k k
实验题目1 用复化梯形公式计算由下表数据给出的积分值 1.5 0.3 ()d y x x ? 。 k 1 2 3 4 5 6 7 x k 0.3 0.5 0.7 0.9 1.1 1.3 1.5 y k 0.3895 0.6598 0.9147 1.1611 1.3971 1.6212 1.8325 若已知该表数据为函数y =x +sin x /3所产生,请将计算值与精确值作比较。 1、已知精确积分值为: ()()1.5 222 0.3 1cos 111.50.3cos1.5cos 0.3 1.374866429152632323x x ??-=---= ??? 实验题目2 利用复化梯形求积公式计算圆周率,要求达到10位有效数字(方法可参考课后第三题)。
1.1 设3.14, 3.1415, 3.1416分别作为π的近似值时所具有的有效数字位数 解 近似值x =3.14=0.314×101,即m =1,它的绝对误差是 -0.001 592 6…,有 31105.06592001.0-*?≤=- x x . 即n =3,故x =3.14有3位有效数字. x =3.14准确到小数点后第2位. 又近似值x =3.1416,它的绝对误差是0.0000074…,有 5-1*10?50≤00000740=-.. x x 即m =1,n =5,x =3.1416有5位有效数字. 而近似值x =3.1415,它的绝对误差是0.0000926…,有 4-1*10?50≤00009260=-.. x x 即m =1,n =4,x =3.1415有4位有效数字. 这就是说某数有s 位数,若末位数字是四舍五入得到的,那么该数有s 位有效数字 1.2 指出下列各数具有几位有效数字,及其绝对误差限和相对误差限: 2.0004 -0.00200 9000 9000.00 解 (1)∵ 2.0004=0.20004×101, m=1 绝对误差限:4105.0000049.020004.0-*?≤≤-=-x x x m -n =-4,m =1则n =5,故x =2.0004有5位有效数字 1x =2,相对误差限000025.010******** 1)1(1 =??=??=---n r x ε (2)∵ -0.00200= -0.2×10-2, m =-2 5105.00000049.0)00200.0(-*?≤≤--=-x x x m -n =-5, m =-2则n =3,故x =-0.00200有3位有效数字 1x =2,相对误差限3 110221 -??=r ε=0.0025 (3) ∵ 9000=0.9000×104, m =4, 0105.049.09000?<≤-=-*x x x m -n =0, m =4则n =4,故x =9000有4位有效数字 4 110921-??=r ε=0.000056 (4) ∵9000.00=0.900000×104, m =4, 2105.00049.000.9000-*?<≤-=-x x x m -n =-2, m =4则n =6,故x =9000.00有6位有效数字 相对误差限为6 110921-??=r ε=0.000 00056 由(3)与(4)可以看到小数点之后的0,不是可有可无的,它是有实际意义的. 1.3 ln2=0.69314718…,精确到310-的近似值是多少? 解 精确到310-=0.001,即绝对误差限是ε=0.0005, 故至少要保留小数点后三位才可以.ln2≈0.693 2.1 用二分法求方程013=--x x 在[1, 2]的近似根,要求误差不超过 31021-?至少要二分多少? 解:给定误差限ε=0.5×10-3,使用二分法时,误差限为 )(211*a b x x k k -≤-+ 只要取k 满足ε<-+)(211a b k 即可,亦即 96678.912lg 10lg 35.0lg 12lg lg )lg(=-+-=---≥εa b k 只要取n =10. 2.3 证明方程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,1]单调减少,所以f (x ) 在区间 [0,1]内有唯一实根. 给定误差限ε=0.5×10-4,使用二分法时,误差限为 )(211*a b x x k k -≤-+ 只要取k 满足ε<-+)(211a b k 即可,亦即 7287.1312lg 10lg 45.0lg 12lg lg )lg(=-+-=---≥εa b k 只要取n =14. 2.4 方程0123=--x x 在x =1.5附近有根,把方程写成四种不同的等价形式,并建立相应的迭代公式: (1)211x x +=,迭代公式2111k k x x +=+ (2)231x x +=,迭代公式3211k k x x +=+ (3)112-=x x ,迭代公式111-=+k k x x (4)13-=x x ,迭代公式131-=+k k x x 试分析每种迭代公式的收敛性,并选取一种收敛迭代公式求出具有四位有效数字的近似根。 解:(1)令211)(x x f +=,则32)(x x f -=',由于