Professional Documents
Culture Documents
Baigiang 02
Baigiang 02
Bài toán
A : Ma trận hệ số
X : véctơ ẩn số
B : véctơ tự do
1
PHẦN 1
CÁC PHƯƠNG PHÁP GIẢI ĐÚNG
2
Phương pháp khử Gauss
Các phép biến đổi sơ cấp trên dòng
Đổi chỗ hai dòng
Nhân một dòng với một số khác 0
Thay một dòng bằng dòng đó cộng với bội số của
một dòng khác
6 2 2 4 x1 16
Ví dụ 1 12 8
6 10 x2 26
3 13 9 3 x3 19
6 4 1 18 x4 34
3
Phương pháp khử Gauss
6 2 2 4 x1 16
0 4 2 2 x 6
2
0 0 2 5 x3 9
0 0 0 3 x4 3
3 95
x4 1, x3 2
3 2
6 2(2) 2(1) 16 2(1) 2( 2) 4(1)
x2 1, x1 3
4 6
a
aij aij i 2 a2 j ( 2 j n)
a22
To eliminate x2 3 i n
a
b j b j i 2 b2
a22
a
aij aij im amj (m j n )
amm
To eliminate xm m 1 i n
aim
b j b j bm
amm
4
Phương pháp khử Gauss
0 1 x1 1
1 1 x 2
2
Khi hệ số trụ quá bé có thể dẫn đến các sai số
trong quá trình tính toán
10 10 1 x1 1
1 1 x2 2
Giá trị lớn nhất của các tỉ số trên ứng với l4 chọn
phương trình thứ 4 làm phương trình trụ thứ nhất. Đổi
vị trí của l1 và l4, ta có L = [4 2 3 1].
5
Phương pháp khử Gauss
(with scaled partial pivoting)
Cập nhật các ma trận A và B
1 1 2 1 x1 1
3 2 1 4 x2 1
Phương trình
5 8 6 3 x3 1 trụ thứ nhất
4 2 5 3 x4 1
0 1.5 0.75 0.25 x1 1.25
0 0.5 2.75 1.75 x 1.75
2
0 10.5 0.25 0.75 x3 2.25
4 2 5 3 x4 1
6
Phương pháp khử Gauss
(with scaled partial pivoting)
Khử x3: Chọn phương trình trụ thứ ba
0 0 0.7857 0.3571 x1 0.9286
0 0 2.7619 1.7143 x2 1.8571
0 10.5 0.25 0.75 x3 2.25
4 2 5 3 4 1
x
S [2 4 8 5 ] L[ 4 3 2 1 ]
al , 3 2.7619 0.7857
R i i 3,4 L [ 4 3 2 1]
S 4 2
li
7
Phương pháp khử Gauss - Jordan
Đặc điểm:
Sử dụng phép biến đổi sơ cấp trên dòng đưa hệ
phương trình AX = B về dạng I.X = D
Chỉ gồm quá trình thuận (không cần quá trình
ngược)
Ví dụ: Giải hệ phương trình sau bằng phương pháp
Gauss - Jordan 2 2 2 x1 0
4 2 1 x 7
2
2 2 4 x3 2
2 2 2 x1 0
4 2 1 x 7
2
2 2 4 x3 2
Step 1 Eleminate x1 from equations 2and 3
eq1 eq1 / 2
1 1 1 x1 0
4
eq 2 eq 2 eq1 0 6 5 x2 7
1
0 0 2 x3 2
2
eq3 eq3 eq1
1
1 1 1 x1 0
0 6 5 x 7
2
0 0 2 x3 2
Step 2 Eleminate x 2 from equations 1 and 3
eq 2 eq 2 / 6
1 0 0.1667 x1 1.1667
1
eq1 eq1 eq 2 0 1 0.8333 x 1.1667
2
1 0 0 2 x3 2
0
eq3 eq3 eq 2
1
8
Phương pháp khử Gauss - Jordan
1 0 0.1667 x1 1.1667
0 1 0.8333 x 1.1667
2
0 0 2 x3 2
Step 3 Eleminate x 3 from equations 1 and 2
eq3 eq3 / 2
1 0 0 x1 1
0.1667
eq1 eq1 eq3 0 1 0 x2 2
1 0 0 1 x 1
0.8333 3
eq 2 eq 2 eq3
1
2 2 2 x1 0
4 2 1 x2 7
2 2 4 x3 2
1 0 0 x1 1 x1 1
0 1 0 x2 2 x2 2
0 0 1 x3 1 x3 1
Ý tưởng chính
Phân tích ma trận A thành tích hai ma trận L và U
A = L.U
với L là ma trận tam giác dưới, U là ma trận tam
giác trên.
Phương trình AX = B L(UX) = B
Đưa về việc giải hai hệ phương trình
LY B
UX Y
9
Phương pháp phân tích LU
và
u1 j a1 j , 1 j n
ai1
li 1 , 2in
u11
i 1
uij aij lik ukj , 1 i j
k 1
j 1
1
lij [aij lik ukj ], 1 j i
u jj k 1
10
Phương pháp phân tích LU
Do đó
1 0 0 2 2 3
A 2 1 0 0 1 2
1 1 1 0 0 3
Giải hệ LY = B
1 0 0 y1 9 9
2 1 0 y 15 y 3
2
1 1 1 y 3 3
3
Giải hệ UX = Y
2 2 3 x1 9 2
0 1 2 x 3 x 1
2
0 0 3 x 3 1
3
Vậy nghiệm của hệ phương trình
x1 = 2, x2 = 1, x3 =-1
PHẦN 2
PHƯƠNG PHÁP LẶP
11
Giới thiệu
Giới thiệu
Tại sao?
Các phương pháp giải đúng vẫn có thể có sai số
xuất hiện do việc làm tròn số. Sai số này có thể khá
lớn và thường khó kiểm soát.
Vớiphương pháp lặp, người sử dụng kiểm soát
được sai số của nghiệm xấp xỉ sau mỗi bước lặp.
Khi véctơ xấp xỉ ban đầu được chọn “tốt” thì khối
lượng tính toán sẽ ít.
Giới thiệu
n
Nếu T
max tij 1 thì, với mọi véctơ ban đầu X(0),
1 i n
j 1
12
Giới thiệu
Giới thiệu
Giới thiệu
13
Phương pháp lặp Jacobi
Giả thiết:
A là ma trận đường chéo trội nghiêm ngặt
n
aii aij , i 1,2,..., n.
j 1
j i
Lưu ý
Nếu A là ma trận đường chéo trội nghiêm ngặt
thì det(A) 0 và aii 0, với mọi i.
X(m) = T.X(m-1) + C
1 i1 (m1) n
xi(m) [a x aij xi(m1) bi ], i 1, n
aii j1 ij i j i1
14
Phương pháp lặp Jacobi
3 0,1 0,2
A 0,1 7 0,3 là ma trận đường chéo trội.
0,3 0,2 10
Xây dựng công thức lặp
x1m 1 / 3. 0,1x2m 1 0,2 x3m1 7,85
m
x2 1 / 7. 0,1x1
m 1
0,3x3m1 19,3
3
x m 1 / 10. 0,3 x m 1 0,2 x m 1 71,4
1 2
15
Phương pháp lặp Jacobi
Sai số 0 1 / 30 1 / 15
Ma trận: T 1 / 70 0 3 / 70 , ||T|| = 0,1.
3 / 100 1 / 50 0
X(m) = T.X(m-1) + C
1 i 1 n
xi( m ) [ a x ( m) aij xi( m1) bi ], i 1, n
aii j 1 ij i j i 1
16
Phương pháp lặp Gauss - Seidel
20 1 2
A 1 20 1 là ma trận đường chéo trội.
2 1 20
Công thức lặp Gauss - Seidel
x1m 1 / 20. x2m 1 2 x3m 1 12
m
m
x2 1 / 20. x1 x3 13
m 1
3
x m 1 / 20. 2 x m x m 14
1 2
Bước lặp 1: X(1) = (0,6; 0,62; 0,791)
Ta có
X 4 X 3 10 4
17
Phương pháp lặp Gauss - Seidel
20 1 2 20 0 0 0 1 2
A 1 20 1 D L 1 20 0 U 0 0 1
2 1 20 0 0 0
2 1 20
Nhận xét
Trong thực tế, khi ||T|| không quá gần 1 (nhất là
khi ||T|| gần 0) ta thường coi ||X(m) – X(m-1)|| là
sai số của nghiệm xấp xỉ X(m).
Về mặt tính toán, công thức Gauss – Seildel cho
phép tiết kiệm bộ nhớ hơn so với công thức lặp
Jacobi.
18