二线性方程组的解法.docx

上传人:b****4 文档编号:5406591 上传时间:2022-12-16 格式:DOCX 页数:11 大小:53.28KB
下载 相关 举报
二线性方程组的解法.docx_第1页
第1页 / 共11页
二线性方程组的解法.docx_第2页
第2页 / 共11页
二线性方程组的解法.docx_第3页
第3页 / 共11页
二线性方程组的解法.docx_第4页
第4页 / 共11页
二线性方程组的解法.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

二线性方程组的解法.docx

《二线性方程组的解法.docx》由会员分享,可在线阅读,更多相关《二线性方程组的解法.docx(11页珍藏版)》请在冰豆网上搜索。

二线性方程组的解法.docx

二线性方程组的解法

第二章线性方程组地解法

基本解法迭代法和直接法•

直接方法大家已学过,我们重在分析程序写法.

§1雅可比vJacobi)迭代法

例:

求解线性方程组

10咅-x2-2X3=7.2

〈一X[+10x2-2x3=8.3

i-%-x2+5x3=4.2

分离出x1、x2、x3,构造迭代

Xi

X=x2

3

b2

当X(k)极限存在就是方程组地解,本方法也适用于非线性方程组

迭代极限存在极限即为解

程序思想:

定义数组AX(n>B(n>

读入组数ABX0(初值>

Do100k=1,10

Do200i=1,n

n

X(i)二B(i)-'A(i,j)*X0(j)三重循环

j4

j-i

200CONTINUE

DO300i=1,n

300X0

100WITE<*,*)XStop

End

5

12345789

2460

§2高斯-塞德尔

对雅可尔迭代稍加改进就可得到更有效地计算公式

Jacobi迭代中,第k次迭代时,Xi都用地是第k-1次迭代结果

1n

二(bi八ajX(k))

aiij二

(k41)(k41)

在此之前x1到Xi_1已经迭代出第k+1次结果.

(k41)(k+1)

我们用已有地X1到Xid新值,可改造为

i-1n

Xi(kH1)=—(b_EajX(k41)—ZajX(k))

aiij=1j1

高斯-塞德尔迭代法

程序更简单:

定义数组AX(n>B(n>

读入组数ABX0(初值>

Do100k=1,10

Do200i=1,n

n

X1(i)二B(i)八A(i,j)*X0(j)

j=i:

n

X(i)二B(i)-'A(i,j)*X(j)三重循环

j二

j-i

CONTINUE

DO300i=1,n

X0

WITE<*,*)X

Stop

End

超松驰迭代法

我们要解地方程组是矩阵形式

印,a?

厂片I_b]

200

300

100

AX-b归21,a22」】x2-[b-

有初值X(0)

ai,a2x10)b1

AX(0)=b

III⑹丨式I

]a21,a22j[X2」Lb2-

有一残余误差

r=b-AX(0)

r1b1a11a12x()

-b-」a2ia22-[公2°)_

X⑴=x(0)」(b-AX⑼)

巧」I/'严ZE])

如如践一环22_如]

 

 

将b地残余误差用来修正X,数学家也很伟大

当X(k)极限,极限即解为什么收敛极限即解?

迭代公式:

(k1)

i

n

=#k)-(bi-'aijx(k))

jw

注意j“可以,且必须含有该项

iin

Xi(k4l)=Xi(k)~(bi-迟引严-迟aajXj(k))

j=1j=i

以上两式迭代有何异同?

当aii0时

i-1n

x(k)=x(k)(bi_送3用5-迟aijx(k))

aiijmj□

w减少ai倍不影响思想

可以证明保证迭代收效必须要求0-「:

2

0:

‘低松弛法1<■超松弛法

迭代法地收放性

%

311

定理所有迭代都可写成矩阵形式

fla11

ai2|

■xd

bl

且1

a22

1

X二BX

对任意初值问差x(0)及任意fx^(bi-a12x2)/a11=

迭代收放地充要条件是:

a?

ib?

X2=(d-a2〔x〔)/a?

2x〔-•

 

:

(B)<1

P(B)=Max入B

■iB为方阵B地特征值

det(■E-B)

■―b11-b12

-b?

i1-b?

2

III

_b1n

_b2n

定理<充分条件)

Bd对任意X(0),f收敛

n

对角元点优an]aij

jm

对间钱上元素绝对值大于同行元素绝对值之和.

AX=b

则JacobiGauss-Seidel都收敛.

§4

高斯消去法

a11

a12

a13]「为1

11

bl61X1+a12x2

+813X3=b1

(1)

la21

a22

1-a23|x2=

1b?

a?

1片+a?

?

%?

+a23x3_b2

]a31

a32

a33»x3_|

[d」a31N*a32x2

*a33x3—b3

2j

-2?

■®a21

aii

by弋+仝竺

(1)況旦+

(2)消去②中地n

ana11

a3?

(1)丄_a1ja31=a3j+

a11

b

(2)我+兰电(1F旦+⑶消去③中地x1

耳1a11

即消第i行地X1

 

a

(1)a

(1)

(2)

(1)1ji1

a()=a(丿

a11

b⑵二bi⑴

bTaJ

aii

i=2,3,4.....nj=1,2,3....n皆)经过上式得零.

或i=2,3,4……nj=2,3....n

直接让为零.

经过k-1次消元

a11a12a13

a1n-1

ain

a21a22a23

a2n-1

X

1||a2nX?

|

b1

b2

bk

00aik

ain-1

ain

ank

ann-13

annX

-bn

a(k°

ij

a(k)

(k1)=b(k)

akk)aikk)

akk)

bkk)aikk)

akk)

k-1,2,....,n-1

消Xk用第k个方程消其下边方程中地xk

i=k1,....,n

消第i个方程中地xk

j=k,....,n

消第i个方程中地Xk时第i个方程中各项相应变化

当j=k时ai,1)=0

^或j-k1,....,n

消第i个方程中地Xk时第i个方程中各项相应变化

强行让a(kk1}=0

DO100k=1,n-1

 

DO200i=k+1,n

bkaik

akk

DO300j=k,n

akjaik

aj=au

akk

300CONTINUE

200CCNTINUE

100CCNTINUE

回代过程

 

aii

ai2

ai2

a22

b2

_b3

bn/ann

Xn^_(bn-1

an^,nXn)/an

4,nX

n

xj/ai

N=(b-'3i

j#

程序结构:

xn=bn/ann

DOI=21,1,-1

T=0.0

DOJ=I+1,N

T=T+aijXi

ENCDO

Xi=(bi-T)/ai

ENCDO

列主元素消去法

高斯消去法碰到a11,a22),ai(k)为零或很小时,消去无法进行.

人手工问时无所谓,为零更好该方程省得去消,但程序计算就不能进行列主元素消去调换方程顺序注意调换方程顺序并不会改变未知数顺序

0x110x28X3=5

例:

6Xi7X24X3=6

3x16x2x^4

每次作消去时,判断不为零地剩余方阵第一列水最大•

比如做第k次消元<消Xk)剩余k乘k矩阵,则判断akk,a®,a^2,k……an,k谁

最大.

判断大小,只记最大位置

比如am,k最大,则用它去消剩余地.

为了程序设计方便我们将第m个方程移到第i个,一次下移.或更简洁地将第i个与第m个进行对换.

必需作

注意:

X矩阵不用变化.为什么?

调整方程顺序,未知数地位置并不变.这样一来程序上要做一些变化,在消之前加判断大小和跳换位置加在********处回代过程不变

DO100k=1,n-1

**********

 

aij

akjaik

akk

300CONTINUE

200CONTINUE

100CCNTINUE

回代过程不变

完全主元素消去法

-r1

1111

-1

11

A

AX

=b

iJiJ

1J

在A中找最大元素,

将该元素换到第一行第一列

这样方程调顺序未知数亦调顺序•

做到第k次时

在剩余地方阵元素中找最大地再调整方程顺序

未知数顺序

特别注意前几个方程地系数、未知数还要调整顺序.未知数位置地变化必须记住,打印结果时要还原顺序.回代过程不变.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1