Upload
cosmo
View
30
Download
0
Embed Size (px)
DESCRIPTION
数値計算及び実習. 第 11 回 応用プログラミング (3). 応用プログラミング (3). 1. 連立方程式の解法 ・ガウス - ジョルダン法. ガウス - ジョルダン法. 連立一次方程式の解法の1つ. a 11 X 1 + a 12 X 2 + … a 1n X n = b 1 a 21 X 1 + a 22 X 2 + … a 2n X n = b 2 ………………………... a n1 X 1 + a n2 X 2 + … a nn X n = b n. AX=B. 解法. B を A の n+1 行列目に書き足して得られる拡大行列 A e - PowerPoint PPT Presentation
Citation preview
数値計算及び実習
第 11 回 応用プログラミング (3)
応用プログラミング (3)
1. 連立方程式の解法 ・ガウス - ジョルダン法
ガウス - ジョルダン法• 連立一次方程式の解法の1つ
a11X1+a12X2+ … a1nXn=b1
a21X1+a22X2+ … a2nXn=b2
………………………...an1X1+an2X2+ … annXn=bn
AX=B
nn2n1n
n22221
n11211
aaa
aaa
aaa
...
............
...
...
A
n
1
1
b
b
b
B
n
2
1
X
X
X
X
解法• Bを Aの n+1 行列目に書き足して得られる
拡大行列 Ae• Aeが右のような行列になるような操作を行
い、そのときの b1’,b2’…,bn’ が解となる
n
2
1
nn2n1n
n22221
n11211
b
b
b
aaa
aaa
aaa
...
...
............
...
...
eA
'
...
'
'
...
............
...
...
n
2
1
b
b
b
100
010
001
計算の手順 (1)
2X+3Y+ 4Z= 6 ①3X+5Y+ 2Z= 5 ②4X+3Y+30Z=32 ③
第 1 ステップ
32
5
6
30
2
4
3
5
3
4
3
2
①×0.5 →①’② -①’ ×3 →②’③ -①’ ×4 →③’
X+1.5Y+ 2Z= 3 ’① 0.5Y - 4Z= - 5 ’② - 3Y+22Z= 20 ’③
20
5
3
22
4
2
3
50
51
0
0
1
.
.
計算の手順 (2)
第 2 ステップ
’② ×2 →②”①’ -②” ×1.5 →①”③ -②” ×( - 3) →③”
X+1.5Y+ 2Z= 3 ’① 0.5Y - 4Z= - 4 ’② - 3Y+22Z= 20 ’③
20
4
3
22
4
2
3
50
51
0
0
1
.
.
X +14Z= 15 ”①
Y - 8Z= - 8 ”② - 2Z= - 4 ”③
4
8
15
2
8
14
0
1
0
0
0
1
計算の手順 (3)
第 3 ステップ
”③ ×( - 0.5) →③”’①” -③”’ ×14 →① ”’②” -③”’ ×( - 8) →②”’
X +14Z= 15 ”①
Y - 8Z= - 8 ”② - 2Z= - 4 ”③
4
8
15
2
8
14
0
1
0
0
0
1
X = - 13 ”’①
Y = 8 ”’② Z= 2 ”’③
2
8
13
1
0
0
0
1
0
0
0
1
解法のまとめ
n
2
1
nn2n1n
n22221
n11211
b
b
b
aaa
aaa
aaa
...
...
............
...
...
eA
(k)kj
)1(kik
)1(kij
)1(kkk
)1(kkj
)1(kik)1(k
ij(k)ij
)1(kkk
)1(kkj(k)
ij
aaa
a
aaaa
a
aa
(i=k)
(i=k)
(n)1nii aX
i=1,2,…,nj=k,k+1,…,n+1
k : 第 k ステップ
解法における注意事項• 拡大行列 Ae に含まれる要素を、その行
に含まれる対角要素で割るとき、その除数となる要素をピボットという
• 解法から明らかなように、ピボットがゼロになると、以後の操作ができなくなる
• 操作の過程で、行と行あるいは列と列を交換してなるべく大きなピボットを採用するようにする → ピボット選択
ピボット選択の例
1635
000002.122500001.13
1124
321
321
321
xxx
xxx
xxx
以下の連立 1 次方程式について、以下の 2 つの解法により得られる解の比較を行う
1) ピボットの選択をしない2) 行交換を行う
1) ピボットの交換を行わない場合
16
000002.12
11
3
2
1
1
500001.1
2
5
3
4
25.2
750002.3
75.2
75.1
25.1
25.0
5.1
000001.0
5.0
0
0
1
6
6
6
6
6
5
106250053.5
10750002.3
108749983.1
108750018.1
1025.1
102499975.6
0
1
0
0
0
1
99999.2
125.2
888.0
0
1
0
0
1
0
0
0
1
2) 行交換を行った場合
11
000002.12
16
1
2
3
2
500001.1
1
4
3
5
16
000002.12
11
3
2
1
1
500001.1
2
5
3
4
入れ替え
8.1
400002.2
2.3
4.1
2.0
6.0
2.1
900001.0
2.0
0
0
1
400002.2
8.1
2.3
2.0
4.1
6.0
900001.0
2.1
2.0
0
0
1
入れ替え
9999999.2
0000000.2
0000001.1
1
0
0
0
1
0
0
0
1
7500035.3
5.1
5.3
2500012.1
166666.1
8333333.0
0
1
0
0
0
1
※ 解は x1 = 1, x2=2, x3=3