当前位置:文档之家› 第3章 线性方程组的直接解法

第3章 线性方程组的直接解法

第3章 线性方程组的直接解法
第3章 线性方程组的直接解法

第三章 线性方程组的数值方法

在自然科学和工程技术中很多问题的解决常常归结为求解线性代数方程组.

??

???

??=++=++=++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 22112222212111212111

当它的系数行列式不为零时,由克莱姆法则可以给出方程组的唯一解,但是这一理论上完 善

的结果,在实际计算中可以说没有什么用处。因此如何建立在计算机上可以实现的有效而实用的解法,具有极其重要的意义。这些方法大致可分为两类:一类是直接法,就是经过有限步算术运算,可求得方程组精确解的方法(如果每步计算都是精确进行的话);另一类是迭代法,就是用某种极限过程去逐步逼近其精确解的方法.

本章将阐述这两类算法中最基本的高斯消元法及其变形、矩阵分解法、雅可比迭代法、高斯 -塞德尔迭代法等.

第一节 高斯消元法

一 回代过程

设系数矩阵为n 阶上三角矩阵的线性方程组

(1)

2222211212111???

?

?

??==+=++n

n nn n n n n b x a b x a x a b x a x a x a

如果a ,...a ,a nn 2211都

(1)自下而上可以逐次求出x ,...x ,x n n 11-为

()

21211

?

??

???

?--=∑-==+=,...n ,n k ,a x a b x a b x kk j

n k j kj k k nn n n

按上述公式求方程组(1) 解的过程称为回代过程.

不难看出,解方程组(1)共需()121+n n 次加法和()

121-n n 次乘法.这恰好是用一个n 阶三

角方阵乘n 维向量所需的运算次数。当n 较大时,n n >>2

,同时加法运算速度远快于乘法的运

算速度,所以,可用n 221次乘法来近似表示回代过程的运算量.

二 消元过程

设有线性方程组

()322112

222212*********??

???

?

?=++=++=++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 为了符号统一,记()()

()n ...,j ;n ,...,i b a ,a a i in ij ij

2121010====+, 则原方程组改写成

()()()()

()()()()()()()()()

301

020*******

2

022*********

10120121011

'

nn

n

nn n n n )n n

n n a x a x a x a a x a x a x a a x a x a x a ??

?????=++=++=+++++

如果()

0011≠a ,那么就可以保留其中第一个方程并利用它分别与其余方程消去第一个未知

量.令

()

()n

,..,,i ,a a l i i 32011

011==

()4

则以

l i 1

-乘第一个方程加到第

i

个方程中,就把方程组

()

3'

化为

()()()

()()()

()()()()

()

511

121211212212201

10120121011

??

?????=+=+=+++++a x a x a a x a x a a x a x a x a nn n

nn n n n

n n n n

其中

()()()1323201101+==-=n ,...,j ,n ,...,i ,

a l a a j i ij ij ()6

由方程组(3′)化为(5)的过程中,元素()a 011起着特殊的作用,特把元素()a 011称为主元素.

如果方程组(5)中()0122≠a , 则以()

a 122为主元素,并利用类似的方法消去第n ,...,43个方程

中的第二个未知量,即令

()

()n ,..,,i ,

a a l i i 4312212

2== ()7

则以l i 2-乘以第二个方程加到第i 个方程中,于是得到新的方程组

()()()()()()()()()

()()()

()()()

()

8212323213233233112123123212201

101301320121011??

??

??

??

?=+=++=+++=++++++++a x a x a a x a ....x a a x a x a x a a x a x a x a x a nn n nn n n n n n n n n n n

其中

()()()13312212+==-=n ,...j ,

n ,...i ,

a l a a j i ij ij ()9

重复上述过程

1-n 步后,我们得到原方程组等价的系数矩阵为三角形方阵的方程组

()()()()()()()()()

()()()

()()

()

10111213233233112123123212201

101301320121011??

??

??

??

?==++=+++=++++-+-+++a x a a x a ....x a a x a x a x a a x a x a x a x a n nn n n nn n n n n n n n n n

其中

()

()

a a l k kk k ik

ik 11--= ()11

()()()???

??+++=++=-=-=--121211

2111n ,...k ,k j ;n ,...k ,k i n ,...,k a l a a k kj ik k ij k ij

()12

把方程组(3)逐步化为方程组(10)的过程称为消元过程.最后,由回代过程可求得原方程组的

解为

()

()

()()

()

???

?

???--=∑-==-+=--+--+1

22111

111111,,...n .n k ,a x a a x a a x k kk n k j j k kj

k kn k n nn

n nn n ()13

这种通过消元、再回代的求解方法称为高斯(Gauss)消元法(其特点是始终消去主对角线下方

的元素).

注意到,上标k 仅仅用来识别一次消元前后系数矩阵的变化,而()

a k ij 变为()

a k ij 1+后,()

a k ij

再使用,所以在计算机存贮中只要用()

a k ij

1+冲掉()

a k ij

即可;另一方面,主元素所在列中主元素下

面的各元素在消元过程中必然是零,而且在后面将要列出的回代过程中也不用它们,所以没有必要通过计算得到它们,从而在消元过程中

j 就可从1+k 开始,这样做还可以节约计算时间.

例1 用高斯消元法求解方程组

???

??=++=-+=++5

2213614282321321321x x x x x x x x x

解 用第一个方程消去后两个方程中的x 1,得 ??

?

??-=-=-=++9962214282232321x x x x x x 再用第二个方程消去第三个方程中的x 2,得

??

?

??=-=-=++18962214282332321x x x x x x 最后,经过回代求得方程组的解为

5

228141

2

262918

3

213

23=--==+=-=-=

x x x x x x 三 高斯消元法的条件与运算量

从消元过程可以看出,对于n 阶线性方程组,只要各步主元素不为零,即()

01≠-a k kk ,经过

1-n 步消元,就可以得到一个等价的系数矩阵为上三角形阵的方程组,然后再利用回代过程可

求得原方程组的解.因此,有下面结论.

定理1 如果在消元过程中A 的主元素不为零,即()

01≠-a k kk (k=1,2,…,n),则可通过高斯

消元法求出b Ax =的解.

矩阵A 在什么条件下才能保证()01≠-a k kk ,下面的定理给出了这一条件.

引理 在高斯消元过程中系数矩阵A 的主元素不为零,即()

01≠-a k kk (k=1,2,…,n)的充要

条件是矩阵A 的各阶顺序主子式不为零,即

n

...,k ,a ...a .........a ...a D a D kk

k k

k 3200

1111111=≠=≠=

证明 首先利用归纳法证明引理的充分性,显然 ,当1=n 时,引理的充分性是成立的,现假设引理对1-n 时也成立,求证引理对n 也成立,由归纳法假设有

()

01≠-a k kk , 121-=n ...,k

于是可用高斯消元法将

A 化为

????????

?

?→--------)n (nn

)n (n ,n )n (n n

)

(n )(n )()(n )(n )()

(a a a a a a a a a a A 12121

11211

2

1220101

1012011

()()

a a D 011

0111==

()

()()

()()a a a a a D 122

011122

012

0112

==

()()()a ...a a a a a a a a a a D n nn

)n (nn )

(n )(n )()(n )(n )

()(n 112201111211212201011012011

----=???

?????

??=

由假设,n ,...,k ,D k 210=≠所以有()

01≠-a n nn .

反过来,由上式可知必要性是显然的.

定理2 如果n 阶矩阵A 的所有顺序主子式均不为零,即,n ,...,k ,D k 210=≠则可通过

高斯消元法求出的解.

下面考虑求解(3)的高斯消元法的运算量.消元过程需要除法

()()()

12

11221-=+++-+-n n ...n n

次,而需要的乘法和加法的次数都是

()()()()

131

122112-=?++-?-+-?n n ...n n n n

加上回代过程的运算次数,共需乘、除法的次数为

()()()()1331

12113112122-+=++-+-n n n n n n n n n

加、减法的次数为

()()()53261

12113122-+=-+-n n n n n n n 当n 较大时,n n 2

3>>,消元过程的运算量远大于回代过程,从而,高斯消元法中乘除法的次数

与加减法的次数近似为n

331.

第二节 第二节 高斯主元素消元法

一 问题的提出

由高斯消元法可知,在消元过程中如果出现()

01=-a k kk 的情况,这时消元法将无法进行;另

一方面,即使主元素()01≠-a k kk ,但很小时,用其作除数,会导致其它元素数量级的严重增长和

舍入误差的扩散,最后也使得计算结果很不可靠.

例1 例1 解方程组

??

?=+=+0000100001000010001200003000302121.x .x ..x .x .

(它的精确解为

323121=

=x ,x )

解法一 用高斯消元法求解(取5位有效数字),用第一个方程消去第二个方程中的x 1得

?

?

?-=-=+0666609999000120000300030221.x ..x .x . 因而再回代,得

0003006667000030001206667

99990

666612=?-=≈--=

....x ...x 显然,这个解与精确解相差太远,不能作为方程组的近似解其原因是我们在消元过程中使用了小

主元素,使得约化后的方程组中的元素量级大大增长,再经舍入使得计算中舍入误差扩散,因此经消元后得到的三角形方程组就不准确了.为了控制舍入误差,我们采用另一种消元过程. 解法二 为了避免绝对值很小的元素作为主元,先交换两个方程,得到

??

?=+=+0001200003000300000

100001000012121.x .x ..x .x .

消去第二个方程中的x 1,得

?

?

?==+9998199972000010000100001221.x ..x .x .

再回代,解得

()333306667000001000016667

09997

29998

112....x ...x =?-=≈=

结果与准确解非常接近.这个例子告诉我们,在采用高斯消元法解方程组时,用做除法的小主元素可能使舍入误差增加,主元素的绝对值越小,则舍入误差影响越大。故应避免采用绝对值小的主元素,同时选主元素尽量的大,这样可使高斯消元法具有较好的数值稳定性.这就是主元素消元法的基本思想.

二 完全主元素消元法

设n 阶线性方程组

b Ax = ()1

的系数矩阵A 的秩为n ,即()n A R =,记n ,...,i ,b a i in 211==+, 则方程组(1)的增广矩阵为

()?

????????

???=+++a a ...a a ......a a ...a a a a ...a a A nn nn n n n n in n ~12

112222

211112110 ()2 首先在

A 中选取绝对值最大的元素作为主元素,如

|

a |max |a |ij n

j n

i j i ≤≤≤≤=111

1

然后交换

()

0A

~

中的第1行与第i 1行,第1列与第

j 1列,经第1次消元计算,得

()0A ~→()

1A

~

仍记

()?

????????

??

?=+++a a ...a ......a a ...a a a ...a a A nn nn n n n in n ~1212222

1112111 其次,在()

1A

~中的第2行至第n 行及第2列至第n 列选取绝对值最大的元素作为主元素,如

|

a |max |a |ij n

j n i j i ≤≤≤≤=222

2

然后交换()

1A

~

中的第2行与第i 2行,第2列与第

j 2列,经第2次消元计算,得

()1A ~→ ()

2A

~

仍记

()

???

?

?

?

??

???

???

??=++++a a ...a ............a a ...a a a ...a a a a ...a a a A nn nn n n n n n n n ~1313333

12223

221111312112

重复上述过程,假设已完成了第1-k 次消元,则在()

1-k ~A 的第k 行到第n 行,第k 列到第n 列

中选取绝对值最大的元素作为主元素,如 交换()

1-k ~A 的第k 行到第i k 行,第k 列到j k 列,将作为主元素,再进行消元计算.最后,将原

方程组化为

??????

?

??

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

?+++a ...a a y y y y a ....

...a ...a a ...a a nn n n nn n n 11

211432122211211 ()4 其中为y ,...,y ,y n 2

1未知量x ,...,x ,x n 21调换次序后的形式,例如x y i 1

1=. 最后,通过(4)进

行回代可求得原方程组的解.

这种通过(3)选主元素进行消元过程,然后回代求解的方 法称为高斯完全主元素消元法.

注意到,与普通的高斯消元法相同,在每次消元的过程中可用约化后新的a ij 冲掉约化前旧

()

3|

a |max |a |ij n

j k n i k j i k

k ≤≤≤≤=

的a ij ,在回代过程中同样可用代入后新的常数项冲掉代入前旧的常数项,并以此表示未知量.这样可以节省计算机的存贮空间. 三 列主元素消元法

完全主元素消元法在选主元素时要花费较多的机器时间,下面我们介绍另一种常用的方法,即 主元素消元法.它仅考虑依次按列选主元素,然后换行使之变到主元位置上,再进行消元计算.显然,在完全主元素消元法中用

代替(3)且不进行列交换,即得到列主元素消元法.

不难看出,只要线性方程组的系数行列式不为零,则总可由列主元素消元法求解,同时列主元素消元法 既继承了完全主元素消元法具有舍入误差小的优点,保证了一定的精度要求;又耗费机时比完全主元素消元法少很多的特点,故列主元素消元法是常采用的方法之一。最后,值得指出的是矩阵行的互换过程可以用行指示向量表示,增广矩阵元素的物理位置没有必要改变,这样可以节省机器执行时间.另外,我们还应该指出与列主元素对应地可进行行主元素消元法。

例2 例2 求解线性方程组

??????

????=????????????????????--000300020001643507210002623471230001000300020010321...x x x ......... (用4位浮点数进行计算,精确解舍入到4位有效数字为

()

T

.,.,.x 3675005104049040--=).

解法一 用列主元素消元法求解

???

??

?????--=000364350721000200026234712300010001000300020010............A ~

??

?

?

??????-→??

?

??

?????--→0021003300120

50008011176300003643507210002000100030002001000026234712300010003643507210002......................

?????

?????-→687086810050008011176300003643507210002.........

500000002000121...l =--=,000500002001031...l -=-=,6300

01763001232...l ==

回代计算解为

[]

T

*.,.,.x 3678005113049900--=

解法二 用完全主元素消元法求解

()

511|

a |max |a |)

k (lk n

l k )k (k i k

-≤≤-=

????

?????

???--→?

?

???????

???--=??????01230001001000020003000200017123623400030002072164350321000364350721000200026234712300010001000300020010........................I A ????

?????

???---→????

?????

???---→01233650743000457063808342000030002072164350123596006514301045706380834200003000207216435...................

81906435623421...l ==,53206435000331...l ==,505

0834*******...l ==

回代计算得

()

T

.,.,.y 4910051103670-=*

从而原方程的解为

()

T

.,.,.x 367005104910--=*

第三节 高斯—若当消元法

高斯消元法始终是消去对角线下方的元素,如果在每次消元过程中,首先将主元素化为1, 并消去对角线上方与下方的元素,这种方法称为高斯—若当(Gauss-Jordan)消元法.它不需要回代过程即可求得线性方程组的解.

例1 用高斯—若当消元法求解线性方程组

???

??=+-=-+=++5

2213614282321321321x x x x x x x x x

解 方程组的增广矩阵经高斯—若当消元法,得

???

??

?????---→??????????--=90906220714152121316114282A

??????????-→??????????---→2100101050011890031109501

故原方程的解为

()

T

,,x 215-=*

设用高斯—若当消元法已完成k 步,于是线性方程组

b Ax =化为等价方程组()

()b x A k k =,其中

()()

()()

()

()

()

()

()()()()()

()

()?????????

????

?????=+++++++b a ...

a .........

......b a ...a ...b a ...

a ...............

b a ...a ...b A k n k nn

k nk k k k n

k k k k k k k kn

k kk k k n k k k k 1

11111

11110

00100

1

满足

()

()

a a l k kk

k ik

ik 11--=,

()11121n

,k ,k ,...,i +-=

()()

()()

2111,n ,...k j ,a a a k kk

k ik k ij +==--

()

()()()

311,

a b b k kk

k k k k --=

()()()

()n

,...k ,k j ,

n ,...k ,k ,...i ,a l a a k kj ik k ij k ij 21411111++=+-=-=--

()()()

()

511111,

n ,...k ,k ,...i ,b l b b k k ik k i k i +-=-=--

n ...,,k 21=

n 次消元后,得原方程组的解为

()

()621n ,...,,i ,

b x n i i ==

与高斯消元法相同,高斯—若当消元法也可进行全主元素消元法及列主元素消元法.

初看起来,似乎高斯—若当消元法比高斯消元法好,然而只要我们稍作分析就会发现它的运算量比高斯消元法要大.

使用公式(1)—(5),对每一个k 需要()()11+-+-k n n 次除法, ()()

11+--k n n 次乘法,及

()()11+--k n n 次减法,故乘除法总运算量是

()()()()[]()

72

32111112

31n n n k n n k n n n

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

加减法总运算量是

()()[]()821

211131n

n k n n n

k -=∑+--=

在第二节中我们曾指出,高斯消元法的运算量,乘除法次数为n n

n 313

12

3-+,加减法的次数为n

n n 65213

123-+,从而,高斯—若当消元法比高斯消元法的运算量乘除法多n n n 32216123-+次,加减法多n n n 31

216123+-次。当n 值较大时,高斯消元法比高斯

—若当消元法节省n 361次乘除法和加减法,这个运算量是十分可观的.

二 逆矩阵

高斯—若当消元法对求 一个矩阵的逆矩阵,或对求解仅常数项不同的很多方程组及矩阵方程是非常有用的. 求矩阵A 的逆矩阵A

1

-,即求n 阶矩阵X ,使I AX n =,其中I n 为n 阶单位矩阵. 将

矩阵分块

()()()()x ,...x ,x X n 21= ()e ,...e ,e I n n 21=

于是,求解I AX n =等价于求解n 个方程组

()n ,...,,j ,e x A j j 21==

由线性代数理论,我们有下面结论.

定理 设A 为非奇异矩阵,方程组I AX n =的增广矩阵为()I A C n =,如果对C 应用

高斯-若当方法化为()B I n ,则

.B A =-1

例2 例2 用高斯—若当消元法求

???

??

?????=563452231A

的逆矩阵

A

1

-.

()???

??

?????==1005630104520012313I |A C ()9103130012010001231??????????-----→

()

10133100012010035201??????????----→

()

11133100012010231001??????????----→

所以

???

???????----=-1330122311A

为了节省存储单元,可不必将单位矩阵存放起来.作为第一步结果的式(9)中第1列已无用

处,而第4列又相当于逆矩阵所求第1列的中间结果,把它移到第1列不影响简化过程的实质.而且第5、6两列的常数项可取消,它们对简化也无实质影响,所以,最终按原位记法(9)式的结果可存放为

??????????-----133012231

同理,式(10)中的()n n 2?阶矩阵将第4列移到第1列,第5列移到第2列,取消第6列,

则按原位记法为

??????????----13301223

5 式(11)的原位结果为

??????????----133012231

即为我们所要求的逆矩阵A 1

-,所以在计算中求逆矩阵的过程可简记为

???

???????-----→??????????=133012231

563452231A → ??????????----133012235→??

???

?????----133012231=A 1

- 一般地,逆矩阵的计算公式为

()

12111n

,k ,k ,...,j ,a a a kk kj '

kj

+-==

()

131

a a kk

'

kk =

()n ,k ,k ,...,j n ,k ,k ,...,i ,

a a a a ik '

kj ij '

ij 11114111+-=+-=-=

()15111n

,k ,k ,...,i ,

a a a 'kk

ik 'ik

+-=-=

n ,...,k 21=

式(12)—(15)就是求逆矩阵的基本计算公式,对应于每一个k 值就是完成了一个消元过程,在消元过程进行中i 和

j 变量在规定的范围内进行循环.

我们知道,只要矩阵A 的行列式0≠det ,则A 总是可逆的,然而,当主元素为零或绝对值

太小时,按上述方法计算机可能要溢出,因此,在约化的过程中也应采用选主元素的方法,如果互换矩阵的两行,对方程组的解来说,这样的对换对结果没有影响;而对求逆矩阵来说,这样的对换改变了所要求的逆矩阵.事实上,是逆矩阵也作了相应两列的互换,所以,计算逆矩阵也可以通过列主元素消元法,只要记住行的交换,然后在结果中施行相应的列交换即可.

第四节 第四节 矩阵分解 一 矩阵的LU 分解

高斯消元过程实际上是对方程组的增广矩阵施行初等行变换,也就相当于用相应的初等矩阵

左乘增广矩阵.如果对()

()b x A 00=施行第一次消元后化为()()b x A 11=, 则存在L 1, 使得

()()

A A L 101=, ()()b b L 101=

其中

?????

???????????---=1111131

211l l l L n

一般地,施行第k 次消元后化为()()b x A k k =,则有 ()()

A A L k k k =-1 ,()()b b L k k k =-1

其中

?

???

??????????????--=+11111l l L nk k

k k

重复这一过程,最后得到

()()10121--=n n A A L L L

()()10121--=n n b b L L L

将上三角矩阵()

1-n A 记为U ,则

LU A =

其中

==----1

1

1211n L ...L L L ????????????11112121 n n l l l

为单位下三角矩阵。

这就是说,高斯消元法实质上产生了一个将A 分解为两个三角形矩阵相乘的因式分解,称为

A 的三角分解或LU 分解.于是我们有如下的重要定理,它在解方程组的直接法中起着重要的

作用.

定理1(矩阵的LU 分解) 设A 为n 阶矩阵,如果A 的顺序主子式()n ,..,i D i

210=≠则A 可

分解为一个单位下三角矩阵L 和一个上三角矩阵U 的乘积,且这种分解是唯一的. 证明 根据以上高斯消元法的矩阵分析, LU A =的存在性已经得到证明,下面证明分解的唯

一性,设

11U L LU A ==

其中

1L ,L 为单位下三角矩阵;1U ,U 为上三角矩阵,由于A 可逆,从而1L 与U 可逆,故 1

11

1--=U U L L

上式右边为上三角矩阵,左边为单位下三角矩阵,因此,上式两边都必须等于单位矩阵,于是

U

U ,L L ==11

例1 例1 求矩阵

???

???????---=122140111A

的LU 分解.

解 由高斯消元法

20113131112121====a a l ,a a l

()()

10140440111A A A =?????

?????---→=

进一步,有()

()

14412213232-=-==a a

l ,且

()()

21140140111A A =?????

?????---→

所以, LU A =,其中

???

??

?

????-=??????????=112010001101001323121l l l L

()2A U =

如果把A 分解为乘积LU 后,求解b Ax =的问题可以看作是相继求解具三角状系数的方程组

??

?==y Ux b Ly

的问题,也就是用

()

???

?

???∑=-==-=11

1132k j j ks k k n ,,k y l b y b y

求y ,再用

()

???

???

?--=??? ??∑-==+=1211,n ,n k u /y u y x u y x kk

n

k j j ks k k nn n n 求x ,因此,利用LU 分解在求解具相同系数矩阵而有不同常数列的方程组时,只要保留L 与U

的记录就不必要做A 的分解及约化的重复工作(这是比较费时的),只要做求解两个三角状系数

方程组的工作就行了,而这两件工作是比较容易和省时的.

二 LU 分解的计算公式

定理1告诉我们,如果A 的各阶主子式不为0,则存在唯一的LU 分解,所以,矩阵分解不一定采用高斯消元法,下面给出一种直接计算方法,设 LU A = ()1

其中

?????

???????????=????????????????=nn n n n n u u u u u u u u U l l l L

2232211312112121111

利用矩阵乘法及矩阵相等则对应元素相等的事实,可以逐一求出L 与U 的各个元素.首先,从第1行得出U 的第1行元素

()22111n

,,,j ,a u j j == 再从第1列算出L 的第1列元素

()33211

1

1n

,,,i ,u a l i i ==

其次,从第2行算出U 的第2行元素

()42112122n

,,,j ,u l a u j j j =-= 再从第2列算出L 的第2列元素

()

5322

12

122n

,,i ,u u l a l i i i =-=

一般地,设已经给出U 的第1行到第1-k 行元素与L 的第1列到第1-k 列元素,则U 的第k

行元素为

()

6111

∑+=-=-=k i ij ki kj kj n

,,k ,k j ,

u l a u

L 的第k 列元素为

()

7211

1n

,,k ,k i ,u u l a l kk

k j jk

ij ik ik ++=∑-=

-=

总结上述讨论,可得用直接三角分解求U ,L 的计算公式

???

?

?????

??+=∑-==+=∑-=====-=-=n ,...,k i ,u u l a l n

...,,k ,n ,...,k ,k j ,u l a u n ,...,i ,u a l n ,...,j ,

a u kk

k j jk

ij ik ik

k i ij ki kj kj i i j j 132********

1111111

由于在电算时,当kj u 计算好后,kj a 就不用了,而ik l 算好后ik a 也不再使用,因此,计算好的kj u 与ik l 可以存放在A 的相应位置,例如

??????

??????→?????????

???=4443

42

4134333231242322

2114131211444342413433323124232221

14131211u l l l u u l l u u u l u u u u a a a a a a a a a a a a a a a a A

最后,在存放A 的数组中,得到分解矩阵U ,L 的元素. 例2 例2 将矩阵A 进行LU 分解

????

?????

???=20116126384102785124A

?

?

?

?

?

??

??

???→?????????

???=20116126384

10278

512420116126384102785124A

??

??

???

??

???→????????????→201163638

1003

25124201163

6381102725124 ?

?

?

?

????????→?????????

???→20110312210032

5124201103632100325124 ?

?

?

?

????????→?????????

???→1403

12210032

512420403122100325124

所以

?

?????

???

???=??

??

?????

???=10001200003051241403

012100120001

U ,L

下面考虑求解矩阵的LU 分解及由此求解方程组b Ax =的运算量.第1步要进行除法1-n 次,第2步要进行除法2-n 次,乘法与加法均为()()21-+-n n 次;一般地.第k 步要进行除法k n -次,乘法与加法()()()()111---+--k n k k n k 次,所以LU 分解共

需加减法

()()()()n n n k n k k n k n

k 67

233

1

11123

1+-=---+-∑

-=

次,乘除法

()()()()()]n

n n

k n k n k k n k n

k 323

111123

1

+-=-+---+-∑

-=

次.而由此求解

b Ax =还需进行加减法

[()()]n n k n k n

k -=-∑+-=2

1

1

次;乘除法

[()()]2

1

11n k n k n

k =+-∑+-=

次.故由LU 分解求解线性方程组的运算量乘除法为n n 32313+;加减法n

n n 61213

123+-次.与利用高斯消元法的计算量基本相同. 从直接三角分解公式可看出,当

0=kk u 时,计算将中断或者当kk u 绝对值很小时,按分解公

式计算可能引起舍入误差的累积.因此,对非奇异矩阵

A 可采用与列主元素消元法类似的方法,

将直接三角分解法修改为列主元三角分解法.

设第1-k

步分解已完成,这时有

????

??

?????

??

?

????????→------nn nk nk n n kn kk kk n k k

k k k n n a a l l l a a l u u u u u l u u u A 1

21111112222111211

为了避免用小的数kk u 作除数,第k 步分解需引入

()

911

1

∑+=-=-=k j jk ij ik i n

,,k ,k i ,

u l a s

于是有

()

101n

,,k i ,s s l ,

s u k

i

ik k kk +==

=

i

n

i k ik s max s ≤≤=

则交换

A 的第k 行与k i 行元素,然后再进行第k 步分解计算,于是有

()1111n

,...,k i ,l ik +=≤ 下面用矩阵运算来描述列主元素法为

()()

()1210111

A A P L i =

()()()131

211-==-n ,...,k ,

A A P L k k ki k k

其中k L 的元素满足k

ki

ik P ,n ,...k i ,l 11+=≤是初等排列矩阵(由交换单位矩阵的第k 行与

k i 行得到,从而

()()()14101122111

2

1

U

A A P L P L ...P L n i i i n n n ==----

简记为U L

~

=,其中

()151

2

1

112211i

i i n n ~

P L P L ...P L L n ---=

11--=n ~

n L L

1

1

1212------=n n i

n n i n n ~

P L P L

()161

2

2

1

123213----------=n n n n i

n i n n i n i n n ~

P P L P P L

……

1

2

2

2

2

1

12212211--------=n n n n i

n i n i i i n i n ~

P P ...P L P ...P P L

则k ~

L 是单位下三角矩阵,且

1

2

1

121121i

i n i n ~

n ~~n P ...P P L ...L L n n ------

~

i i i n i n n L P L P L ...P P L n n ==-----1

2

2

1

1122211

()171

2

1

121i

i n i n P ...P P P n n ----=

()181

211

~

n ~~n L ...L L L ---=

()19LU

PA =

其中P 为排列矩阵,L 为单位下三角矩阵,U 为上三角矩阵,总结以上的讨论有 定理2(列主元素的三角分解定理) 如果A 为非奇异矩阵,则存在排列矩阵P ,使得

LU PA =其中L 为单位下三角阵, U 为上三角阵.

在列主元素的三角分解中,L 的元素存放在数组A 的下三角部分;U 的元素存放在A 的上三

角部分,而P 可通过整型数组P(n)表示. 三 平方根法

应用有限元法解结构力学问题时,最后归结为求解线性方程组,系数矩阵大多具有对称正定性,所谓平方根法就是利用对称正定矩阵的三角分解而得到的求解对称正定方程组的一种有效方法.目前在计算机上广泛应用平方根法解此类方程组.

不难证明,在满足定理 1的条件下,有下面结果.

定理3(矩阵的LDU 分解) 设A 为n 阶矩阵,如果

A 的各阶顺序主子式,

n ,...,i ,D i 210=≠,则A 可唯一地分解为

()20LDU

A =

其中L 为单位下三角阵,U 为单位上三角阵,D 为对角阵.进一步,如果A 是对称矩阵,则

T L U =,即

T LDL A =

定理4(对称正定矩阵的三 角分解) 如果A 为n 阶对称正定矩阵,则存在一个实的非奇异下三

角阵L ,使得

()21T

LL A =

当限定L 的对角元素为正时,这种分解是唯一的.

由矩阵乘法,可直接获得L 的计算公式

()

222

1

1

12??

? ??∑-=-=k j kj kk kk l a l

()232111

1

n

,...,k n

,...k i l )

l l a (l k j kk

kj ij ik ik =+=∑-=-=

按此方法进行的矩阵分解称为平方根法.由于

n

,...,k ,

l a k

j kj kk 2112

=∑==

所以

{}

kk n

k kk kj a max a l ≤≤≤≤12

于是

{

}{}kk n

k kj j

,k a max l max ≤≤≤12

因此,分解过程中元素kj l

的数量级不会增长,且对角元素

kk l 恒为正数,于是无需进行行的交

换,不选主元的平方根法就是一个数值稳定的方法. 例3 例3 用平方根法分解对称正定矩阵

???

???????--=5375217522541114

....A

5021241121211111.l a l a l -=-==

=== 5021

113131.l a l ===

22502542

212222=-=-=..l a l

()51250507522221313232....l l l a l =--=-=

1252250532

322313333=--=--=...l l a l

于是T

LL A =,其中

???

???????-=151500050002

...L

由于A 为对称矩阵,因此,在电算时只要存储A 的下三角部分,其需要存储()

121

+n n 个元素,

可用一维数组存放,即

(){}nn n n a ,...a ,a ,...,a ,a n n A 212111121=???

???+ 矩阵元素ij

a 存放在()??????+121n n A 的第()j i i +-121个位置,L 的元素存放在A 的相应位

置上.另外,平方根法的运算量是

开平方 n 次;

乘除法 n

n n 31236123++次; 加减法 n

n n 676

123-+次.

第三章 线性方程组

第三章 线性方程组 §3.1 线性方程组的矩阵消元解法 例3.1 求解线性方程组 ??? ??=+-=+-=-+4 5342622321 321321x x x x x x x x x 解方程组通常采用消元法,比如将第2个方程乘2-加到第1个方程,可消去1x 得到09632=-x x ,将此方程两边除以3,约简可得03232=-x x 。 除了消元和约简,有时还要交换两个方程的位置。这些变形运算实际上仅在变量的系数之间进行,所以只需将所有的系数和常数项列成一个矩阵,做初等行变换即可。显然消元、约简和交换方程位置分别相当于矩阵的消去变换、倍缩变换和换行变换。比如上面对本例的两个具体变形相当于以下矩阵初等行变换: ????? ??---411534216122→????? ??---411534210960→???? ? ??---411534210320 其中第一个变换是第2行乘2-加到第1行,第二个变换是以31乘第1行。矩阵的初等变换可以使解方程组的过程显得紧凑、快捷、简洁。 下面我们运用初等变换的标准程序(参看§2.4)来解例3.1的线性方程组: ????? ??---4115342]1[6122 →? ?? ?? ??----111990342 109]6[0 ?→?* ????? ??---11]5.5[0005 .110310 1→? ???? ? ?210030101001 其中,主元都用“[ ]”号作了标记。消元与换行可同步进行(如带“*”号的第二 步),换行的目的是为了使主元呈左上到右下排列。最后一个矩阵对应方程组 ?? ? ??=++=++=++2 003001 00321x x x 实际上已得到方程组的解是11=x ,32=x ,23=x 。写成列向量 ()T x 2,3,1=,叫做解向量。显然解向量可以从最后一个矩阵右侧的常数列 直接读出,无需写出对应的方程组。 第二章曾经把一般的线性方程组(2.2)写成矩阵形式b Ax =,比如例 3.1 的线性方程组,写成矩阵形式是??? ? ? ??=????? ??---436115421122x 。

线性代数第3章_线性方程组习题解答

习题3 3-1.求下列齐次线性方程组的通解: (1)?? ? ??=--=--=+-087305302z y x z y x z y x . 解 对系数矩阵施行行初等变换,得 ???? ? ??-----?→?????? ??-----=144072021 1873153211A )(000720211阶梯形矩阵B =???? ? ??-?→? ??? ?? ??-?→?0002720211)(000271021101行最简形矩阵C =????? ? ???→? , 与原方程组同解的齐次线性方程组为 ??? ??? ?=+=+02702 11 z y z x , 即 ??? ??? ?-=-=z y z x 272 11(其中z 是自由未知量), 令1=z ,得到方程组的一个基础解系 T )1,2 7,211(-- =ξ, 所以,方程组的通解为

,)1,2 7,211(T k k -- =ξk 为任意常数. (2)??? ??=+++=+++=++++0 86530543207224321 432154321x x x x x x x x x x x x x . 解 对系数矩阵施行行初等变换,得 ???? ? ??--?→?????? ??=21202014101072211086530543272211A )(7000014101072211阶梯形矩阵B =????? ??-?→? ???? ? ??-?→?70000141010211201 )(100000101001201行最简形矩阵C =???? ? ???→?, 与原方程组同解的齐次线性方程组为 ??? ??==+=++00 025 42431x x x x x x , 即 ??? ??=-=--=025 4 2431x x x x x x (其中43,x x 是自由未知量), 令34(,)T x x =(1,0)T ,(0,1)T ,得到方程组的一个基础解系 T )0,0,1,0,2(1-=ξ,T )0,1,0,1,1(2--=ξ, 所以,方程组的通解为

线性方程组的解法

线性方程组的解法 1 引言 在科学研究和大型工程设计中出现了越来越多的数学问题,而这些问题往往需要求数值解。在进行数值求解时,经离散后,常常归结为求解形如Ax= b的大型线性方程组。而如插值公式,拟合公式等的建立,微分方程差分格式的构造等,均可归结为求解线性方程组的问题.在工程技术的科学计算中,线性方程组的求解也是最基本的工作之一.因此,线性方程组的解法一直是科学和工程计算中研究最为普遍的问题,它在数值分析中占有极其重要的地位。20世纪50年代至70年代,由于电子计算机的发展,人们开始考虑和研究在计算机上用迭代法求线性方程组Ax =b的近似解,用某种极限过程去逐渐逼近精确解,并发展了许多非常有效的迭代方法,迭代法具有需要计算机存储单元少、程序设计简单、原始系数矩阵在计算过程中始终不变等优点。例如Jacobi方法、Gauss—Seidel 方法、SOR方法、SSOR 方法,这几种迭代方法是最常用的一阶线性定常迭代法。 2 主要算法 20世纪50年代至70年代,人们开始考虑和研究用迭代法求解线性方程组。 Ax = b (1) 的近似解,发展了许多有效的方法,其中有Jacobi方法、Gauss—Seidel方法,SOR方法、SSOR方法,这几种迭代方法均属一阶线性定常迭代法,即若系数矩阵A的一个分裂:A =M-N ;M 为可逆矩阵,线性方程组(1)化为: (M-N)X =b; →M X = NX + b; →X= M -1NX+ M-1b 得到迭代方法的一般公式: X(k+1)=HX(k)+d (2) 其中:H =MN-1,d=M-1b,对任意初始向量X(0) 一阶定常迭代法收敛的充分必要条件是: 迭代矩H的谱半径小于1,即ρ(H) < 1;又因为对于任何矩阵范数恒有ρ(H)≤‖H‖,故又可得到收敛的一个充分条件为:‖H‖< 1。 2.1 Jacobi迭代法 若D为A的对角素构成的对角矩阵,且对角线元素全不为零。系数矩阵A的一个分解:A =

求解线性方程组的直接解法

求解线性方程组的直接解法 5.2LU分解 ① Gauss消去法实现了LU分解 顺序消元结束时的上三角矩阵U和所用的乘数,严格下三角矩阵。 将下三角矩阵的对角元改成1,记为L,则有A=LU, 这事实是一般的,我们不难从消去的第k个元素时的矩阵k行及k列元素的 历史得到这一点.因为从消元的历史有 u kj=a kj-m k1u1j- m k2u2j -…- m k,k-1u k-1,j, j=k,k+1,…,n m ik=(a ik-m i1u1k- m i2u2k -…-m i,k-1u k-1,k>/u kk i=k+1,k+2,…,n 于是a kj=m k1u1j+m k2u2j+…+m k,k-1u k-1,j+u kj, j=k,k+1,…,n a ik=m i1u1k+m i2u2k+…+m i,k-1u k-1,k+m ik u kk i=k+1,k+2,…,n 从前面两个式子我们可以直接计算L和U(见下段>.将矩阵分解为单位下 三角矩阵和上三角矩阵之积称为矩阵的LU分解.顺序消元实现了LU分 解,同时还求出了g, Lg=b的解. ②直接LU分解 上段我们得到(l ij=m ij> u kj=a kj-l k1u1j-l k2u2j -…- l k,k-1u k-1,j, j=k,k+1,…,n l ik=(a ik-l i1u1k-l i2u2k -…-l i,k-1u k-1,k>/u kk i=k+1,k+2,…,n 2 诸元素对应乘积,只不过算L的元素时还要除以同列对角元.这一规律很 容易记住.可写成算法(L和U可存放于A>: for k=1:n-1 for j=k:n u kj=a kj-l k1u1j-l k2u2j -…- l k,k-1u k-1,j end for i=k+1:n l ik=(a ik-l i1u1k-l i2u2k -…-l i,k-1u k-1,k>/u kk end end 这一算法也叫Gauss消去法的紧凑格式,可一次算得L,U的元素,不需逐步 计算存储.

3线性方程组解法课件-(精选、)

第3章线性方程组的解法 本章探讨大型线性方程组计算机求解的常用数值方法的构造和原理,主要介绍在计算机上有效快速地求解线性方程组的有关知识和方法。 重点论述Jacobi迭代法、Seidel迭代法、Guass消元法及LU分解法的原理、构造、收敛性等内容。

3.1 实际案例 3.2问题的描述与基本概念 解线性方程组问题在线性代数中已有很优美的行列式解法,但对大型的线性方程组(阶数n>40)的求解问题使用价值并不大,因为其计算量太大。实际问题中经常遇到自变量个数n都很大的线性方程组求解问题,这些线性方程组要借助计算机的帮助才能求出解。

n 个变元12,,,n x x x ?的线性方程组的一般形式为 11112211 211222221122n n n n m m mn n m a x a x a x b a x a x a x b a x a x a x b +++=??+++=????++ +=? (3.3) 式中,a ij 称为系数,b i 称为右端项,它们都是已知的 常数。如果有*** 1122,,,n n x x x x x x ===使方程组(3.3)成立,则称值 ***12 ,, ,n x x x 为线性方程组的(3.3)的一组解。

本章在不作特别说明的情况下,主要讨论m=n 的线性方程组 11112211 21122222 1122n n n n n n nn n n a x a x a x b a x a x a x b a x a x a x b +++=??+++=????++ +=? 的求解问题,且假设它有唯一解。 线性方程组的矩阵表示 Ax b = 式中A 称为系数矩阵,b 称为右端项。

解线性方程组的直接解法

解线性方程组的直接解法 一、实验目的及要求 关于线性方程组的数值解法一般分为两大类:直接法与迭代法。直接法是在没有舍入误差的情况下,通过有限步运算来求方程组解的方法。通过本次试验的学习,应该掌握各种直接法,如:高斯列主元消去法,LU分解法和平方根法等算法的基本思想和原理,了解它们各自的优缺点及适用范围。 二、相关理论知识 求解线性方程组的直接方法有以下几种: 1、利用左除运算符直接求解 线性方程组为b x\ =即可。 A Ax=,则输入b 2、列主元的高斯消元法 程序流程图: 输入系数矩阵A,向量b,输出线性方程组的解x。 根据矩阵的秩判断是否有解,若无解停止;否则,顺序进行; 对于1 p :1- =n 选择第p列中最大元,并且交换行; 消元计算; 回代求解。(此部分可以参看课本第150页相关算法) 3、利用矩阵的分解求解线性方程组 (1)LU分解 调用matlab中的函数lu即可,调用格式如下: [L,U]=lu(A) 注意:L往往不是一个下三角,但是可以经过行的变换化为单位下三角。 (2)平方根法

调用matlab 中的函数chol 即可,调用格式如下: R=chol (A ) 输出的是一个上三角矩阵R ,使得R R A T =。 三、研究、解答以下问题 问题1、先将矩阵A 进行楚列斯基分解,然后解方程组b Ax =(即利用平方根法求解线性方程组,直接调用函数): ??????? ??--------=19631699723723312312A ,?????? ? ??-=71636b 解答: 程序: A=[12 -3 2 1;-3 23 -7 -3;2 -7 99 -6;1 -3 -6 19]; R=chol(A) b=[6 3 -16 7]'; y=inv(R')*b %y=R'\b x=inv(R)*y %x=R\y 结果: R =3.4641 -0.8660 0.5774 0.2887 0 4.7170 -1.3780 -0.5830 0 0 9.8371 -0.7085 0 0 0 4.2514 y =1.7321 0.9540 -1.5945 1.3940 x =0.5463 0.2023 -0.1385 0.3279 问题 2、先将矩阵A 进行LU 分解,然后解方程组b Ax =(直接调用函数): ?????????? ??----=8162517623158765211331056897031354376231A ,????????? ? ??-=715513252b

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

线性方程组的解法及其应用 The solution of linear equation and its application 专业:测控技术与仪器 班级: 2010-1班 作者:刘颖 学号: 20100310110105

摘要 线性方程组是线性代数的一个重要组成部分,也在现实生产生活中有着广泛的运用,在电子工程、软件开发、人员管理、交通运输等领域都起着重要的作用。在一些学科领域的研究中,线性方程组也有着不可撼动的辅助性作用,在实验和调查后期利用线性方程组对大量的数据进行处理是很方便简捷的选择。本文主要围绕如何解线性方程组来进行讲解,对于不同类型的线性方程组的不同方法,并简述线性方程组的一些实际应用。 关键词: 齐次线性方程组,非齐次线性方程组,克莱姆法则,消元法,矩阵,矩阵的秩,特解,通解。

Abstract Linear equations linear algebra is one of the important component parts, and in real life has extensive production use,and it plays an important role in electronic engineering, software development, personnel management, transportation, etc. In some discipline study, it also has the reigns of linear equations of the auxiliary function.In experiment and survey using the linear equations of the late on the data processing is very convenient simple choice. This article, focusing on how to solve linear equations to explain, for different types of linear equations of different methods, and briefly introduces some of the practical application of linear equations. Keywords: Homogeneous linear equations, Non homogeneous linear equation,Clem’s law,Elimination method,Matrix,Rank of matrix,Special solution,General solution.

解线性方程组直接解法

第2章 解线性方程组的直接解法 §0 引言 11112211211222221122n n n n n n nn n n a x a x a x b a x a x a x b a x a x a x b +++=??+++=??? ?+++=?L L L L 1112121 22212112,(,,,),()n n T T n n n n nn a a a a a a A x x x x b b b a a a ??????===??? ??? ? ?L L L L L L L Ax b = 若A 非奇异,即det()0A ≠,方程组Ax b =有唯一解。由 Cramer 法则,其解 det(),1,2,,det() i i A x i n A = =L 其中i A 为用b 代替A 中第i 列所得的矩阵。当n 大时, 1n +个行列式计算量相当大,实际计算不现实。 121212(,)12det()(1)n n n i i i i i i n i i i A a a a τ=-∑L L L §1 Gauss 消去法 (I )Gauss 消去法的例子 (1)1231123 212336 ()123315()18315() x x x E x x x E x x x E ++=??-+=??-+-=-? 2131()12(),()(18)()E E E E -?--? (2) 12312342356 ()15957()211793()x x x E x x E x x E ++=?? --=-??+=?

方程组13()()E E -与方程组145(),(),()E E E 同解 541 ()21( )()15 E E --得 (3)1231234366()15957()3() x x x E x x E x E ++=?? --=-??=? 由(3)得3 213,2,1x x x === 123(,,)(1,2,3)T T x x x = (3)的系数矩阵为11 10159001????--?????? ,上三角 矩阵。 (II )Gauss 消去法,矩阵三角分解 Ax b = 1112 11,12122 22,112 ,1 n n n n n n nn n n a a a a a a a a A b a a a a +++????????=?????????? L M L M L L M M L M 令(1) ,1,2,,;1,2,,,1ij ij a a i n j n n ===+L L (1)(1)A b A b ??=?? ???? 第1次消去 (1) 110a ≠, 令 (1)1 1(1)11 , 2,3,,i i a l i n a ==L 作运算:11()()i i i l E E E -+→ i E 表示第i 个方程(第i 行) 2,3,,i n =L (2)(1)(1) 111110 2,3,,i i i a a l a i n =-==L

线性方程组的直接解法及matlab的实现

本科毕业论文 ( 2010 届) 题目线性方程组的直接解法及matlab的实现 学院数学与信息工程学院 专业数学与应用数学 班级2006级数学1 班 学号0604010127 学生姓名胡婷婷 指导教师王洁 完成日期2010年5月

摘要 随着科技技术的发展及人类对自然界的不断探索模拟.在自然科学和工程问题中的很多问题的解决常常归结为线性代数问题! 本文的主要内容是对线性方程组求解方法的探讨,主要介绍了四种求解线性方程组的方法,第一种是教科书上常见的消元法,我们称之为基本法.第二种方法是标准上三角形求解法,即将增广矩阵经过初等变换后化成标准上三角形,然后求解.它改进了一般教科书上的常见方法,与常见方法比较有如下优点:1)规范了自由未知量的选取;2)只用矩阵运算;3)减少了计算量.第三种方法是对特定的方程组(系数矩阵A为n阶对称正定矩阵,且A的顺序主子式均不为零.)的求解方法进行描述,并且为这种线性方程的求解提供了固定的公式化的方法.第四种方法是对现在实际问题中常常会遇到的系数矩阵为三对角矩阵的方程组的求解方法.同时给出这几种方法的数值解法(matlab程序),由于运用电脑软件求解,所以必须考虑计算方法的时间、空间上的效率以及算法的数值稳定性问题,所以针对不同类型的线性方程组有不同的解法.但是,基本的方法可以归结为两大类,即直接法和迭代法. 关键词 高斯消去法;三角分解法;乔莱斯基分解法;追赶法

Abstract Systems of linear equations are associated with many problems in engineering and scinence ,as well as with applications of mathematics to the social sciences and the quantitative study of business and economic problems. The main content of this article is the method for solving linear equations, we introduce four methods for solving linear equations in this paper. The first is the elimination method which is commonly found in textbooks, and we call the Basic Law. The second method is Standard on the triangle Solution, that first change Augmented matrix into standards in primary triangle, and then solving. It improves the general textbook on common methods, compared with the common method has the following advantages:1) Specification of the free choice of unknowns; 2)Only matrix operations;3) Reduce the computation. The third method describes a way to solve a Specific equations(N coefficient matrix A is symmetric positive definite matrix, and A are not zero-order principal minor), And for this linear equation provides a fixed formulaic approach. The fourth method is to present practical problems often encountered in the coefficient matrix is tridiagonal matrix method for solving the equations. These methods are given numerical solution of (matlab program), As the use of computer software to solve, it is necessary to consider ways of computing time and space efficiency and numerical stability of algorithms, Therefore, different types of linear equations have a different solution. However, the basic method can be classified into two categories, namely direct methods and iterative methods. Key words Gaussian elimination; Triangular decomposition; Cholesky decomposition method; Thomas algorithm

线性代数习题[第三章] 矩阵的初等变换与线性方程组

习题 3-1 矩阵的初等变换及初等矩阵 1.用初等行变换化矩阵 1021 2031 3043 A - ?? ?? =?? ?? ?? 为行最简形. 2.用初等变换求方阵 321 315 323 A ?? ?? =?? ?? ?? 的逆矩阵. 3.设 412 221 311 A - ?? ?? =?? ?? - ?? , 3 22 31 - ?? ?? ?? ?? - ?? 1 B=,求X使AX B =. 4.设A是n阶可逆矩阵,将A的第i行与第j行对换后得矩阵B. (1) 证明B可逆(2)求1 AB-.

习题 3-2 矩阵的秩 1.求矩阵的秩: (1)310211211344A ????=--????-?? (2)11121212221 2n n n n n n a b a b a b a b a b a b B a b a b a b ??????=??????01,2,,i i a b i n ≠????=?? 2.设12312323k A k k -????=--????-?? 问k 为何值,可使 (1)()1R A =; (2)()2R A =; (3)()3R A =.

3. 从矩阵A 中划去一行,得矩阵B ,则)(A R 与)(B R 的关系是 . .()()a R A R B = .()()b R A R B <; .()()1c R B R A >-; .()()()1 d R A R B R A ≥≥- 4. 矩阵???? ??????-------815073*********的秩R= . a.1; b . 2; c . 3; d . 4. 5. 设n (n ≥3)阶方阵????? ???????=111 a a a a a a a a a A 的秩R (A )=n -1,则a = . a . 1; b . n -11; c . –1; d . 1 1-n . 6.设A 为n 阶方阵,且2 A A =,试证: ()()R A R A E n +-=

线性方程组的平方根解法

浅析线性方程组的平方根解法 在求解线性方程组时, 直接解法有顺序高斯消元法、列主元高斯消元法、全主元高斯消元法、高斯约当消元法、消元形式的追赶法、LU分解法、矩阵形式的追赶法,当我们遇到对称正定线性方程组时,我们就要用到平方根法(对称LLT 分解法)来求解,为了熟悉和熟练运用平方根法求解线性方程组,下面对运用平方根法求解线性方程组进行解析。一、运用平方根法求解线性方程组涉及到的定理及定义 我们在运用平方根法求解线性方程组时,要判定线性方程组Ax=b 的系数矩阵A 是否是对称正定矩阵,那么我们就要了解正定矩阵的性质和如下定理及定义: 1、由线性代数知,正定矩阵具有如下性质: 1)正定矩阵A 是非奇异的 2)正定矩阵A的任一主子矩阵也必为正定矩阵 3)正定矩阵A的主对角元素均为正数 4)正定矩阵A 的特征值均大于零 5)正定矩阵A的行列式必为正数 定义一线性方程组Ax=b的系数矩阵A是对称正定矩阵,那么Ax=b是对称正定线性方程组。 定义二如果方阵A满足A=AT那么A是对称阵。 2.1.4 平方根法和改进的平方根法 如果A是n阶对称矩阵,由定理2还可得如下分解定理: 定理2若A为n阶对称矩阵,且A的各阶顺序主子式都不为零,则A可惟一分解为:A= LDLT,其中L为单位下三角阵,D为对角阵。 证明因为A的各阶顺序主子式都不为零,所以A可惟一分解为:A= LU 因为,所以可将U 分解为:

i DU i 其中D 为对角矩阵,Ui 为单位上三角阵?于是:A = LDU 仁L(DUI) 因为A 为对称矩阵,所以,A = AT = UITDTL 七U 仃(DLT),由A 的LU 分解的惟一 性即得:L = UIT,即 Ui = LT ,故 A = LDLT 工程技术中的许多实际问题所归结出的线性方程组,其系数矩阵常有对称正定 性,对于具有此类特殊性质的系数矩阵,利用矩阵的三角分解法求解是一种较好 的有效方法,这就是对称正定矩阵方程组的平方根法及改进的平方根法, 这种方 法目前在计算机上已被广泛应用。 定理3对称矩阵A 为正定的充分必要条件是A 的各阶顺序主子式大于零。 2对称正定矩阵的三角分解 定理(Cholesky 分解)设A 为n 阶对称正定矩阵,则存在惟一的主对角线元素 都是正数的下三角阵L ,使得:A = LLT 。 分解式A = LLT 称为正定矩阵的Cholesky 分解,利用Cholesky 分解来求解系数 矩阵为对称正定矩阵的方程组AX ^ b 的方法称为平方根法。 设A 为4阶对称正定矩阵,则由定理 4 知,A = LLT ,即: a ii a i2 a i3 a i4 l ii 0 0 0 l ii l 2i l 3i l 4i a 21 a 22 a 23 a 24 l 2i l 22 0 0 0 l 22 l 32 l 42 a 3i a 32 a 33 a 34 l 3i l 32 l 33 0 0 l 33 l 43 a 4i a 42 a 43 a 44 l 4i l 42 l 43 144 l 44 将右端矩阵相乘, 并令两端矩阵的元素相等, 于是不难算得矩阵 L 的元素的计算 公式为: 平方根法的计算框图见图 用平方根法求解系数矩阵对称正定的线性方程组时,计算过程是数值稳定 U ii U 22 U l2 U in U ii 1 U nn U 2n U 22 U nn

浅析线性方程组的解法

目录 摘要................................................................................... I Abstract. ............................................................................. II 第一章绪论............................................................................ I 1.1引言 (1) 1.2线性方程组解的求解方法的研究现状 (1) 1.3本文对线性方程组解法的研究结构 (1) 第二章线性方程组理论基础 (2) 2.1 线性方程组概念 (2) 2.2 线性方程组的解的情况分析 (2) 2.3 齐次线性方程组解的结构 (4) 2.4非齐次线性方程组解的结构 (4) 第三章线性方程组的数值解 (5) 3.1 迭代法 (5) 3.1.1 Jacobi方法 (6) 3.2.2 高斯-赛德尔方法 (8) 第四章全文总结和展望 (10) 4.1 全文总结 (10) 4.2 未来展望 (10) 参考文献 (11) 致谢................................................................. 错误!未定义书签。

线性方程组的求解方法 学生:指导教师: 摘要:本文在对线性方程组解的结构的研究背景与意义分析的基础上,对线性方程组的求解方法的研究现状进行了介绍,之后针对线性方程组展开了研究,包括线性方程组的概念、线性方程组的求解方法以及线性方程组的作用等,在对线性方程组有了全面的认识后,基于线性方程组解的结构展开了研究,包括线性方程组解的基本定理,齐次和非齐次线性方程组解的结构形式,以及齐次和非齐次线性方程组解的结构,我们用迭代法中最常用的Jacobi方法中的相似上三角矩阵定理和迭代法中的收敛性讨论线性方程组的数值解法,并用高斯-赛德尔方法进行验证。得到线性方程组的数值解的一般方法。最后,对全文进行了总结和展望。 关键词:线性方程组;数值解;迭代法;Jacobi方法;高斯-赛德尔方法

线性方程组的直接解法 实验报告

本科实验报告 课程名称:数值计算方法B 实验项目:线性方程组的直接解法 最小二乘拟合多项式 实验地点:ZSA401 专业班级:学号:201000 学生姓名: 指导教师:李志 2012年4月13日

线性方程组的直接解法 一、实验目的和要求 实验目的:合理利用Gauss 消元法、LU 分解法或追赶法求解方程组。 实验要求:利用高斯消元法,LU 分解法或追赶法进行编程,求解题中所给的方程组。 二、实验内容和原理 实验内容:合理利用Gauss 消元法、LU 分解法或追赶法求解下列方程组: ① ?? ?? ? ?????=????????????????????13814142210321321x x x ②??? ? ?? ??????=????????????????????? ?? ? ??--?-2178.4617.5911212592.1121130.6291.513 14 .59103.043 2115x x x x ③?? ??? ??? ? ???????----=????????????????????????????????-55572112112112121 n n x x x x (n=5,10,100,…) 实验原理:这个实验我选用的是高斯消元法。高斯消元法:先按照 L ik =a ik^(k-1)/a kk^(k-1) , a ij^(k)=a ij^(k-1)-l ik a kj^(k-1) [其中k=1,2,…,n-1;i=k+1,k+2,…,n;j=k+1,k+2,…,n+1] 将方程组变为上三角矩阵,再经过回代,即可求解出方程组的解。 三.计算公式 通过消元、再回代的求解方法称为高斯消元法。特点是始终消去主对角线 下方的元素。 四、操作方法与实验步骤 #include "Stdio.h" #define N 3 main() { double a[N][N+1],b[N]; int i,j,k,x=0; for(i=0;i

线性方程组的直接解法

第2章线性方程组的直接解法 2.1实验目的 理解线性方程组计算机解法中的直接解法的求解过程和特点,学习科学计算的方法和简单的编程技术。 2.2概念与结论 1. n阶线性方程组 如果未知量的个数为 n ,而且关于这些未知量x1,x2, …,x n的幂次都是一次的(线性的)那末, n 个方程 a11x1+a12x2+ … +a1n x n=b1 ┆┆┆ (1) a n1x1+a n2x2+ … +a nn x n= b n 构成一个含n个未知量的线性方程组,称为n阶线性方程组。其中,系数a11,…,a1n,a21, …,a2n, …,a n1, …,a nn 和b1, …,b n都是给定的常数。 方程组(1)也常用矩阵的形式表示,写为 Ax=b 其中,A是由系数按次序排列构成的一个n阶矩阵,称为方程组的系数矩阵,x和b都是n维向量,b称为方程组的右端向量。 2. n阶线性方程组的解 使方程组(1)中每一个方程都成立的一组数x1*,x2*, …,x n*称为式(1)的解,把它记为向量的形式,称为解向量. 3.一些特殊的线性方程组 1) 上三角方程组 2) 三对角方程组 ? ? ? ? ? ? ? ? ? ? ? ? = ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? - - - - - n n nn n n n n n n n n b b b x x x a a a a a a a a a a a a 2 1 2 1 1 1 1 2 1 2 23 22 1 1 1 13 12 11

4.矩阵的Doolittle 分解 5.Doolittle 分解的紧凑格式 6.矩阵的Crout 分解 ????????? ? ??=?????????? ???????????? ? ?--n n n n n n d d d x x x b a c b c b a c b a c b 21 2111333 22211???? ?? ? ? ???????? ??=??????? ??nn n n n n nn n n n n u u u u u u l l l a a a a a a a a a 222 11211 2 1 21 2 1 2222111211111 ???? ?? ? ? ???????? ??=??????? ??11 1 21122 1 2221 11 2 1 2222111211 n n nn n n nn n n n n u u u l l l l l l a a a a a a a a a ????? ?? ? ??nn n n n n n n u l l l u u l l u u u l u u u u 3 2 1 333323122322211131211

解线性方程组直解法

第2章 解线性方程组的直接解法 §0 引言 11112211211222221122n n n n n n nn n n a x a x a x b a x a x a x b a x a x a x b +++=??+++=????++ +=? 1112121 22212112,(,,,),()n n T T n n n n nn a a a a a a A x x x x b b b a a a ??????===???????? Ax b = 若A 非奇异,即det()0A ≠,方程组Ax b =有唯一解。由 Cramer 法则,其解 det(),1,2,,det()i i A x i n A == 其中i A 为用b 代替A 中第i 列所得的矩阵。当n 大时, 1n +个行列式计算量相当大,实际计算不现实。 121212(,)12det()(1)n n n i i i i i i n i i i A a a a τ=-∑ §1 Gauss 消去法 (I )Gauss 消去法的例子 (1)1231123212336()123315()18315()x x x E x x x E x x x E ++=??-+=??-+-=-? 2131()12(),()(18)()E E E E -?--? (2) 12312342356()15957()211793()x x x E x x E x x E ++=??--=-??+=?

方程组13()()E E -与方程组145(),(),()E E E 同解 541 ()21()()15E E --得 (3)1231234366 () 15957() 3() x x x E x x E x E ++=??--=-??=? 由(3)得3213,2,1x x x === 123(,,)(1,2,3)T T x x x = (3)的系数矩阵为11 10159001?? ?? --?????? ,上三角 矩阵。 (II )Gauss 消去法,矩阵三角分解 Ax b = 111211,1 212222,1 12,1 n n n n n n nn n n a a a a a a a a A b a a a a +++????????=?????????? 令(1) ,1,2,,;1,2,,,1 ij ij a a i n j n n ===+ (1)(1)A b A b ??=?????? 第1次消去 (1) 110a ≠, 令 (1) 1 1(1)11 ,2,3,,i i a l i n a == 作运算:11()()i i i l E E E -+→ i E 表示第i 个方程(第i 行) 2,3,,i n = (2)(1)(1) 1111102,3,,i i i a a l a i n =-==

线性方程组的直接解法

第4章 线性方程组的直接解法 本章主要内容 线性方程组的直接解法——消元法(高斯消元法、主元消元法). 矩阵的三角分解法( Doolittle 分解、Crout 分解、 LDU 分解) 紧凑格式 改进平方根法. 本章重点、难点 一、消元法(高斯消元法、列主元消元法) 本章求解的是n 阶线性方程组Ax=b 的(即方程的个数和未知量的个数相等的线性方程组) ?????????=+???++????????????? ??=+???++=+???++n n nn 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 22112 3222212111212111 1. 高斯消元法 ①高斯消元法的基本思想:通过对线性方程组Ax=b 的进行同解消元变换(也可以用矩阵的初等行变换法进行线性方程组的消元变换),将线性方程组化为上三角形方程组,然后用回代法求出此线性方程组的解。 ②高斯消元法计算公式: ????? ? ? ????????--=-=--==? ????? ????? ???? +=-=-=====-+=------------∑)1,..., 2,1()1,..., 2,1(,...,1,,,,...,2,1) ,...,2,1,(,) 1(1)1()1()1() 1() 1()1() 1()1()() 1()1()1()1()(,)0()0(n n i a x a b x n n i a b x n k j i b a a b b a a a a a n k n j i b b a a i ii n i j j i ij i i i n nn n n n k k k kk k ik k i k i k kj k kk k ik k ij k ij i i ij ij 对回代公式: 消元公式:

第三章 矩阵的初等变换与线性方程组习题 含答案.

第三章矩阵的初等变换与线性方程组 3.4.1 基础练习 1.已知,求. 2.已知,求. 3.若矩阵满足,则(). (A (B (C (D 4.设矩阵满足关系,其中,求. 5.设矩阵,求. 6.是矩阵,齐次线性方程组有非零解的充要条件是 . 7.若非齐次线性方程组中方程个数少于未知数个数,那么( . (A 必有无穷多解; (B 必有非零解; (C 仅有零解; (D 一定无解. 8.求解线性方程组

(1),(2) (3) 9.若方程组 有无穷多解,则 . 10.若都是线性方程组的解,则( . (A (B (C (D 3.4.2 提高练习 1.设为5阶方阵,且,则= . 2.设矩阵,以下结论正确的是( . (A时, (B 时, (C时, (D 时, 3.设是矩阵,且,而,则 .

4.设,为3阶非零矩阵,且,则 . 5.设, 问为何值,可使 (1)(2)(3). 6.设矩阵,且,则 . 7.设,试将表示为初等矩阵的乘积. 8.设阶方阵的个行元素之和均为零,且,则线性方程组的通解为 . 9.设,, ,其中可逆,则 . 10.设阶矩阵与等价,则必有().

(A)当时,(B)当时, (C)当时,(D)当时, 11.设,若,则必有(). (A)或(B)或 (C)或(D)或 12.齐次线性方程组的系数矩阵记为,若存在三阶矩阵,使得,则(). (A)且(B)且 (C)且(D)且 13.设是三阶方阵,将的第一列与第二列交换得到,再把的第二列加到第三列得到,则满足的可逆矩阵为(). (A)(B)(C)(D) 14.已知,为三阶非零矩阵,且,则().

(A)时,(B)时, (C)时,(D)时, 15.若线性方程组有解,则常数应满足条件. 16.设方程组有无穷多个解,则. 17.设阶矩阵与维列向量,若,则线性方程组(). (A)必有无穷多解(B)必有唯一解 (C)仅有零解(D)必有非零解. 18.设为矩阵,为矩阵,则线性方程组(). (A)当时仅有零解(B)当时必有非零解 (C)当时仅有零解(D)当时必有非零解 19.求的值,使齐次线性方程组 有非零解,并求出通解.

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