当前位置:文档之家› 数值分析讲义线性方程组的解法

数值分析讲义线性方程组的解法

数值分析讲义线性方程组的解法
数值分析讲义线性方程组的解法

数值分析讲义

第三章线性方程组的解法

§3.0 引言

§3.1 雅可比(Jacobi)迭代法

§3.2 高斯-塞德尔(Gauss-Seidel)迭代法

§3.3 超松驰迭代法§3.7 三角分解法

§3.4 迭代法的收敛性§3.8 追赶法

§3.5 高斯消去法§3.9 其它应用

§3.6 高斯主元素消去法§3.10 误差分析

§3 作业讲评3 §3.11 总结

§3.0 引言

重要性:解线性代数方程组的有效方法在计算数学和科学计算中具有特殊的地位和作用.如弹性力学、电路分析、热传导和振动、以及社会科学及定量分析商业经济中的各种问题.

分类:线性方程组的解法可分为直接法和迭代法两种方法.

(a) 直接法:对于给定的方程组,在没有舍入误差的假设下,能在预定的运算次数内求得精确解.最基本的直接法是Gauss消去法,重要的直接法全都受到Gauss消去法的启发.计算代价高.

(b) 迭代法:基于一定的递推格式,产生逼近方程组精确解的近似序列.收敛性是其为迭代法的前提,此外,存在收敛速度与误差估计问题.简单实用,诱人.

§3.1 雅可比Jacobi 迭代法 (AX =b )

1

基本思想:

与解f (x )=0 的不动点迭代相类似,将AX =b 改写为X =BX +f 的形式,建立雅可比方法的迭代格式:X k +1=BX (k )+f ,其中,B 称为迭代矩阵.其计算精度可控,特别适用于求解系数为大型稀疏矩阵(sparse matrices)的方程组. 2

问题:

(a) 如何建立迭代格式?

(b) 向量序列{X k }是否收敛以及收敛条件? 3 例题分析:

考虑解方程组???

??=+--=-+-=--2.453.82102

.72103

21321321x x x x x x x x x (1)

其准确解为X *={1, 1.2, 1.3}. 建立与式(1)相等价的形式:

???

??++=++=++=84.02.01.083.02.01.072

.02.01.02

13312321x x x x x x x x x (2) 据此建立迭代公式:

?????++=++=++=+++84

.02.01.083.02.01.072.02.01.0)(2)(1)1(3

)(3

)(1)1(23)(2)1(1k k k k k k k

k k x x x x x x x x x (3) 取迭代初值0)

0(3

)0(2)0(1===x x x ,迭代结果如下表. JocabiMethodP31.cpp

迭代次数 x1 x2 x3

0 0 0 0

1 0.7

2 0.8

3 0.84

2 0.971 1.07 1.15

3 1.057 1.1571 1.2482

4 1.0853

5 1.18534 1.28282

5 1.095098 1.195099 1.294138

6 1.098338 1.19833

7 1.298039

7 1.099442 1.199442 1.299335

8 1.099811 1.199811 1.299777

9 1.099936 1.199936 1.299924

10 1.099979 1.199979 1.299975

11 1.099993 1.199993 1.299991

12 1.099998 1.199998 1.299997

13 1.099999 1.199999 1.299999

14 1.1 1.2 1.3

15 1.1 1.2 1.3

4Jocobi迭代公式:

设方程组AX=b, 通过分离变量的过程建立

Jocobi迭代公式,即

)

,,2,1()(1

)

,,2,1(0,11

n i x a b a x n i a b x a n i

j j j ij i ii

i ii n

i i j ij =∑-==≠∑=≠== 由此我们可以得到Jacobi 迭代公式:

),,2,1()(1

1)

1(n i x a b a x

n i

j j k i ij i ii

k i

=∑-=≠=+

[Jacobi 迭代公式的算法] 1: 初始化. n , (a ij ), (b j ), (x 1) , M . 2: 执行k =1直到M 为止. ① 执行i =1直到n 为止.

ii n

i

j j j ij i i a x a b u /)(1∑-←≠= ;

② 执行i =1直到n 为止.

i i u x ← ;

输出k , (x i ).

另外,我们也可以建立Jacobi 迭代公式的矩阵形式. 设方程组AX =b ,

其中,A =(a ij )n 为非奇异阵,

X =(x 1,x 2,…,x n )T , b =(b 1,b 2,…,b n )T

将系数阵A 分解为: A =U +D +L ,

U 为上三角矩阵,D 为对角矩阵,L 为下三角矩阵.

于是AX =b 可改写为 (U +D +L )X =b

? X =D -1b -D -1(U +L )X

由此可得矩阵形式的Jocobi 迭代公式: X k +1=BX (k )+f □

§3.2 高斯-塞德尔Gauss-Seidel 迭代法

注意到利用Jocobi 迭代公式计算)

1(+k i

x 时,已经计算好

)(1)(2)(1,,,k i k k x x x - 的值,而Jocobi 迭代公式并不利用这些最新的近似值计

算,仍用)

(1)(2)

(1

,,,k i k k x x x - .这启发我们可以对其加以改进,即在每个分量的

计算中尽量利用最新的迭代值,得到

),,2,1()(1111)1()

1(n i x a x a b a x

n i j k j

ij i j k j ij i ii

k i

=∑-∑-=+=-=++

上式称为Gauss-Seidel 迭代法. 其矩阵形式是

X =-(D +L )-1UX +(D +L )-1b , X k +1=BX (k )+f .

迭代次数 x1 x2 x3 0 0 0 0 1 0.72 0.902 1.1644 2 1.04308 1.167188 1.282054 3 1.09313 1.195724 1.297771

4 1.099126 1.199467 1.299719

5 1.09989 1.199933 1.299965

6 1.099986 1.199992 1.299996

7 1.099998 1.199999 1.299999

8 1.1 1.2 1.3

§3.3 超松驰迭代法SOR 方法

1

基本思想:

逐次超松弛迭代法(Successive Over Relaxation Method,简写为SOR)可以看作带参数ω的高斯-塞德尔迭代法,是G-S 方法的一种修正或加速.是求解大型稀疏矩阵方程组的有效方法之一. 2 SOR 算法的构造:

设方程组AX =b , 其中,A =(a ij )n 为非奇异阵,X =(x 1,x 2,…,x n )T , b =(b 1,b 2,…,b n )T . 假设已算出x (k ),

),,2,1()(1111)

1()

1(n i x a x a b a x

n i j k j ij i j k j ij i ii

k i

=∑-∑-=+=-=++ (1)

相当于用高斯-塞德尔方法计算一个分量的公式. 若对某个参数ω,作)1(+k i

x

与)

(k i x

加权的平均,即 )

()1()()1()()1()(1

k i k i

k i k i

k i

k i

x x

x x

x

x

-+=+-=+++ωωω (2)

其中,ω称为松弛因子.

用(1)式代入(2)式,就得到解方程组AX =b 的逐次超松弛迭代公式:

???

??=∑-∑-=??+==-=++),,2,1()()

(11)1()()1(n i x a x a b a x x x x n i

j k j ij i j k j ij i ii

i i k i k i ω (3) 显然,当取ω=1时,式(3)就是高斯-塞德尔迭代公式. 3 例题分析:

利用SOR 方法解方程组

???

??=+---=-+-=--33222420243

21321321x x x x x x x x x (1) 其准确解为X *={1, 1, 2}. 建立与式(1)相等价的形式:

????

???

++=-+=+=13

2

315.05.05.025.05.021*******x x x x x x x x x (2) 据此建立迭代公式:

???????++=-+=+=+++13

2315.05.05.025.05.0)(2)(1)

1(3)

(3)(1)1(23)(2)

1(1

k k k k k k k

k k x x x x x x x x x (3)

利用SOR 算法,取迭代初值1)

0(3)0(2)0(1===x x x ,

ω=1.5,迭代结果如下表.

逐次超松弛迭代法

次数 x1 x2 x3 1 0.625000 0.062500 1.750000 2 0.390625 0.882813 1.468750 3 1.017578 0.516602 1.808594

4 0.55688

5 0.880981 1.710449

5 1.023712 0.743423 1.868103

6 0.746250 0.908419 1.838737

7 0.997715 0.860264 1.913894

8 0.864050 0.936742 1.908605

9 0.986259 0.922225 1.945523

10 0.928110 0.958649 1.947493

11 0.985242 0.955944 1.966198

12 0.961661 0.973818 1.969521

13 0.988103 0.974699 1.979289

14 0.979206 0.983746 1.982172

15 0.991521 0.985318 1.987416

16 0.988509 0.990038 1.989513

17 0.994341 0.991414 1.992397

18 0.993538 0.993946 1.993806

19 0.996367 0.994950 1.995424

20 0.996313 0.996342 1.996331

21 0.997724 0.997018 1.997254

22 0.997871 0.997798 1.997822

23 0.998596 0.998234 1.998355

GS迭代法须迭代85次得到准确值X*={1, 1, 2};而SOR方法只须55次即得准确值.由此可见,适当地选择松弛因子ω,SOR法具有明显的加速收敛效果. □

§3.4 迭代法的收敛性

1. 向量和矩阵范数 (a) 向量范数

R n 空间的向量范数 || · || ,对任意

n R y x ∈,, 满足下列条件:

00||||;0||||)1(

=?=≥x x x (正定性)

||||||||||)2(x x

?=αα (齐次性)

||||||||||||)3(y x y x

+≤+ (三角不等式)

常见的向量范数有: (1) 列范数:

(2) 谱范数:(欧几里德范数或向量的长度,模)

(3) 行范数:

(4) p 范数:

上述范数的几何意义是:

∞||||x =max(|x 2-x 1|,|y 2-y 1|) ; 1||||x =|x 2-x 1|+|y 2-y 1| ;

2

122122)()(||||y y x x x -+-=.

向量序列}{)

(k x

依坐标收敛于向量x * 的充要条件是向量序列

}{)(k x 依范数收敛于向量x *,即0||||lim *)(=-∞

→x x k k .

(b) 矩阵范数

n m R ?空间的向量范数 || ·

|| ,对任意 n m R B A ?∈,, 满足下列条件:

||

|||||| || AB || (4)||

||||||||||)3(||||||||||)2(0

0||||;0||||)1(B A B A B A A A A A A ≤+≤+?==?=≥αα

常见的矩阵范数有:

∑==∞≤≤n

j ij a A n

i 1

||max ||||1 (行和范数)

∑==≤≤n

i ij a A n

j 1

1||max ||||1 (列和范数)

)(||||max 2A A A T λ= (谱范数)

若A 对称,则有

)()(2max max A A A T

λλ=.

矩阵A 的谱半径记为)(||||

2A A ρ=,

ρ(A ) =||max

1i n

i λ≤≤,其中λi 为A 的特征根。

2. 迭代法基本定理

设有方程组X =BX +f ,对于任意初始向量X (0)及任意f ,迭代公式

X (k +1)=BX (k )+f 收敛的充要条件是)(B ρ<1,)(B ρ为矩阵B 的谱半径. 证:设X *为方程组X =BX +f 的准确解,即 X *=BX *+f .

对于任意初始向量X (0)及任意f ,迭代公式X (k +1)=BX (k )+f ,

于是,

)

()()

()

(*)0(*)2(2*

)

1(*)1(*)(X X B X X B X X

B f BX f BX X X k k k k k -=-=-=+-+=----

由此可得,迭代法收敛的充要条件是)(0∞→→k B k

.

即,

)(B ρ<1. □

上述定理是线性方程组迭代解法收敛性分析的基本定理,然而由于

)(B ρ的计算往往比较困难,尽管有各种办法估计)(B ρ的上界,但往往

偏听偏大而不实用,由此导致定理的理论价值胜于实用价值,为满足实际判敛的需要,有如下定理.

(迭代收敛的充分条件)

设有迭代公式X (k +1)=BX (k )+f ,如果||B ||<1,则对于任意初始向量X (0)及任意f , 迭代公式均收敛.

3. 从方程组的系数矩阵A 判断迭代收敛性

实际中要求解的某些线性方程组,其系数矩阵往往具有一些特点,如系数矩阵为对称正定、对角元素占优等.由这些方程组系数矩阵的特殊性,使得我们可以直接从方程组的系数矩阵A 出发来讨论迭代法的收敛性.

设n n n

n ij R a A ??∈=)(,满足

∑=≥≠=n

i

j j ij ii n i a a 1,,2,1,||||

且至少有一个i 值,使得

∑>≠=n

i

j j ij ii a a 1||||

成立,则称A 为对角占优矩阵;若

∑=>≠=n

i

j j ij ii n i a a 1,,2,1,|||| ,

则称A 为严格对角占优矩阵.

如果n n n

n ij R a A ??∈=)(为严格对角占优矩阵,则对任意的初值

x (0),解方程组AX =B 的Jacobi 法、Guess-Seidel 迭代法均收敛. □ HW: 3.1 3.2 3.3(上机实习)

§ 3.5 高斯消去法

1

基本思想:

用高斯消去法求解线性方程组的基本思想是设法消去方程组的系数矩阵A 的主对角线下的元素,而将Ax

=b 化为等价的上三角形方程组,然后再通过回代过程便可以获得方程组的解.

这种解线性方程组的方法,常称为高斯消去法(Gaussian Elimination).

2 例题分析:

利用高斯消去法求解方程组:??????

?-=-++-=++-=++-=++-38

1846273913334106812124226432

14321432

14321x x x x x x x x x x x x x x x x

??????

?-=-++-=++-=++-=++-38

1846273913334106812124226432

143214321432

1x x x x x x x x x x x x x x x x (1)

利用r i -111

1

r a a i ,i =2,3,4.得

??????

?-=-+=++-=++-=++-26

1432 21 812 10 2 24 12 4226432

4324324321x x x x x x x x x x x x x (2)

利用r i -2)2(22

)

2(2r a a i ,i =3,4.得

??????

?-=--=-=++-=++-21

13 4 9 5 2 10 2 24 12 422643434

324321x x x x x x x x x x x (3) 利用r i -3)3(33

)

3(3r a a i ,i =4.得

??????

?-=--=-=++-=++-3

3 9 5 2 10 2 2

4 12 42264434

324321x x x x x x x x x x (4) 显然,方程组(4)与(1)是等价的,其系数矩阵为上三角

状的,易于求解.称以上过程为高斯消去法的消去过程.通过方程组(4)的回代求解,可以得到准确解为

X *=[1, -3, -2,1]T .

这一过程为高斯消去法的回代过程. 2 高斯消去法算法的构造:

记方程组AX =b 为A (1)X =b (1), 其中,A (1)和b (1)的元素分别记为

.,,2,1,)1()

1(n j i b a i ij =、、

Step1:第一次消元

设0)1(11≠a ,将增广矩阵的第i 行减去)1(11

)1(11/a a m i i =倍,(i =2,…,n ),目的是将增广矩阵的第一列内除每一个元素不变外,其余全部消为零,得到A (2)X =b (2),即

][ 0

...0............][)2()2()2()2()2(2)2(2)2(2)2(22)1(1)1(1)1(12)1(11)1()1()1(2)1(1)1(2)1(2)1(22)1(21)1(1)

1(1)1(12)

1(11)1()1(b A b a a b a a b a a a b a a a b a a a b a a a b A n nn

n n

n n nn n n n

n =????

??

???????????????

?

???????=

其中

)...,,2,()

1(1

1)1()2()

1(11)

1()2(n j i b m b b a m a a i i i j i ij ij =???-=-= Step2:第k 次消元(12-≤≤n k )

设第k -1次消元已完成,且0)

(≠k kk

a ,得到A (k )X =

b (k ),即

????????

?????

????

?=)()

()()()

()()2(2)

2(2)2(2)2(22)1(1)

1(1)1(1)1(12)1(11)

()(][k n k nn

k kn

k k k kn k kk n

k

n

k k k b a a b a a b a a a b a a a a b A

计算因子)...,,1(/)()(n k i a a m k kk

k ik ik

+==,

???+=-=-=++)

...,,1,()()()1()

()()1(n k j i b m b b a m a a k k

ik k i k i k kj ik k ij k ij

如此反复,经过n -1次消元之后得到一个与原方程组等价的上三角形方程组.

?

?

??

?

?????????????=

???????????????????????????????

????

?=)()2(2)1(121)

()2(2)2(22

)

1(1)

1(12)

1(11)()

(...............

][n n n n nn n n

n n b b b x x x a a a a a a b A Step3:回代

只要0)

(≠n nn a 就可以回代求解

)()(/n nn n n n a b x =

)1...,,1()(1)

()(-=∑-=

+=n i a

x a b x i ii

n

i j j i ij i i

i

3 高斯消去法[算法] Step1[消元]: 对k =1,2,…,n -1 ① 若0)

(=k kk

a 则停止计算

对i =k +1,k+2,…,n

计算因子)()(/k kk k ik ik a a m =;

对j =k +1,k+2,…,n

计算???-=-=++)

()()

1()()()1(k k

ik k i k i k kj ik k ij k ij b m b b a m a a ;

Step2[回代]: 对i =n ,n -1,…,1

)(1

)

()(i ii

n

i j j

i ij i i

i a

x a b x ∑-=

+=

(高斯消去法的条件)

(1)

若A 的所有顺序主子式均不为0,则高斯消元无需换行即可进行到底,且得到唯一解.

(2)

若消元过程中允许对增广矩阵进行行交换,则方程组Ax =b 可用消去法求解的充要条件是A 可逆.

第二章 线性方程组的数值解法

第二章 线性方程组的数值解法 在科技、工程技术、社会经济等各个领域中很多问题常常归结到求解线性方程组。例如电学中的网络问题,样条函数问题,构造求解微分方程的差分格式和工程力学中用有限元方法解连续介质力学问题,以及经济学中求解投入产出模型等都导致求解线性方程组。 n 阶线性方程组的一般形式为 ?? ???? ?=+++=+++=+++n n nn n n n n n n b x a x a x a b x a x a x a b x a x a x a L K K K K L L 22112 222212********* (1.1) 其矩阵形式为 b Ax = (1.2) 其中 ????? ???????=??? ?????????=? ? ????? ?????= n n nn n n n n b b b b x x x x a a a a a a a a a A M M L K K K K L L 2121212222111211 ),,2,1,(n j i a ij L =,),,2,1(n i b i L =均为实数,i b 不全为0,且A 为非奇异。 关于线性方程组的数值解法一般分为两类: 1.直接法 就是不考虑计算机过程中的舍入误差时,经有限次的四则运算得到方程组准确解的方法。 而实际中由于计算机字长的限制,舍入误差的存在和影响,这种算法也只能求得线性方程组的近似解。本章将阐述这类算法中最基本的消去法及其某些变形。这些方法主要用于求解低阶稠密系数矩阵方程组。 2.迭代法 从某个解的近似值出发,通过构造一个无穷序列,用某种极限过程去逐步逼近线性方程组的精确解的方法。本章主要介绍迭代法与迭代法。迭代法是解大型稀疏矩阵(矩阵阶数高而且零元素较多)的线性方程组的重要方法。 §1 高斯)(Gauss 消去法 1.1 Gauss 消去法 Gauss 消去法是将线性方程组化成等价的三角形方程组求解。首先举例说明Gauss

线性方程组的数值解法实验

线性方程组的数值解法 实验 题目 用Gauss消元法和Seidel迭代法求线性方程组的解。 实验目的 通过本次实验了解Gauss消元法和Seidel迭代法的基本原理,掌握其算法,学会用Matlab编程进行计算,并能用这些方法解决实际问题。 Gauss 顺序消元法的基本原理算法: (1)输入:,. A b (2)对1,2,,1 k n =???-做 1)if0 kk a=then输出算法失败信息,停机; 2)对1,, i k n =+???做 1/; ik ik ik kk a l a a ←= 2; i i ik k b b l b =- 3对1,, j k n =+???做; ij ij ik kj a a l a =- (3)if0 nn a=then输出算法失败信息,并停机else做 1)/; n n n nn b x b a ←= 2)对1,,2,1 i n =-???做 1 ()/; n i i i ij j ii j i b x b a x a =+ ←=-∑ (4)输出方程组的解.X

流程图见附页 Seidel 迭代法的基本原理算法: (1)输入:,; A b (2)输入:初始解向量 ;x (3)对1,2,, i n =???做 1) 1 ()/; n i i ij j ii j j i y b a x a = ≠ =-∑ 2); i i i e y x =- 3); i i x y = (4)if 1 {||} max i i n eε ≤≤ 时方程组无解,当RB RA n ==时方程组有唯一解,当RB RA n =<时,方程组有无穷多解; ②根据公式 (1)()() (1)()() (,1,,) (1,,) k k k ij ij ik kj k k k i i ik k a a l a i j k n b b l b i k n + + =-=+??? =-=+??? 将增广矩阵[,] B A b =化为上三角形矩阵; (2)建立. backsub m文件; (3)调用. backsub m文件,在Matlab命令窗口输入,A b矩阵,再输入[,,,](,) RA RB n X gaus A b =,进行Matlab实现得出方程的解。

数值分析第4章答案

第四章 数值积分与数值微分 1.确定下列求积公式中的特定参数,使其代数精度尽量高,并指明所构造出的求积公式所具有的代数精度: 101210121 12120 (1)()()(0)(); (2)()()(0)(); (3)()[(1)2()3()]/3; (4)()[(0)()]/2[(0)()]; h h h h h f x dx A f h A f A f h f x dx A f h A f A f h f x dx f f x f x f x dx h f f h ah f f h -----≈-++≈-++≈-++''≈++-?? ?? 解: 求解求积公式的代数精度时,应根据代数精度的定义,即求积公式对于次数不超过m 的多项式均能准确地成立,但对于m+1次多项式就不准确成立,进行验证性求解。 (1)若101(1) ()()(0)()h h f x dx A f h A f A f h --≈-++? 令()1f x =,则 1012h A A A -=++ 令()f x x =,则 110A h Ah -=-+ 令2 ()f x x =,则 3 221123 h h A h A -=+ 从而解得 01 1431313A h A h A h -?=?? ?=?? ?=?? 令3 ()f x x =,则 3()0h h h h f x dx x dx --==? ? 101()(0)()0A f h A f A f h --++= 故 101()()(0)()h h f x dx A f h A f A f h --=-++? 成立。 令4 ()f x x =,则

郑州大学数值分析重点考察内容及各章习题

《数值分析》 重点考察内容及各章作业答案 学院: 学号: 姓名:

重点考察内容 基本概念(收敛阶,收敛条件,收敛区域等), 简单欧拉法。 第一章基础 掌握:误差的种类,截断误差,舍入误差的来源,有效数字的判断。 了解:误差限,算法及要注意的问题。 第二章插值 掌握:Hermite插值,牛顿插值,差商计算,插值误差估计。 了解:Lagrange插值 第三章数据拟合 掌握:给出几个点求线性拟合曲线。 了解:最小二乘原理 第四章数值积分微分 掌握:梯形公式,Simpson公式,代数精度,Gauss积分,带权Gauss积分公式推导,复化梯形公式推导及算法。 了解:数值微分,积分余项 第五章直接法 掌握:LU分解求线性方程组,运算量 了解:Gauss消去法,LDL,追赶法 第六章迭代法 掌握:Jacobi,Gauss-Seidel迭代格式构造,敛散性分析,向量、矩阵的范数、谱半径 了解:SOR迭代 第七章Nolinear迭代法 掌握:牛顿迭代格式构造,简单迭代法构造、敛散性分析,收敛阶。 了解:二分法,弦截法 第八章ODE解法 掌握:Euler公式构造、收敛阶。 了解:梯形Euler公式、收敛阶,改进Euler公式 题目类型:填空,计算,证明综合题

第一章 误差 1. 科学计算中的误差来源有4个,分别是________,________,________,________。 2. 用Taylor 展开近似计算函数000()()'()()f x f x f x x x ≈+-,这里产生是什么误差? 3. 0.7499作 3 4 的近似值,是______位有效数字,65.380是舍入得到的近似值,有____几位有效数字,相对误差限为_______. 0.0032581是四舍五入得到的近似值,有_______位有效数字. 4. 改变下列表达式,使计算结果比较精确: (1)11,||1121x x x x --++ (2 ||1x (3) 1cos ,0,|| 1.x x x x -≠ (4)sin sin ,αβαβ-≈ 5. 采用下列各式计算61)时,哪个计算效果最好?并说明理由。 (1) (2 )99-3 )6 (3-(4 6. 已知近似数*x 有4位有效数字,求其相对误差限。 上机实验题: 1、利用Taylor 展开公式计算0! k x k x e k ∞ ==∑,编一段小程序,上机用单精度计算x e 的函数 值. 分别取x =1,5,10,20,-1,-5,-10,-15,-20,观察所得结果是否合理,如不合理请分析原因并给出解决方法. 2、已知定积分1 ,0,1,2,,206 n n x I dx n x ==+? ,有如下的递推关系 111 110 0(6)61666 n n n n n x x x x I dx dx I x x n ---+-===++-? ? 可建立两种等价的计算公式 (1) 1016,0.154n n I I I n -= -=取; (2) 12011),0.6n n I nI I n -=-=(取

数值分析第四章数值积分与数值微分习题答案

第四章 数值积分与数值微分 1.确定下列求积公式中的特定参数,使其代数精度尽量高,并指明所构造出的求积公式所具有的代数精度: 101210121 12120 (1)()()(0)(); (2)()()(0)(); (3)()[(1)2()3()]/3; (4)()[(0)()]/2[(0)()]; h h h h h f x dx A f h A f A f h f x dx A f h A f A f h f x dx f f x f x f x dx h f f h ah f f h -----≈-++≈-++≈-++''≈++-?? ?? 解: 求解求积公式的代数精度时,应根据代数精度的定义,即求积公式对于次数不超过m 的多项式均能准确地成立,但对于m+1次多项式就不准确成立,进行验证性求解。 (1)若101(1) ()()(0)()h h f x dx A f h A f A f h --≈-++? 令()1f x =,则 1012h A A A -=++ 令()f x x =,则 110A h Ah -=-+ 令2 ()f x x =,则 3 221123 h h A h A -=+ 从而解得 011431313A h A h A h -?=?? ? =?? ?=?? 令3 ()f x x =,则 3()0h h h h f x dx x dx --==? ? 101()(0)()0A f h A f A f h --++=

令4()f x x =,则 455 1012()5 2 ()(0)()3 h h h h f x dx x dx h A f h A f A f h h ---== -++=? ? 故此时, 101()()(0)()h h f x dx A f h A f A f h --≠-++? 故 101()()(0)()h h f x dx A f h A f A f h --≈-++? 具有3次代数精度。 (2)若 21012()()(0)()h h f x dx A f h A f A f h --≈-++? 令()1f x =,则 1014h A A A -=++ 令()f x x =,则 110A h Ah -=-+ 令2 ()f x x =,则 3 2211163 h h A h A -=+ 从而解得 1143 8383A h A h A h -?=-?? ? =?? ?=?? 令3 ()f x x =,则 22322()0h h h h f x dx x dx --==? ? 101()(0)()0A f h A f A f h --++=

《数值分析》杨大地-标准答案(第八章)

数值分析第8章 数值积分与数值微分 8.1 填空题 (1)n+1个点的插值型数值积分公式∫f(x)dx b a ≈∑A j n j=0f(x j )的代数精度至少是 n ,最高不超过 2n+1 。【注:第1空,见定理8.1】 (2)梯形公式有 1 次代数精度,Simpson 公司有 3 次代数精度。【注:分别见定理8.1,8.3】 (3)求积公式∫f(x)dx h 0≈h 2[f (0)+f (h )]+ah 2[f ′(0)?f ′(h)]中的参数a= 1/12 时,才能保证该求积公式的代数精度达到最高,最高代数精度为 3 。 解:令f(x)=1,x,x 2带入有, { h 2[1+1]+ah 2[0?0]=h h 2[0+h ]+ah 2[1?1]=12 (h 2)h 2[0+h 2]+ah 2[0?2h ]=13 (h 3) //注:x 的导数=1 解之得,a=1/12,此时求积公式至少具有2次代数精度。 ∴ 积分公式为:∫f(x)dx h 0≈h 2[f (0)+f (h )]+h 2 12[f ′(0)?f ′(h)] 令 f(x)= x 3带入求积公式有:h 2 [0 +h 3]+ h 212 [0?3h 2]=14 (h 4),与f(x)= x 4的定积分计算值1 4 (h 4)相等, 所以,此求积公式至少具有3次代数精度。 令f(x)= x 4带入求积公式有,h 2[0+h 4]+h 2 12[0?4h 3]=1 6(h 5),与f(x)= x 5的定积分计算值1 5(h 5)不相等,所以,此求积公式的最高代数精度为3次代数精度。 8.2 确定下列求积公式的求积系数和求积节点,使其代数精度尽量高,并指出其最高代数精度。 解题思路:按照P149 中8.3式进行求解,根据求积公式中未知量n 的数量决定代入多少f(x),当积分公式代入求积节点x n 的计算结果与定积分的计算结果一致,继续代入求积节点X n+1,,若计算结果与对应的定积分计算结果不一致时,求积公式拥有最高n 次的代数精度。 (1)∫f(x)dx 2h 0≈A 0f (0)+A 1f (h )+A 2f(2h) 解:令f(x)=1,x,x 2代入有,【注:本例中需求解A 0、A 1、A 2共3个未知量,故需3个相异求积节点f(x)】 {A 0+A 1+A 2=2h A 1h +A 22h =1 2(2h )2A 1h 2+A 2(2h )2=1 3(2h )3 求解得A 0=13h ,A 1=43h ,A 2=1 3h , ∴求积公式为:∫f(x)dx 2h 0≈13hf (0)+43hf (h )+1 3 hf(2h) ∵该求积公式对3个相异节点1,x,x 2均有余项E (f )=0, //注:参见P149定理8.1 ∴该求积公式至少具有2次代数精度。 令f(x)= x 3,代入求积公式有:4 3hh 3+1 3h (2h )3=4h 4 ∵函数f(x) = x 3的定积分结果为:∫x 3dx 2h 0=1 4(2h )4=4h 4 ,与求积公式计算值相等, ∴该求积公式具有3次代数精度。

数值分析第四版习题及答案

第四版 数值分析习题 第一章 绪 论 1. 设x >0,x 的相对误差为δ,求ln x 的误差. 2. 设x 的相对误差为2%,求n x 的相对误差. 3. 下列各数都是经过四舍五入得到的近似数,即误差限不超过最后一位的半个单位,试指 出它们是几位有效数字: *****123451.1021,0.031,385.6,56.430,7 1.0.x x x x x =====? 4. 利用公式求下列各近似值的误差限: ********12412324(),(),()/,i x x x ii x x x iii x x ++其中**** 1234 ,,,x x x x 均为第3题所给的数. 5. 计算球体积要使相对误差限为1%,问度量半径R 时允许的相对误差限是多少? 6. 设028,Y =按递推公式 1n n Y Y -=…) 计算到100Y .(五位有效数字),试问计算100Y 将有多大误差? 7. 求方程2 5610x x -+=的两个根,使它至少具有四位有效数字. 8. 当N 充分大时,怎样求 2 11N dx x +∞ +? ? 9. 正方形的边长大约为100㎝,应怎样测量才能使其面积误差不超过1㎝2 ? 10. 设 212S gt = 假定g 是准确的,而对t 的测量有±秒的误差,证明当t 增加时S 的绝对误 差增加,而相对误差却减小. 11. 序列 {}n y 满足递推关系1101n n y y -=-(n=1,2,…),若0 1.41y =≈(三位有效数字), 计算到 10y 时误差有多大?这个计算过程稳定吗? 12. 计算61)f =, 1.4≈,利用下列等式计算,哪一个得到的结果最好? 3 -- 13. ()ln(f x x =,求f (30)的值.若开平方用六位函数表,问求对数时误差有多大?若改用另一等价公式 ln(ln(x x =- 计算,求对数时误差有多大?

数值计算第四章课后习题答案

()()()()()()()()()收敛较慢 代入上式得:将解: 收敛速度次并分析该迭代公式的迭代的根求方程 取试用迭代公式∴≠<<*'*+++-='∴+*+*=*∴=+?+?? ? ??===++= =∴++= ==-++=++=++014.01022220||10 2202613381013202132020 132010212010220. 2.0 20102110220 4.1222 222212012123021x x x x x x x x x x x x x x x x x x x x x x x x k k k k k k k ?????? )))()()()[]()()[])49998.0cos 215.0cos 2 1,022,00cos 2 102 12,0210,2,0.cos 2 10sin 2 11,cos 2 113cos 2 12; 1.0cos 2 12.4120101==== ==->-=<-=-=>+='-===-+x x x x x x x f f x x x f x x f x x x f x x x x k k 则 取上有一个根在所以上在为单调递增函数故则令解: 位有效数字求出这些根,精确到用迭代公式分析该方程有几个根给定方程ππππ

500 .0105.0102.0||3412≈*?

线性方程组数值解法

. 计算法实验 题目:

班级:学号::

目录 计算法实验 (1) 1 实验目的 (3) 2 实验步骤 (3) 2.1环境配置: (3) 2.2添加头文件 (3) 2.3主要模块 (3) 3 代码 (3) 3.1主程序部分 (3) 3.2多项式程部分 (3) 3.3核心算法部分 (3) 3.4数据结构部分 (3) 4运行结果 (3) 4.1列主元高斯消去法运行结果 (3) 4.2LU三角分解法运行结果 (3) 4.3雅克比迭代法运行结果 (3) 边界情况调试 (3) 5总结 (3) 输入输出 (3) 列主元高斯消元法 (3) 雅克比迭代法 (3) 6参考资料 (3)

1 实验目的 1.通过编程加深对列主元高斯消去法、LU三角分解法和雅克比迭代法等求解多 项式程法的理解 2.观察上述三种法的计算稳定性和求解精度并比较各种法利弊 2 实验步骤 2.1环境配置: VS2013,C++控制台程序 2.2添加头文件 #include "stdio.h" #include "stdlib.h" #include "stdafx.h" #include 2.3主要模块 程序一共分成三层,最底层是数据结构部分,负责存储数据,第二层是交互部分,即多项式程部分,负责输入输出获得数据,最上层是核心的算法部分,负责处理已获得的数据。具体功能如下: ●数据结构部分 数据结构部分是整个程序的最底层,负责存储部分。因数组作为数据元素插入和删除操作较少,而顺序表空间利用率大且查看便,故此程序选用二维顺序表保存系数。数据结构文件中写的是有关其的所有基本操作以供其他文件调用。 ●多项式程部分

数值分析第四版习题和答案解析

第四版 数值分析习题 第一章绪论 1.设x>0,x的相对误差为δ,求的误差. 2.设x的相对误差为2%,求的相对误差. 3.下列各数都是经过四舍五入得到的近似数,即误差限不超过最后一位的半个单位,试指 出它们是几位有效数字: 4.利用公式求下列各近似值的误差限: 其中均为第3题所给的数. 5.计算球体积要使相对误差限为1%,问度量半径R时允许的相对误差限是多少 6.设按递推公式 ( n=1,2,…) 计算到.若取≈(五位有效数字),试问计算将有多大误差 7.求方程的两个根,使它至少具有四位有效数字(≈. 8.当N充分大时,怎样求 9.正方形的边长大约为100㎝,应怎样测量才能使其面积误差不超过1㎝ 10.设假定g是准确的,而对t的测量有±秒的误差,证明当t增加时S的绝对误差增加,而 相对误差却减小. 11.序列满足递推关系(n=1,2,…),若(三位有效数字),计算到时误差有多大这个计算过程 稳定吗 12.计算,取,利用下列等式计算,哪一个得到的结果最好 13.,求f(30)的值.若开平方用六位函数表,问求对数时误差有多大若改用另一等价公式 计算,求对数时误差有多大 14.试用消元法解方程组假定只用三位数计算,问结果是否可靠 15.已知三角形面积其中c为弧度,,且测量a ,b ,c的误差分别为证明面积的误差满足 第二章插值法 1.根据定义的范德蒙行列式,令 证明是n次多项式,它的根是,且 . 2.当x= 1 , -1 , 2 时, f(x)= 0 , -3 , 4 ,求f(x)的二次插值多项式. 3.

4.给出cos x,0°≤x ≤90°的函数表,步长h =1′=(1/60)°,若函数表具有5位有效数 字,研究用线性插值求cos x 近似值时的总误差界. 5.设,k=0,1,2,3,求. 6.设为互异节点(j=0,1,…,n),求证: i) ii) 7.设且,求证 8.在上给出的等距节点函数表,若用二次插值求的近似值,要使截断误差不超过,问使用函 数表的步长应取多少 9.若,求及. 10.如果是次多项式,记,证明的阶差分是次多项式,并且为正整数). 11.证明. 12.证明 13.证明 14.若有个不同实根,证明 15.证明阶均差有下列性质: i)若,则; ii)若,则. 16.,求及. 17.证明两点三次埃尔米特插值余项是 并由此求出分段三次埃尔米特插值的误差限. 18.求一个次数不高于4次的多项式,使它满足并由此求出分段三次埃尔米特插值的误差限. 19.试求出一个最高次数不高于4次的函数多项式,以便使它能够满足以下边界条件,,. 20.设,把分为等分,试构造一个台阶形的零次分段插值函数并证明当时,在上一致收敛到. 21.设,在上取,按等距节点求分段线性插值函数,计算各节点间中点处的与的值,并估计误 差. 22.求在上的分段线性插值函数,并估计误差. 23.求在上的分段埃尔米特插值,并估计误差. i) ii) 25.若,是三次样条函数,证明 i); ii)若,式中为插值节点,且,则. 26.编出计算三次样条函数系数及其在插值节点中点的值的程序框图(可用式的表达式). 第三章函数逼近与计算 1.(a)利用区间变换推出区间为的伯恩斯坦多项式. (b)对在上求1次和三次伯恩斯坦多项式并画出图形,并与相应的马克劳林级数部分和误 差做比较. 2.求证: (a)当时,. (b)当时,. 3.在次数不超过6的多项式中,求在的最佳一致逼近多项式.

线性方程组数值解法总结

好久没来论坛,刚刚发现以前的帖子现在那么火很欣慰,谢谢大家支持! 今天趁着不想做其他事情,把线性方程组的数值解法总结下,有不足的地方希望大神指教!数学建模中也会用到线性方程组的解法,你会发现上10个的方程手动解得话把你累个半死,而且不一定有结果,直接用matlab的函数,可以,关键是你不理解用着你安心吗?你怎么知道解得对不对? 我打算开个长久帖子,直到讲完为止!这是第一讲,如有纰漏请多多直接,大家一起交流!线性方程组解法有两大类:直接法和迭代法 直接法是解精确解,这里主要讲一下Gauss消去法,目前求解中小型线性方程组(阶数不超过1000),它是常用的方法,一般用于系数矩阵稠密,而有没有特殊结构的线性方程组。 首先,有三角形方程组的解法引入Gauss消去法,下三角方程组用前代法求解, 这个很简单,就是通过第一个解第二个,然后一直这样直到解出最后一个未知数,代码如下:前代法: function [b]= qiandai_method(L,b) n=size(L,1); %n 矩阵L的行数 for j=1:n-1 %前代法求解结果存放在b中 b(j)=b(j)/L(j,j); b(j+1:n)=b(j+1:n)-b(j)*L(j+1:n,j); end b(n)=b(n)/L(n,n); 上三角方程组用回代法,和前面一样就是从下面开始解x,代码: 后代法: function [y]=houdai_method(U,y) n=size(U,1); %n 矩阵L的行数 for j=n:-1:2 %后代法求解结果存放在y中 y(j)=y(j)/U(j,j); y(1:j-1)=y(1:j-1)-y(j)*U(1:j-1,j); end y(1)=y(1)/U(1,1); Gauss消去的前提就是这两个算法: 具体思想是把任何一个线性方程组的系数矩阵A,分解为一个上三角和一个下三角的乘积,即A=LU,其中L为下三角,U为上三角。 那么具体怎么做呢? 有高斯变换,什么是高斯变换?由于时间有限我不可能去输入公式,所以我用最平白的话把它描述出来。 你先想一下怎么把一个矩阵的某一列的从第j个分量后全部变0? 高斯变换就是通过每次一个矩阵Li把A的第i列对角线元素以下的都变为0,最后把这么多Li一次左乘起来就是一个矩阵L’=L(n-1)L(n-2)…L2L1,而L’A=U, 那么L=L’的转置,这样就得到了A得分解。 我们要求Ax=b A=LU

线性方程组的数值解法

第三章线性方程组地数值解法 范数 (1> 常用范数 ① 向量 1- 范数: ② 向量 2- 范数: ③ 向量∞- 范数: ④ 向量 p- 范数: 向量1- 范数,向量2- 范数,向量∞- 范数实际上为任意 p- 范数地特例. (2> 矩阵范数 设,则 (1>,A地行范数 (2>,A地列范数 (3>,A地 2- 范数,也称谱范数 (4>, F- 范数 其中指矩阵地最大特征值 (3>谱半径(用于判断迭代法地收敛值> 设为矩阵A地特征值,则

称为A地谱半径 谱半径小于任何半径,若,则 (4>设A为非奇异矩阵,称 为A地条件数 矩阵地条件数与范数选取有关,通常有 显然当A对称时 直接法 Gauss消去法 ①Gauss顺序消去法 对线性方程组Ax=b,设,按顺序消元法,写出增广矩阵(A┆b>第一步,写出,将2~n行中地变为0 第k步,写出,将k+1~n行中地变为0 具体步骤可参照下面地例题 例5:用Gauss消去法解方程组

解: Guass列主元消去法 消去过程与Guass消元法基本相同,不同地是每一步消元时,都要将所选到地绝对值最大元素作为主元. 具体分析参见习题详解1 ②矩阵三角(LU>分解法 基本思想:将Ax=b化为LUx=b,令Ux=y 可得Ly=b,Ux=y,相当于先求出y,再求出x 其中,L,U分别为下三角矩阵和上三角矩阵 若L为单位下三角矩阵,则称为Doolittle分解。若U为单位上三角矩阵,则称为Crout分解. ③矩阵Doolittle分解法

计算公式 具体解题见习题详解2 注意计算顺序,先行再列,用简图表示为 虚线上地元素为对角元,划为行元. ④ 分解法 计算公式

最新(完美版)第八章习题答案_数值分析

第八章习题解答 3、设方程()0f x =有根,且'0()m f x M <≤≤。试证明由迭代格式1()k k k x x f x λ+=- (0,1,2,)k =产生的迭代序列{}0k k x ∞=对任意的初值0(,)x ∈-∞+∞,当20M λ<<时,均收敛于方程的根。 证明: 设()()x x f x ?λ=-,可知()x ?在(,)-∞∞上可导 对于任意给定的λ值,满足条件'0()m f x M <≤≤时 (1)''()1()x f x ?λ=- 则1'()11M x m λ?λ-≤≤-< 又20M λ<<,M>0 则02M λ<<时,11M λ-<- 所以11'()11M x m λ?λ-<-≤≤-< 若令max{1,1}L M m λλ=--,则可知'()1x L ?≤< (2)由0()(0)'()(0)'()x x x dx x ?????ε=+=+? 则()lim 1x x L x ?→∞??≤< ??? 所以,存在一个数a ,当x a >时,()x x ?< 同时,()x ?在[,]a a -内有界,即存在0b >使得[,]x a a ?∈-,()x b ?< 我们选取 max{,}c a b =,则对任意x 有0()max{,}x c x ?< 则对给定的任意初值0x ,设0max{,}d c x = 则0[,]x d d ∈-,于是在区间[,]d d -上有()x d ?< 即满足映内性 有(1)、(2)可知,()x ?满足收敛定理 迭代序列0{}k k x ∞=收敛于方程的根 6. 给出计算...222+++=x 的迭代格式,讨论迭代格式的收敛性,并证明2=x 解:构造迭代格式10,1,2,k x k +==??? 2k x ≤ 令()x ?=x ?∈?时,()x ??∈? '() x ?=,当x ?∈?时,1 '()12x ?<<

数值分析课后参考答案08

第八章习题解答 1、已知方程3210x x --=在 1.5x =附近有根,将方程写成以下三种不同的等价形式: ①2 11x x =+ ;②x = x =试判断以上三种格式迭代函数的收敛性,并选出一种较好的格式。 解:①令121()1x x ?=+ ,则'132()x x ?=-,' 13 2(1.5)0.592611.5?=≈<,故迭代收敛; ②令2()x ?=2' 2 32 2()(1)3 x x x ?-=+,'2(1.5)0.45581?≈<,故迭代收敛; ③令3()x ?= '3()x ?=,' 3(1.5) 1.41421?≈>,故迭代发散。 以上三中以第二种迭代格式较好。 2、设方程()0f x =有根,且'0()m f x M <≤≤。试证明由迭代格式1()k k k x x f x λ+=- (0,1,2,)k = 产生的迭代序列{}0k k x ∞ =对任意的初值0(,)x ∈-∞+∞,当2 0M λ<< 时,均收敛于方程的根。 证明:设()()x x f x ?λ=-,则''()1()x f x ?λ=-,故'1()1M x m λ?λ-<<-,进而可知, 当2 0M λ<< 时,'1()1x ?-<<,即'()1x ?<,从而由压缩映像定理可知结论成立。 3、试分别用Newton 法和割线法求以下方程的根 cos 0x x -= 取初值010.5,4 x x π == ,比较计算结果。 解:Newton 法:1230.75522242,=0.73914166,=0.73908513x x x =; 割线法:23450.73638414,=0.73905814,=0.73908515,=0.73908513x x x x =; 比较可知Newton 法比割线法收敛速度稍快。 4、用嵌套算法求下列方程的根 ①32250 (1,4)x x x --=∈,取初值0 2.5x =; ②3210x x x ---=,求方程的正根,取初值0 1.5x =。 解:①依代数方程求根的嵌套算法 ()0 1() (0,1,2,) k k k k b x x k c +=-= 其中()() 00 k k b c 与分别由 1(1,2,,1,0) n n i i k i b a b a x b i n n +=?? =+=--?

数值分析习题集及答案

数值分析习题集 (适合课程《数值方法A》和《数值方法B》) 长沙理工大学 第一章绪论 1.设x>0,x的相对误差为δ,求的误差. 2.设x的相对误差为2%,求的相对误差. 3.下列各数都是经过四舍五入得到的近似数,即误差限不超过最后一位的半个单位,试指 出它们是几位有效数字: 4.利用公式求下列各近似值的误差限: 其中均为第3题所给的数. 5.计算球体积要使相对误差限为1%,问度量半径R时允许的相对误差限是多少? 6.设按递推公式 ( n=1,2,…) 计算到.若取≈(五位有效数字),试问计算将有多大误差? 7.求方程的两个根,使它至少具有四位有效数字(≈. 8.当N充分大时,怎样求? 9.正方形的边长大约为100㎝,应怎样测量才能使其面积误差不超过1㎝? 10.设假定g是准确的,而对t的测量有±秒的误差,证明当t增加时S的绝对误差增加,而 相对误差却减小. 11.序列满足递推关系(n=1,2,…),若(三位有效数字),计算到时误差有多大?这个计算过程 稳定吗? 12.计算,取,利用下列等式计算,哪一个得到的结果最好? 13.,求f(30)的值.若开平方用六位函数表,问求对数时误差有多大?若改用另一等价公式 计算,求对数时误差有多大? 14.试用消元法解方程组假定只用三位数计算,问结果是否可靠? 15.已知三角形面积其中c为弧度,,且测量a ,b ,c的误差分别为证明面积的误差满足 第二章插值法 1.根据定义的范德蒙行列式,令 证明是n次多项式,它的根是,且 .

2.当x= 1 , -1 , 2 时, f(x)= 0 , -3 , 4 ,求f(x)的二次插值多项式. 3. 4.给出cos x,0°≤x ≤90°的函数表,步长h =1′=(1/60)°,若函数表具有5位有效数 字,研究用线性插值求cos x 近似值时的总误差界. 5.设,k=0,1,2,3,求. 6.设为互异节点(j=0,1,…,n),求证: i) ii) 7.设且,求证 8.在上给出的等距节点函数表,若用二次插值求的近似值,要使截断误差不超过,问使用函 数表的步长应取多少? 9.若,求及. 10.如果是次多项式,记,证明的阶差分是次多项式,并且为正整数). 11.证明. 12.证明 13.证明 14.若有个不同实根,证明 15.证明阶均差有下列性质: i)若,则; ii)若,则. 16.,求及. 17.证明两点三次埃尔米特插值余项是 并由此求出分段三次埃尔米特插值的误差限. 18.求一个次数不高于4次的多项式,使它满足并由此求出分段三次埃尔米特插值的误差限. 19.试求出一个最高次数不高于4次的函数多项式,以便使它能够满足以下边界条件,,. 20.设,把分为等分,试构造一个台阶形的零次分段插值函数并证明当时,在上一致收敛到. 21.设,在上取,按等距节点求分段线性插值函数,计算各节点间中点处的与的值,并估计误 差. 22.求在上的分段线性插值函数,并估计误差. 23.求在上的分段埃尔米特插值,并估计误差. i) ii) 25.若,是三次样条函数,证明 i); ii)若,式中为插值节点,且,则. 26.编出计算三次样条函数系数及其在插值节点中点的值的程序框图(可用式的表达式). 第三章函数逼近与计算 1.(a)利用区间变换推出区间为的伯恩斯坦多项式. (b)对在上求1次和三次伯恩斯坦多项式并画出图形,并与相应的马克劳林级数部分和误

数值分析习题第四章

第四章 习题 1.确定下列求积公式中的待定参数,使其代数精度尽量高,并指明所构造出的求积公式所具有的代数精度: (1)()()()()? --++-≈h h h f A f A h f A dx x f 1010; (2)()()()()? --++-≈h h h f A f A h f A dx x f 221010; (3)()()()()[]3/3211 121?-++-≈x f x f f dx x f ; (4)()()()[]()()[]h f f ah h f f h dx x f h '0'2/020 +++≈? 解:(1)求积公式中含有三个待定参数,即101A A A ,,-,将()21x x x f ,,=分别代入求积公式,并令其左右相等,得 ()()??? ???? =+=+-=++---3 1121 110132 02h A A h A A h h A A A 解得h A h A A 34 31011===-,。 所求公式至少具有2次代数精度。又由于 ()() ()() 4 4 4 3 33 3 3 33h h h h dx x h h h h dx x h h h h ? ?--+ -≠ +-≈ 故()()()()? --++-≈h h h f A f A h f A dx x f 1010具有三次代数精度。 (2)求积公式中含有三个待定系数:101A A A ,,-,故令公式对()2 1x x x f ,,=准确成立,得()()??? ???? =+=+-=++---3 1121110131604h A A h A A h h A A A ,解得h h h A h A h A A 34 316424381011-=- =-===-, 故()()()[]()03 43 822hf h f h f h dx x f h h - +-≈ ? - 因()?-=h h dx x f 220 而 ()() []03 83 3 =+-h h h 又[ ]4 45 5 6224 3 83 165 2h h h h h dx x h h += ≠= ? -

计算方法实验报告-线性方程组的数值解法

重庆大学 学生实验报告实验课程名称计算方法 开课实验室DS1421 学院年级专业 学生姓名学号 开课时间至学年第学期

1.实验目的 (1)高斯列主元消去法求解线性方程组的过程 (2)熟悉用迭代法求解线性方程组的过程 (3)设计出相应的算法,编制相应的函数子程序 2.实验内容 分别用高斯列主元消去法 ,Jacobi 迭代法,Gauss--Saidel 迭代法,超松弛迭代法求解线性方程组 ????? ???????-=????????????????????????------725101391444321131243301024321x x x x 3.实验过程 解:(1)高斯列主元消去法 编制高斯列主元消去法的M 文件程序如下: %高斯列主元消元法求解线性方程组Ax=b %A 为输入矩阵系数,b 为方程组右端系数 %方程组的解保存在x 变量中 format long;%设置为长格式显示,显示15位小数 A=[2,10,0,-3;-3,-4,-12,13;1,2,3,-4;4,14,9,-13] b=[10,5,-2,7]' [m,n]=size(A); %先检查系数正确性 if m~=n error('矩阵A 的行数和列数必须相同'); return; end if m~=size(b) error('b 的大小必须和A 的行数或A 的列数相同'); return; end %再检查方程是否存在唯一解 if rank(A)~=rank([A,b]) error('A 矩阵的秩和增广矩阵的秩不相同,方程不存在唯一解'); return; end c=n+1; A(:,c)=b; %(增广) for k=1:n-1

数值分析第四章习题

第四章 习题 1. 采用数值计算方法,画出dt t t x y x ?= 0sin )(在]10 ,0[区间曲线,并计算)5.4(y 。 〖答案〗 1.6541 2. 求函数 x e x f 3sin )(=的数值积分?=π 0 )(dx x f s ,并请采用符号计算尝试复算。 〖答案〗 s = 5.1354 Warning: Explicit integral could not be found. > In sym.int at 58 s = int(exp(sin(x)^3),x = 0 .. pi) 3. 用quad 求取dx x e x sin 7.15? --ππ的数值积分,并保证积分的绝对精度为910-。 〖答案〗 1.08784943754779 4. 求函数 5.08.12cos 5.1)5(sin )(20 6.02++-=t t t e t t f t 在区间]5,5[-中的最小值点。 〖答案〗

最小值点是 -1.28498111480531 相应目标值是 -0.18604801006545 5. 设 0)0(,1)0(,1)(2)(3)(22===+-dt dy y t y dt t dy dt t y d ,用数值法和符号法求5.0)(=t t y 。 〖答案〗 数值解 y_05 = 0.78958020790127 符号解 ys = 1/2-1/2*exp(2*t)+exp(t) ys_05 = .78958035647060552916850705213780 6. 求矩阵b Ax =的解,A 为3阶魔方阵,b 是)13(?的全1列向量。 〖答案〗 x = 0.0667 0.0667 0.0667 7. 求矩阵b Ax =的解,A 为4阶魔方阵,b 是)14(?的全1列向量。 〖答案〗 解不唯一 x = -0.0074 -0.0809 0.1397 0.0662 0.0588 0.1176 -0.0588

线性方程组的数值解法及其应用

线性方程组的数值解法及其应用 一、问题描述 现实中的问题大多数是连续的,例如工程中求解结构受力后的变形,空气动力学中计算机翼周围的流场,气象预报中计算大气的流动。这些现象大多是用若干个微分方程描述。用数值方法求解微分方程(组),不论是差分方法还是有限元方法,通常都是通过对微分方程(连续的问题,未知数的维数是无限的)进行离散,得到线性方程组(离散问题,因为未知数的维数是有限的)。因此线性方程组的求解在科学与工程中的应用非常广泛。 经典的求解线性方程组的方法一般分为两类:直接法和迭代法。 二、基本要求 1)掌握用MATLAB软件求线性方程初值问题数值解的方法; 2)通过实例学习用线性方程组模型解决简化的实际问题; 3)了解用高斯赛德尔列主元消去法和雅可比迭代法解线性方程组。 三、测试数据 1) 直接法:A=[0.002 52.88;4.573 -7.290]; b=[52.90;38.44]; 2) 迭代法:A=[10 -1 -2;-1 10 -2;-1 -1 5]; b=[7.2;8.3;4.2]; 四、算法程序及结果 1) function[RA,RB,n,x]=liezy1(A,b) B=[A b];n=length(b);RA=rank(A); RB=rank(B);zhica=RB-RA; if zhica>0, disp('因为RA~=RB,所以此方程组无解.') return

if RA==RB if RA==n disp('因为RA=RB=n,所以此方程组有唯一解.') x=zeros(n,1);C=zeros(1,n+1); for p=1:n-1 [Y,j]=max(abs(B(p:n,p)));C=B(p,:); B(p,:)=B(j+p-1,:);B(j+p-1,:)=C; for k=p+1:n m=B(k,p)/B(p,p); B(k,p:n+1)=B(k,p:n+1)-m*B(p,p:n+1); end end b=B(1:n,n+1);A=B(1:n,1:n);x(n)=b(n)/A(n,n); for q=n-1:-1:1 x(q)=(b(q)- sum(A(q,q+1:n)*x(q+1:n)))/A(q,q); end else disp('因为RA=RB> b=[52.90;38.44]; >> [RA,RB,n,x]=liezy1(A,b) 因为RA=RB=n,所以此方程组有唯一解. RA = 2 RB = 2

相关主题
文本预览
相关文档 最新文档