当前位置:文档之家› 上海大学_王培康_数值分析大作业

上海大学_王培康_数值分析大作业

数值分析大作业(2013年5月)金洋洋(12721512),机自系1.下列各数都是经过四舍五入得到的近似值,试分别指出它 们的绝对误差限, 相对误差限和有效数字的位数。

X1 =5.420, x 2 =0.5420, x 3=0.00542, x 4 =6000, x 5=50.610⨯解:根据定义:如果*x 的绝对误差限 不超过x 的某个数位的半个单位,则从*x 的首位非零数字到该位都是有效数字。

显然根据四舍五入原则得到的近视值,全部都是有效数字。

因而在这里有:n1=4, n2=4, n3=3, n4=4, n5=1 (n 表示x 有效数字的位数) 对x1:有a1=5, m1=1 (其中a1表示x 的首位非零数字,m1表示x1的整数位数) 所以有绝对误差限 14311(1)101022x ε--≤⨯=⨯相对误差限 31()0.510(1)0.00923%5.4201r x x x εε-⨯=== 对x2:有a2=5, m2=0 所以有绝对误差限 04411(2)101022x ε--≤⨯=⨯相对误差限 42()0.510(2)0.00923%0.54202r x x x εε-⨯=== 对x3:有a3=5, m3=-2 所以有绝对误差限 23511(3)101022x ε---≤⨯=⨯相对误差限 53()0.510(3)0.0923%0.005423r x x x εε-⨯=== 对x4:有a4=0, m4=4 所以有绝对误差限 4411(4)1022x ε-≤⨯=相对误差限 4()0.5(4)0.0083%60004r x x x εε=== 对x5:有a5=6, m5=5 所以有绝对误差限 51411(5)101022x ε-≤⨯=⨯相对误差限 45()0.510(5)8.3%600005r x x x εε⨯===2.对矩阵A 进行LU 分解, 并求解方程组Ax b =其中211132122A ⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦,465b ⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦解:A=LU 代入方程Ax b = 可转化为L y bU x y⎧=⎪⎨=⎪⎩先对矩阵A 进行LU 分解,如下11121311121321222321112112222113233132333111311232223113322333111u u u u u u A LU l u u l u l u u l u u l l u l u l u l u l u l u u ⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥===++⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥+++⎣⎦⎣⎦⎣⎦根据系数相应相等有:第一行:112u =,121u =,131u = 第二行:21112121l u l ==,可得210.5l =211222220.513l u u u +=⨯+=,可得22 2.5u = 211323230.512l u u u +=⨯+=,可得23 1.5u =第三行:31113121l u l ==,可得310.5l =31123222320.51 2.52l u l u l +=⨯+=,可得320.6l =3113322333330.510.6 1.52l u l u u u ++=⨯+⨯+=,可得330.6u =所以有:12110.51 2.5 1.50.50.610.6A LU ⎡⎤⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦解方程如下123140.5160.50.615y y y ⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦,可得123440.6y y y ⎡⎤⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦ 11223321142.5 1.540.60.6x y x y x y ⎡⎤⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦⎣⎦,可得123111x x x ⎡⎤⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦3. 用 J 迭代法和 G-S 迭代法求解方程组 123123123202324812231530x x x x x x x x x ++=⎧⎪++=⎨⎪-+=⎩时, 若取初始解向量(0)(0,0,0)T x = , 问各需迭代多少次才能使误差()*610k x x-∞-≤ 。

解:可知方程组的系数矩阵为20231812315A ⎡⎤⎢⎥=⎢⎥⎢⎥-⎣⎦,241230b ⎛⎫⎪= ⎪ ⎪⎝⎭将A 写成A=D-L-U 的形式为20002381001152300A --⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥=----⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦⎣⎦对于两种迭代法,它们的迭代矩阵分别为:130102011()088210155J B D L U -⎡⎤--⎢⎥⎢⎥⎢⎥=+=--⎢⎥⎢⎥⎢⎥-⎢⎥⎣⎦1迭代: ,11301020117()08016019101200800G S D L U -⎡⎤--⎢⎥⎢⎥⎢⎥-=-=-⎢⎥⎢⎥⎢⎥-⎢⎥⎣⎦迭代:G 可得:111=max ,,13443B∞⎧⎫=⎨⎬⎭⎩ ,11941=max ,,1441602400G ∞⎧⎫=⎨⎬⎭⎩我们知道对J 迭代法来说其迭代的矩阵表示式为(1)()1k k xBx D b +-=+ 对G-S 迭代法来说其迭代的矩阵表示式为(1)()1()k k xGx D L b +-=+- 在这里有1 1.21.52D b -⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦ , 11.2() 1.352.11D L b -⎡⎤⎢⎥-=⎢⎥⎢⎥⎣⎦对J 迭代法有:(1)(1.2,1.5,2)T x = ,已知(0)(0,0,0)Tx =故得 }{(1)=max 1.2,1.5,2=2x x∞- (0)对G-S 迭代法有:(1)(1.2,1.35,2.11)T x = , 已知(0)(0,0,0)Tx =故得(1)=2.11x x∞- (0)由定理可知:对于方程组x Bx d =+,如果1B <,则:有误差估计式()*(1)()(1)(0)1...11kk k k B x x x x x x B B+-≤-≤≤---可得:()*(1)(0)(1)ln /ln k x x B k B x x--≥- ,在这里有1/31B ∞=<,=141G ∞<,符合上述条件。

故对J 迭代法有:6(2/3)10ln()ln(1/3)13.5762k -⨯≥= ,取k=14 ,知共需迭代14次才能使误差()*610k x x-∞-≤ 。

故对G-S 迭代法有:60.7510ln()ln 0.2510.7122.11k -⨯≥= ,取k=11,知共需迭代11次才能使误差()*610k x x-∞-≤ 。

4. 给定方程组 121223(1)324x x x x +=⎧⎨+=⎩ ,1212324(2)23x x x x +=⎧⎨+=⎩取(0)(1.01,1.01)Tx = ,分别用J 迭代法和 G-S 迭代法求解,问是否收敛?若收敛,则求出满足()*310k x x-∞-≤ 的解。

解:对方程组(1)可知方程组的系数矩阵为1232A ⎡⎤=⎢⎥⎣⎦,34b ⎛⎫= ⎪⎝⎭将A 写成A=D-L-U 的形式为10022300A -⎡⎤⎡⎤⎡⎤=--⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦⎣⎦对于两种迭代法,它们的迭代矩阵分别为:2()302J B D L U --⎡⎤⎢⎥=+=⎢⎥-⎣⎦1迭代: , 102()03G S D L U --⎡⎤-=-=⎢⎥⎣⎦迭代:G分别求B 和G 的特征值:对B 有230I B λλ-=-=,得12λλ==故可得{}12()max 1ii B ρλ≤≤==>。

对G 有(3)0I G λλλ-=-=,得120,3λλ==故可得{}12()max 31ii G ρλ≤≤==>。

故可知:J 迭代法和G-S 迭代法求解方程组(1)时均不收敛。

对方程组(2)首先判断其收敛性:可知方程组的系数矩阵为3212A ⎡⎤=⎢⎥⎣⎦,43b ⎛⎫= ⎪⎝⎭将A 写成A=D-L-U 的形式为30022100A -⎡⎤⎡⎤⎡⎤=--⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦⎣⎦对于两种迭代法,它们的迭代矩阵分别为:203()102J B D L U -⎡⎤-⎢⎥=+=⎢⎥⎢⎥-⎢⎥⎣⎦1迭代: , 1203()103G S D L U -⎡⎤-⎢⎥-=-=⎢⎥⎢⎥⎢⎥⎣⎦迭代:G 分别求B 和G 的特征值:对B 有2103I B λλ-=-=,得121/1/λλ==- 故可得{}12()max 1/1ii B ρλ≤≤==<。

对G 有(1/3)0I G λλλ-=-=,得120,1/3λλ==故可得{}12()max 1/31ii G ρλ≤≤==<。

故可知:J 迭代法和G-S 迭代法求解方程组(2)时均收敛。

【其实这里有更简单的判定方法:即通过方程组的系数矩阵A 是严格的主对角占优的,故对两种迭代法都收敛。

】下面来进行具体求解:对J 迭代法来说其迭代的矩阵表示式为(1)()1k k x Bx D b +-=+ ,其中14/33/2D b -⎛⎫= ⎪⎝⎭对G-S 迭代法来说其迭代的矩阵表示式为1()k k x Gx D L b +-=+-其中14/3()5/6D L b -⎛⎫-= ⎪⎝⎭我们可得J 迭代法和G-S 迭代法的迭代格式分别为:(1)()12(1)()2142:331.50.5k k k k x x J x x ++⎧=-⎪⎨⎪=-⎩ , (1)()12(1)()224233:5163k k k k x x G S x x ++⎧=-⎪⎪-⎨⎪=+⎪⎩这里显然可得该方程组的精确解为()*=0.5,1.25Tx代入上公式经整理可得下表: 对J 迭代法:K()1k x()2k x()*k x x∞-0 1.01 1.01 0.51 1 0.66 0.995 0.255 2 0.67 1.17 0.17 3 0.553333 1.165 0.085 4 0.556667 1.223333 0.056667 5 0.517778 1.221667 0.028333 6 0.518889 1.241111 0.018889 7 0.505926 1.240556 0.009444 8 0.506296 1.247037 0.006296 9 0.501975 1.246852 0.003148 10 0.502099 1.249013 0.002099 11 0.500658 1.248951 0.001049 12 0.5006991.2496710.000699<0.001此时:()*3=0.000699<10k x x-∞- ,结束计算,知解为()(12)=0.500699,1.249671Tx对G-S 迭代法:K()1k x()2k x()*k x x∞-0 1.01 1.01 0.51 1 0.66 1.17 0.16 2 0.553333 1.223333 0.053333 3 0.517778 1.241111 0.017778 4 0.505926 1.247037 0.005926 5 0.501975 1.249012 0.001975 6 0.5006591.2496710.000659<0.001此时:()*3=0.000659<10k x x-∞- ,结束计算,知解为()(6)=0.500659,1.249671Tx由两表格我们也可直观看出J 迭代法和G-S 迭代法均收敛,且可看出G-S 迭代法收敛的更快。

相关主题