Tải bản đầy đủ (.pdf) (86 trang)

Bài giảng phương pháp tính

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.02 MB, 86 trang )

1
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP HCM
KHOA KHOA HỌC CƠ BẢN





BÀI GIẢNG
PHƯƠNG PHÁP TÍNH





HUỲNH HỮU DINH
Email:











TP HỒ CHÍ MINH 9/2012
2
Chương 1. PHƯƠNG TRÌNH ĐẠI SỐ VÀ SIÊU VIỆT



Bài 1. MỞ ĐẦU

Trong mục này, ta tìm hiểu những phương pháp giải một số phương trình đại số và siêu việt
dạng:


0
f x

(*), với


f x
là một hàm phi tuyến.
Phương trình trên, trừ một vài trường hợp đặc biệt, có công thức giải đúng, còn nói chung
không có công thức giải đúng (các công trình của nhà Toán học Abel đã khẳng định điều đó). Ở khía
cạnh khác, các hệ số của


f x
trong nhiều trường hợp cũng chỉ là các số gần đúng hoặc nghiệm của


f x
là một biểu thức rất phức tạp, cho nên vấn đề giải đúng phương trình (*) cũng không thật sự
cần thiết. Do đó, chúng ta cần quan tâm đến những phương pháp giải gần đúng, nhất là những
phương pháp có thể dùng máy tính hỗ trợ.
Để giải gần đúng phương trình (*), ta tiến hành các bước sau:
. Thứ nhất là tách nghiệm, nghĩa là tìm một khoảng



;
a b
đủ nhỏ sao cho phương trình (*) có
nghiệm duy nhất


* ;
x a b

.
. Thứ hai là chính xác hóa nghiệm gần đúng đến độ chính xác cần thiết.
Cơ sở để tách nghiệm là những kết quả mà bạn có thể bắt gặp ở bất kì cuốn sách Giải tích nào.
Định lí 1.1.1. Giả sử


f x
liên tục trên


;
a b

 


0
f a f b


. Khi đó phương trình


0
f x

tồn tại ít nhất một nghiệm trong khoảng


;
a b
.
Định lí 1.1.2. Nếu


f x
liên tục trên


;
a b

 


0
f a f b

, hơn nữa, hàm số



f x
có đạo
hàm
 
f x

liên tục trên đoạn


;
a b

 
f x

không đổi dấu trên


;
a b
thì nghiệm nói trên là duy
nhất.












Hình 1.1.1 Hình 1.1.2


3
Các hình 1.1.1 và 1.1.2 cho ta một cách nhìn trực giác về tính đúng đắn của định lí 1.1.2
Bước tách (li) nghiệm thường được tiến hành nhờ phương pháp chia đôi hoặc phương pháp đồ
thị.
Nguyên tắc thực hiện phương pháp chia đôi như sau:
Xác định
 


0
f a f b

, sau đó chia đôi đoạn


;
a b
và gọi


1 1
;
a b

là một trong hai nữa ở trên
sao cho




1 1
0
f a f b

. Lại chia đôi đoạn


1 1
;
a b
và gọi


2 2
;
a b
là một trong hai đoạn con mà




2 2
0
f a f b


; quá trình cứ thế tiếp tục, (nếu tại
i
a



0
i
f a

hoặc
i
b



0
i
f b

thì ta nói
giá trị đó là nghiệm đúng của phương trình


0
f x

)
Nguyên tắc của phương pháp đồ thị như sau: Nghiệm của phương trình



0
f x

là hoành độ
giao điểm của đồ thị hàm số


y f x

với trục hoành; hoặc ta biến đổi


0
f x

về dạng




x x
 

. Khi đó nghiệm của phương trình


0
f x


là hoành độ giao điểm của hai đồ thị


y x





y x


. Sau đây là một số ví dụ cho phương pháp đồ thị (được hỗ trợ bằng Maple)
Ví dụ 1.1.1:
Xét phương trình
3
10 0
x x
  
. Ta vẽ đồ thị
hàm số
3
10
y x x
  
theo hình vẽ dưới đây
(hình 1.1.3)
Từ hình vẽ ta nhận thấy phương trình trên có một
khoảng li nghiệm là khoảng



2,2;2,4






Hình 1.1.3

Ví dụ 1.1.2: Xét phương trình
 
2
cos
x x


. Ta vẽ
đồ thị của hai hàm số
2
y x




cos
y x



. Từ hình vẽ
ta nhận thấy phương trình
 
2
cos
x x


có hai khoảng li
nghiệm là


0;1



1;0

.




Hình 1.1.4
3
10
y x x
  
2
y x




cos
y x


4
Ví dụ 1.1.3: Tìm các khoảng li nghiệm của phương trình
2 2
arctan 2 0
x x x
   
bằng
phương pháp đồ thị
Giải
Phương trình đã cho tương đương với
2 2
arctan 2
x x x
  

Ta vẽ đồ thị hai hàm số
2
arctan 2
y x
 
(đường màu đỏ) và
2
y x x

 
(đường màu
xanh). Từ hình vẽ ta tìm được hai khoảng li nghiệm của phương trình là


1; 0,5
 



1,5;2
.











Hình 1.1.5
Sau khi đã tách được nghiệm thì công việc tiếp theo là chính xác hóa nghiệm đến độ chính xác
cần thiết. Để thực hiện bước này, ta có thể sử dụng một trong các phương pháp sau: phương pháp lặp,
phương pháp dây cung, phương pháp tiếp tuyến, phương pháp Muller,…Tất cả phương pháp được
nêu chúng ta đều có thể lập trình bằng ngôn ngữ Maple.















2
y x x
 
2
arctan 2
y x
 
5
Bài 2. PHƯƠNG PHÁP LẶP ĐƠN

Xét phương trình


0
f x

(1)
có khoảng li nghiệm là



;
a b
.
Ta biến đổi phương trình (1) về dạng tương đương:


x x


(2)
Với xấp xỉ ban đầu
0
x
thuộc khoảng


;
a b
đã cho, ta xây dựng dãy


0,
n
n
x
 
nhờ vào hệ thức:



1
, 0
n n
x x n


  
.
Nếu dãy


0,
n
n
x
 
có giới hạn
lim *
n
n
x x


thì
*
x
chính là nghiệm đúng của phương trình
(2) và cũng là nghiệm của (1)
Tiếp theo, ta tìm hiểu một số điều kiện để dãy



0,
n
n
x
 
hội tụ.
Định lí 1.2.1. Giả sử hàm số


y x


khả vi liên tục trên


;
a b
và với mọi


;
x a b

thì
 


;

x a b


. Khi đó, nếu ta có
 
1
x L


 
với mọi


;
x a b

thì dãy số


0,
n
n
x
 
được xây
dựng bởi hệ thức


1
, 0

n n
x x n


  
hội tụ đến nghiệm
*
x
của phương trình


0
f x

và ta có
các ước lượng sai số
1 1
*
1
n n n
L
x x x x
L
 
  


1
1 1 0
*

1
n
n
L
x x x x
L


  


Ta mô phỏng phương pháp lặp bằng hình vẽ như sau









Hình 1.2.1
Nhận xét 1.2.1: Phương pháp lặp đơn có tính chất tự điều chỉnh, nghĩa là nếu tại một vài bước
tính toán trung gian ta mắc phải sai số thì dãy


0,
n
n
x

 
vẫn hội tụ đến
*
x
, tất nhiên chỉ một vài
bước sai và sai số mắc phải không vượt ra ngoài đoạn.
y x



y x


6
Ta mô phỏng nhận xét này bằng hình vẽ như sau











Hình 1.2.2
Nhận xét 1.2.2: Một tính chất đặc biệt của phương pháp lặp là có thể đánh giá ngay từ đầu số
bước lặp mà ta cần phải làm để có được độ chính xác theo yêu cầu. Thật vậy, từ biểu thức
0 1

*
1
n
n
L
x x x x
L
  


nếu ta muốn có nghiệm gần đúng với sai số

thì ta sẽ dừng lại ở bước lặp thứ
n
sao cho:
0 1
1
n
L
x x
L

 


Từ đây ta có đánh giá cho
n

 
1 0

1
ln
ln
L
x x
n
L

 

 
 

 

 
 
 
 
 

kí hiệu



chỉ phần nguyên trên của số

. Ví dụ
2,6 3; 4,1 5; 2,1 2
     

    
     
.
Nhận xét 1.2.3: Trên đây ta nhắc đến việc chuyển từ (*) sang dạng tương đương (**) sao cho
điều kiện
 


1, ;
x L x a b


   
được thỏa mãn. Về vấn đề này có mấy nhận xét sau:
. Giả sử
 
0
m f x M

  
(với trường hợp
 
0
M f x m

  
ta làm tương tự). .
. Ta có thể chuyển từ (*) sang dạng tương đương sau:





x x f x x
 
  
với
1
M
  (***)
. Ta thấy rằng
   
 
 
1 1 1 1, ;
f x m
x f x x a b
M M
 

 
        

. Do đó phép lặp được xây dựng trên (***) sẽ hội tụ đến nghiệm cần tìm.


y x


y x


7
Tóm tắt thuật toán tìm nghiệm gần đúng phương trình (1) với khoảng li nghiệm


;
a b

bằng phương pháp lặp
Bước 1: Biến đổi phương trình (1) về dạng


x x


với
 
1
x L


 
với mọi


;
x a b

.
Bước 2: Xây dựng dãy



0,
n
n
x
 
thông qua các hệ thức
.


0
;
x a b

(thông thường ta lấy
0
x
là trung điểm của đoạn


;
a b
)
.









1 0 2 1 3 2 1
; ; ; ;
n n
x x x x x x x x
   

   

Bước 3: Đánh giá sai số nghiệm gần đúng dựa vào công thức
1 1
*
1
n n n
L
x x x x
L
 
  

.
Ví dụ 1.2.1: Giải phương trình


ln 1 10 0
x x
   
bằng phương pháp lặp (lặp bốn bước,
đánh giá sai số ở bước 4), biết phương trình có khoảng li nghiệm là



13;14

Giải
Biến đổi phương trình đã cho về dạng


ln 1 10
x x
  

Đặt
 


ln 1 10
x x

  
. Ta thấy rằng
 
 
1 1
12;13
1 13
x L x
x



    


Chọn
0
12,5
x

. Ta xây dựng dãy lặp theo công thức




1
ln 1 10, 0
n n n
x x x n


     

Từ đây ta tính được

1
2
3
4
12,602690
12.610268
12.610824

12.610865
x
x
x
x





Ta tiến hành đánh giá sai số của nghiệm gần đúng
4
x
. Ta có

6
4 4 3
* 3.10
1
L
x x x x
L

   


Ví dụ 1.2.2: Giải phương trình
3 0
x
x e

 
bằng phương pháp lặp với sai số của nghiệm gần
đúng không vượt quá
4
10

biết khoảng li nghiệm là
1
;1
2
 





 

Giải
Biến đổi phương trình về dạng
3
x
e
x 
Đặt
 
3
x
e
x  . Ta thấy rằng

 
0,906094
3 3
x
e e
x L


   

8
Chọn
0
0,75
x

. Ta xây dựng dãy lặp theo công thức
 
1
3
n
x
n n
e
x x

  .
Từ hệ thức trên ta được

1

2
19
20
0,705667
0,675065

0,619079
0,619072
x
x
x
x





Đánh giá sai số của nghiệm gần đúng
20
x
. Ta có

5 4
20 20 19
* 6,6.10 10
1
L
x x x x
L
 

    


Vậy ta lấy
20
* 0,619072
x x
 
.
Ví dụ 1.2.3: Giải phương trình


2
2 cos2 2 0
x x x
  
bằng phương pháp lặp (lặp 3 bước,
đánh giá sai số ở bước 3) biết khoảng li nghiệm là


3, 4;4
.
Giải
Việc tìm hàm


x

của bài toán này khá khó khăn. Ở đây ta sẽ áp dụng các kết quả trong mục
nhận xét 1.2.3

Đặt
 


2
2 cos2 2
f x x x x
  

Ta có
 


2 cos2 4 sin 2 2 2
f x x x x x

   
. Ta sẽ tìm giá trị lớn nhất và nhỏ nhất của hàm
số
 
y f x


. Có nhiều phương pháp để tìm các giá trị này, ở đây ta dùng phương pháp đồ thị với sự
hỗ trợ của Maple











Dựa vào đồ thị trên ta nhận được
 
M f x m

 
với


4 20,120732
M f

  



3, 4 6,941147
m f

  

Ta biến đổi phương trình đã cho về dạng
9




2
2 cos2 2
20,120731
x x x
x x
 
 

Đặt
 


2
2 cos2 2
20,120731
x x x
x x
 
 
. Ta có

 
 
6,941147
1 1 0,655025
20,120732 20,120732
f x
x L




     

Chọn
0
3,7
x

. Ta xây dựng dãy lặp theo công thức

 


2
1
2 cos2 2
20,120732
n n n
n n n
x x x
x x x

 
  
Từ đây ta tính được

1
2
3
3,717656

3,721257
3,721950
x
x
x




Ta đánh giá nghiệm gần đúng
3
x
. Ta có

3 3 2
* 0, 001316
1
L
x x x x
L
   


Để tìm max và min của hàm số
 
f x

ta còn thêm một phương pháp nữa là đánh giá tính đơn
điệu của hàm số
 

y f x


. Thật vậy, ta có

 
8 sin 2 8 cos2 2
f x x x x

   

Nhận xét rằng
3
3,4 ; ;4 ;
8 4 8
  
   
 
 
    
 
 
 
 
 
 
. Từ đây ta suy ra

 





8 sin 2 8 cos 2 2 8sin 6,8 32 cos 8 2 1,296906 0
f x x x x

          

Vậy hàm số
 
y f x


là hàm đơn điệu giảm. Bước tiếp theo ta làm giống như cách trên.












10
Bài 3. PHƯƠNG PHÁP NEWTON (PHƯƠNG PHÁP TIẾP TUYẾN)

Trong mục này, ta xét lại phương trình



0
f x

.
Giả sử rằng ta đã tìm được một khoảng li nghiệm của phương trình trên là khoảng


;
a b
, đồng
thời
   
,
f x f x
 
liên tục và không đổi dấu trên đoạn


;
a b
. Khi đó, với
0
x
là xấp xỉ ban đầu được
chọn, ta xây dựng dãy


0,

n
n
x
 
theo công thức




1
, 0
n
n n
n
f x
x x n
f x

   

.
Ta có thể chứng minh được, với một số điều kiện thích hợp phương pháp Newton hội tụ,
chẳng hạn với điều kiện sau
Định lí 1.3.1. Nếu phương trình


0
f x





;
a b
là khoảng li nghiệm, đồng thời
   
,
f x f x
 
liên tục và không đổi đấu trên đoạn


;
a b
, với


0
;
x a b

sao cho




0 0
0
f x f x




(
0
x
,được gọi là điểm Fourier, thường được chọn là một trong hai đầu mút a hoặc b). Khi đó dãy


0,
n
n
x
 
xây dựng như trên hội tụ đến nghiệm
*
x
của phương trình


0
f x

và ta có ước lượng
 
2
1 1
*
2
n n n
M

x x x x
m
 
  
với
,
m M
là hai hằng số thỏa mãn
 


0 , ;
m f x x a b

   

 


, ;
f x M x a b

  

Nhận xét 1.3.1: Về mặt hình học, để xác định phần tử
1
n
x

, xuất phát từ điểm nằm trên đồ thị

hàm số


y f x

có hoành độ
n
x
, ta kẻ tiếp tuyến với đường cong. Hoành độ giao điểm của tiếp
tuyến với trục hoành sẽ là
1
n
x

.










Hình 1.3.1
Tóm tắt thuật toán tìm nghiệm gần đúng phương trình


0

f x

với khoảng li nghiệm


;
a b
bằng phương pháp tiếp tuyến
0
A
1
A
2
A


y f x

11
Bước 1: Chứng tỏ
   
,
f x f x
 
không đổi dấu trên


;
a b
.

Bước 2: Xây dựng dãy


0,
n
n
x
 
như sau
. Nếu
   
. 0
f a f a


thì chọn
0
x a

, ngược lại chọn
0
x b


. Các số hạng còn lại xác định bởi hệ thức




1

, 0
n
n n
n
f x
x x n
f x

   


Bước 3: Đánh giá sai số của nghiệm gần đúng dựa vào công thức

2
1 1
*
2
n n n
M
x x x x
m
 
  
với
,
m M
là hai hằng số thỏa mãn
 



0 , ;
m f x x a b

   

 


, ;
f x M x a b

  

Thông thường ta lấy
 
 
 
 
; ;
min ; max
x a b x a b
m f x M f x
 
 
 

Ví dụ 1.3.1: Dùng phương pháp Newton giải phương trình
3
2 10 0
x x

  
với độ chính xác
10
10

, biết khoảng li nghiệm là


2; 3
.
Giải
Đặt
 
3
2 10
f x x x
  
. Khi đó ta có:

 


 
 
2
3 2 0, 2;3
6 0 , 2;3
f x x x
f x x x


    

   

Ta thấy rằng




2 2 0
f f


nên ta chọn
0
3
x

.
Ta xây dựng dãy


0,
n
n
x
 
như sau:





3
1
2
2 10
, 0
3 2
n
n n
n n n
n n
f x
x x
x x x n
f x x

 
     



Từ đây ta tính được

1
2
3
4
2,560000
2,466164

2,462053
2,462045
x
x
x
x





Tiếp theo ta đánh giá sai số của nghiệm gần đúng
4
x
. Ta có

2
4 4 3
*
2
M
x x x x
m
  
với
12

 
 
 

 
 
 
2
2;3 2;3
2;3 2;3
min min 3 2 10
max max 6 18
x x
x x
m f x x
M f x x
 
 

   

  

Vậy
12 10
4
* 7,2.10 10
x x
 
  

Ta lấy
4
* 2,462045

x x
 

Ví dụ 1.3.2: Giả sử bạn vay một người bạn
100
(triệu VND) với thỏa thuận là sẽ trả cho anh
ta trong 5 năm, mỗi năm một lần, các khoản tiền


21,22,23,24,25
. Lợi suất
R
của dòng tiền tệ này
là nghiệm thực (duy nhất) của phương trình









52 3 4
21 22 23 24 25
100
1 1
1 1 1
R R
R R R

    
 
  
(1)
Biết phương trình (1) có khoảng li nghiệm là


0;1
, giải phương trình bằng phương pháp
Newton (lặp 7 bước, đánh giá sai số ở bước 7).
Giải
Đặt
1
x R
 
, phương trình (1) trở thành

 
2 3 4 5
5 4 3 2
21 22 23 24 25
100
100 21 22 23 24 25 0 2
x x x x x
x x x x x
    
      

Phương trình (2) có khoảng li nghiệm là



1;2
. Gọi


f x
là vế trái của phương trình (2). Ta có

 
 
 
4 3 2
3 2
2
500 84 66 46 24
2000 252 132 46
6000 504 132
f x x x x x
f x x x x
f x x x

    

   

  

Ta thấy rằng
 
6000 504 2 132 4860 0

f x

     

Vậy
 
f x

là một hàm tăng trên


1;2
. Ta suy ra

 
3 2
2000 1 252 1 132 46 1570 0
f x

       

Từ đây ta cũng khẳng định
 
f x

là một hàm tăng trên


1;2
. Do đó


 
500 84 66 46 24 280 0
f x

      

Ta thấy rằng




1 1 0
f f


nên ta chọn
0
2
x


Ta xây dựng dãy


0,
n
n
x
 

như sau





5 4 3 2
1
4 3 2
100 21 22 23 24 25
, 0
500 84 66 46 24
n
n n n n n
n n n
n n n n n
f x
x x x x x
x x x n
f x x x x x

    
     

   

Từ đây ta tính được

1
1,636874

x


13

2
3
4
5
6
7
1, 364560
1,178500
1, 078697
1,049367
1,047044
1, 047030
x
x
x
x
x
x








Ta đánh giá sai số nghiệm gần đúng
7
x
. Ta có

2
7 7 6
*
2
M
x x x x
m
  
với

 
 


 
 
 
1;2
1;2
max 2 14682
min 1 280
x
x
M f x f
m f x f



 
  
 
  

Vậy
9
7
* 5,2.10
x x

 
.
Ta lấy
7
1 1, 047030 0,047030
R x R
    

Ví dụ 1.3.3: Xây dựng một thuật toán tính gần đúng số
a
, với sai số

tùy ý cho trước,
trong đó
a
không là bình phương của một số hữu tỉ nào.
Giải

Ta xây dựng thuật toán cho trường hợp
2
a

, trường hợp tổng quát làm tương tự.
Ta thấy
2
là nghiệm dương duy nhất của phương trình
2
2 0
x
 

Phương trình trên có khoảng li nghiệm là


1;2
chứa nghiệm
2
.

 


 


2 0, 1;2
2 0, 1;2
f x x x

f x x

   

   

Ta có




1 1 0
f f


nên ta chọn
0
2
x

.
Ta xây dựng dãy


0,
n
n
x
 
như sau






2 2
1
2 2
2 2
n
n n
n n n
n n n
f x
x x
x x x
f x x x

 
    


Từ đây ta tính được

1
2
3
4
1,500000
1, 416667

1, 414216
1, 414214
x
x
x
x





14
Ta đánh giá sai số nghiệm gần đúng
4
x
. Ta có
2
12
4 4 3
* 2.10
2
M
x x x x
m

   
Nhận xét 1.3.2: Theo định lí 1.3.1, xấp xỉ ban đầu


0

;
x a b

phải thỏa mãn




0 0
0
f x f x



thì dãy


0,
n
n
x
 
xây dựng theo hệ thức




1
, 0
n

n n
n
f x
x x n
f x

   

sẽ hội tụ về nghiệm đúng
*
x
.
Cõ lẽ chúng ta cũng sẽ tự hỏi nếu




0 0
0
f x f x


thì dãy


0,
n
n
x
 

là hội tụ hay phân kì. Câu trả
lời là dãy


0,
n
n
x
 
có thể hội tụ hoặc phân kì. Chúng ta xem hai hình vẽ minh họa sau










Hình 1.3.2 Hình 1.3.3
Hình 1.3.2 cho ta biết dãy


0,
n
n
x
 
phân kì, trong khí đó dãy



0,
n
n
x
 
trong hình 1.3.3 là
hội tụ.


















y f x




y f x

15
Chương 2. HỆ PHƯƠNG TRÌNH TUYẾN TÍNH

Bài 1. PHƯƠNG PHÁP LẶP ĐƠN

2.1.1. Chuẩn trong
k




k
M


Định nghĩa
Trước hết ta tìm hiểu lại các ký hiệu
k




k
M


1

2
1 2
: , , ,

k
k
k
x
x
x x x x
x
 
 
 

 


 



 


 

 



  
 


 
 

 


 


 



 
 
 
 
 

 
11 12 1
21 22 2
1 2


: , , 1,



k
k
k ij
k k kk
a a a
a a a
M A a i j k
a a a
 
 
 

 


 



 


 

 


    

 


 
 

 


 


 



 
 
 
 
 
Trong
k

người ta thường xét hai chuẩn quen thuộc sau
1
1
1
max
i

i k
k
i
i
x x
x x

 





Với ma trận vuông




ij k
k
A a M
 

ta sẽ có các chuẩn tương ứng
1
1
1
1
1
max

max
k
ij
i k
j
k
ij
j k
i
A a
A a

 

 






Tính chất
Trong phần này ta chỉ đưa ra những tính chất cho chuẩn

, đối với chuẩn
1
ta có các tính
chất tương tự.
Sau đây ta nêu một số tính chất cơ bản của chuẩn


(trong
k




k
M

)
1.
0,
k
x x

  

. Đẳng thức xảy ra khi và chỉ khi
0
k
x


.
2.
, ,
k
x x x
  
 

    
 
.
3.
, ,
k
x y x y x y

 
    

.
4.


0,
k
A A M

  

. Đẳng thức xảy ra khi và chỉ khi
0
k
A

.
5.



, ,
k
A A A M
  
 
    
 
.
16
6.


, ,
k
A B A B A B M

 
    

.
7.


, ,
k
AB A B A B M

 
  



8.


, ,
k
k
Ax A x A M x

 
    
 

2.1.2. Phương pháp lặp đơn
Xét hệ phương trình
Ax b

(*)
Để giải hệ phương trình
Ax b

bằng phương pháp lặp đơn, ta biến đổi hệ phương trình về
dạng
x Bx g
 
(2.1.1)
Sau đó với


0

k
x


, ta thiết lập dãy
 


0,
n
n
x
 
như sau



 
1
, 0
n n
x Bx g n

   
(2.1.2)
Với một số điều kiện về ma trận
B
, dãy sẽ hội tụ đến nghiệm đúng
*
x

của hệ (*). Phương
pháp lặp xác định theo hệ thức (2.1.2) để giải hệ phương trình (*) được gọi là phương pháp lặp đơn
(phương pháp Jacobi).
Sau đây ta xét một số điều kiện của ma trận
B
để dãy
 


0,
n
n
x
 
hội tụ đến nghiệm đúng
*
x

của hệ (*).
Định lí 2.1.1. Nếu
1
B


thì với mọi


0
k
x



, dãy
 


0,
n
n
x
 
xác định bởi (2.1.1) hội tụ
đến nghiệm duy nhất
*
x
của hệ (*), hơn nữa ta có các ước lượng
   
 
1 * 1
1
n n n
B
x x x x
B
 

 

  



 
 
 
* 1 0
1
n
n
B
x x x x
B

 

  


Nhận xét 2.1.1: Trong định lí 2.1.1 nếu ta thay chuẩn

bằng chuẩn
1
thì kết quả vẫn
không thay đổi
Vấn đề đưa hệ phương trình (*) về dạng (2.1.1) với ma trận
B
thỏa mãn điều kiện
1
B



(
hoặc
1
1
B

) là không tầm thường. Nói chung, với mỗi ma trận
A
cụ thể phải có một kĩ thuật
tương ứng kèm theo. Kết quả dưới đây cho ta vài trường hợp điển hình.
Định lí 2.1.2. Giả sử ma trận


ij
k
A a

thỏa mãn một trong hai điều kiện sau:
a.
1
, 1,
k
ij ii
i j
j
a a i k


  



b.
1
, 1,
k
ij jj
j i
i
a a j k


  


17
Khi đó luôn có thể đưa về hệ phương trình (1) về dạng (2) với điều kiện
1
B


(với điều
kiện a.) hoặc
1
1
B

(với điều kiện b.)
Chứng minh
Trường hợp 1: Điều kiện a. được thỏa.
Ta viết lại hệ (*) ở dạng:

1
, 1,
k
ii i ij j i
i j
j
a x a x b i k


  


Do đó ta có
1
, 1,
k
ij
i
i j
i j
ii ii
j
a
b
x x i k
a a


 




   





 


Ta suy ra
1
12 1
11
11 11
21 2
2
22 22
22
1 2
0
0
,
0
k
k
k k
k
kk kk

kk
b
a a
a
a a
a a
b
a a
a
B g
a a
b
a a
a
 
 


 

























 
 
 










 



































 








 


 


   



Từ điều kiện a. ta rút ra kết luận
1
1
max 1
k
ij
i k
i j
ii
j
a

B
a

 


 


Trường hợp 2: Điều kiện b. được thỏa.
Ta viết lại phương trình (*) dưới dạng
1
, 1,
k
ii i ij j i
i j
j
a x a x b i k


  


Đặt
, 1,
i ii i
z a x i k
 
thì được hệ
1

, 1,
k
ij
i j i
i j
ii
j
a
z z b i k
a


 



   





 


Vậy ta nhận được hệ phương trình
z Bz g
 
, ở đó:
18

12 1
22
1
21 2
2
11
1 2
11 22
0
0
,
0
k
kk
k
kk
k
k k
a a
a a
b
a a
b
a a
B g
b
a a
a a
 
 







 














 
 










 



 






















 





 




 



   


Từ điều kiện b., ta có:
1
1
1
max 1
k
ij
j k
j i
ii
i
a
B
a

 


 

.
Nhận xét 2.1.2:
Nếu


1 2
* *, *, , *
k
z z z z

là nghiệm của hệ
z Bz g
 
thì
1 2
11 22
* * *
* , , ,
k
kk
z z z
x
a a a
 










 

nghiệm của hệ phương trình (*).
Ví dụ 2.1.1: Cho hệ phương trình
5 7
10 12
20 22
x y z
x y z
x y z


  




  





  




a. Giải hệ phương trình sau bằng phương pháp lặp đơn với yêu cầu sai số không quá
3
5.10

.
b. Tìm số bước lặp nhỏ nhât để nghiệm gần đúng có sai số không quá
6
10


Giải
a. Hệ phương trình này thỏa mãn điều kiện a. trong định lí 2.3.2 . Ta đưa hệ về dạng:
0 0,2 0,2 1,4
0,1 0 0,1 1,2
0,05 0,05 0 1,1
x x y z
y x y z
z x y z


   





    




    




Ta thấy
0 0,2 0,2 1,4
0,1 0 0,1 , 1,2
0,05 0,05 0
1,1
B g
 
 
 

















   








 
 



 


 
 
 

Ta xét điều kiện hội tụ
0, 4 1
B


 

19
Đặt
 
0
1,4
1,2
1,1
x g
 









 




 





 
. Xét dãy
 


0,
n
n
x
 
được thiết lập như sau


 
1
, 0
n n
x Bx g n

   
.
Từ đây ta suy ra
       
1 2 3 4
0,940000 1,016000 0,997100 1, 000680
0,950000 ; 1,009000 ; 0,997850 ; 1, 000415
0,970000 1,005500 0,998750 1, 000253
x x x x
       
   

   
   
   
   
   
   
   
   
   
   
   
   
   
      
  
   
  
   
       




Ta đánh giá sai số nghiệm


4
x
. Ta có


     
4 4 3 3
* 0,002387 5.10
1
B
x x x x
B


 

    


Vậy ta lấy
 
4
1,000680
1,000415
1,000253
x x
 










 




 




 

b. Gọi
n
là số bước lặp nhỏ nhất thỏa
 
6
* 10
n
x x

 

Áp dụng công thức ước lượng sai số ta có
 
 
 
1 0
*

1
n
n
B
x x x x
B



  


Ta xét bất đẳng thức

 
 
 
 
 
1 0 6
6
1 0
10
1
1 10
ln
15
ln
n
B

x x
B
B
x x
n
B








 

 
 

 
 
 
 

 
 
 
 
  
 

 
 
 
 










20
Bài 2. PHƯƠNG PHÁP SEIDEL

Trong mục này ta tiếp tục nghiên cứu cách giải gần đúng hệ phương trình
Ax b

(*).
Giả sử (*) được đưa về dạng
x Bx g
 
(2.2.1).
Giả sử rằng đã có các xấp xỉ





 
0 1
, , ,
n
x x x
thì lúc đó
       


1 1 1 1
1 2
, , ,
n n n n
k
x x x x
   

được
xác định bởi:

 
 
   
 
1
1 1 1
1
1
1 1
1

, 2,
k
n n
j j
j
i k
n n n
i ij j ij j i
j j i
x b x g
x b x b x g i k



 
 



 






   






 
(2.2.2)
Dãy
 


0,
n
n
x
 
được xây dựng theo thuật toán trên được gọi là dãy xấp xỉ xây dựng theo thuật
toán Seidel (hoặc phương pháp Seidel). Ta sẽ xem xét điều kiện của ma trận
B
để dãy trên hội tụ về
nghiệm duy nhất
*
x
của hệ phương trình (*).
Định lí 2.4.1. Nếu
1
1
max 1
k
ij
i k
j
B b


 

 



 





 

thì dãy
 


0,
n
n
x
 
hội tụ đến nghiệm duy nhất
*
x
của hệ phương trình (*), đồng thời ta có ước lượng sai số

   

 
1 * 1
1
n n n
U
x x x x
B
 

 

  

với mọi
0
n


11 12 1
22 2

0

0 0
k
k
kk
b b b
b b
U

b
 













 











 

Vấn đề đưa hệ phương trình (*) về dạng (2.2.1) với ma trận

B
thỏa mãn điều kiện
1
B



ta đã xem xét trong phương pháp lặp đơn. Ở đây, ta sẽ nhắc lại kết quả này.
Định lí 2.4.2. Giả sử ma trận


ij
k
A a

thỏa mãn điều kiện
1
, 1,
k
ij ii
i j
j
a a i k


  

. Khi đó
luôn có thể đưa được hệ (*) về dạng (2.2.1) với điều kiện
1

B



0, 1,
ii
b i k
 
.
Ví dụ 2.2.1: Giải hệ phương trình tuyến tính bằng phương pháp Seidel qua ba bước (đánh giá
sai số ở bước ba)
0,1 0,1 1,2
0,1 0,1 1,2
0,1 0,1 1,2
x y z
x y z
x y z


  




  




  





Giải
Ta đưa hệ về dạng
21
0 0,1 0,1 1,2
0,1 0 0,1 1,2
0,1 0,1 0 1,2
x x y z
y x y z
z x y z


   




    




    





Từ đây ta được
0 0,1 0,1 1,2
0,1 0 0,1 , 1,2
0,1 0,1 0 1,2
B g
   
 
 
 
 
 
 
 
 
 
 
   
 
 
 
 
   
 
 
 
 
 
   

Ta xét điều kiện hội tụ

0,2 1
B

 

Đặt
 
0
0
0
0
x
 














 





 
. Xét dãy
 


0,
n
n
x
 
được thiết lập như sau

1
1 1
1 1 1
0,1 0,1 1,2
0,1 0,1 1,2
0,1 0,1 1,2
n n n
n n n
n n n
x y z
y x z
z x y

 
  



   




   




   




trong đó
 
, 0
n
n
n
n
x
x y n
z
 









  





 


 
.
Từ đó ta suy ra
       
1 2 3 4
1,200000 0,994800 0,999649 0,999995
1,080000 ; 1, 003320 ; 1,000016 ; 0,999997
0,972000 1,000188 1, 000033 1, 000001
x x x x
       
   
   
   
   
   
   

   
   
   
   
   
   
   
   
      
  
   
  
   
       




Ta đánh giá sai số của


4
x
. Ta có

     
4 4 3
0,2
* .0, 000301 0,000075
1 1 0,2

U
x x x x
B

 

    
 

trong đó
0 0,1 0,1
0 0 0,1
0 0 0
U
 
 









 





 




 
.




22
Chương 3. ĐA THỨC NỘI SUY VÀ PHƯƠNG PHÁP BÌNH PHƯƠNG BÉ NHẤT

Bài 1. MỞ ĐẦU

Thông thường, một hàm số có hai cách biểu diễn. Dạng thứ nhất bằng biểu thức giải tích với
các kết hợp khác nhau của hàm sơ cấp. Dạng thứ hai thì hàm số được cho như một bảng số. Ta chú ý
đến dạng thứ hai. Giả sử ta có hàm một biến


y f x




f x
không thể cho dưới dạng biểu thức
giải tích, nhưng bằng cách nào khác ta có thể nhận được các giá trị của
y

tại các giá trị khác nhau của
x
(chẳng hạn bằng đo đạc hay quan trắc hoặc ghi chép thống kê) và ta lập được bảng số dạng

x

0
x

1
x



n
x

y

0
y

1
y



n
y



Ta luôn có thể đánh số lại cho thích hợp nên có thể viết
0 1

n
x x x
  
. Các điểm
0 1
, , ,
n
x x x
được gọi là các mốc.
Một vấn đề thực tiễn thường nảy sinh là nếu có ta có hàm số ở dạng bảng thì bằng cách nào ta
có thể xác định giá trị của
y
tại một giá trị
x
nào đó không trùng với một giá trị nào trong các giá trị
0 1
, , ,
n
x x x
. Thuật toán tìm giá trị
y
như vậy được gọi là phép nội suy (nếu


0
;

n
x x x

) hoặc ngoại
suy (nếu


0
;
n
x x x

). Vì vậy có thể gọi phép nội suy là phép “chèn” hay phép liên tục hóa các giá trị
của hàm số cho dưới dạng bảng tại các giá trị của biến số không trùng với các mốc.
Trên đây chúng ta nói về phép nội suy và ngoại suy cho hàm một biến số. Một cách hoàn toàn
tương tự, ta có thể mở rộng cho hàm số nhiều biến, nghĩa là ta có thể nội suy hoặc ngoại suy đối với
bảng nhiều chiều, chẳng hạn với độ nhớt của chất lỏng theo hai biến áp suất và nhiệt độ.
Chúng ta không chỉ cần tính giá trị của hàm số


y f x

tại các giá trị trung gian của biến số
mà đôi khi cần phải tính đạo hàm của hàm số


f x
ở bậc bất kì nào đó hoặc tính tích phân của nó
trên một khoảng xác định. Những phép phân tích như vậy giúp chúng ta phát hiện ra các qui luật tổng
quát chi phối mối quan hệ của các yếu tố tham gia xác định một quá trình hay hiện tượng vật lý.

Một ứng dụng khác của phép nội suy là xấp xỉ một hàm cho trước bằng một hàm số khác
nhằm mục đích đơn giản hóa cách tính giá trị của hàm đã cho. Ta hình dung trường hợp sau: trong
một thuật toán nào đó ta phải tính nhiều lần giá trị của một hàm số với một biểu thức rất phức tạp ở
nhiều giá trị khác nhau của biến số. Để tiết kiệm thời gian tính toán nhưng vẫn đảm bảo độ chính xác
đã đặt ra, ta sẽ chủ động chia miền biến đổi của biến số bằng
1
n

mốc kể cả các điểm biên và tiến
hành tính các giá trị của hàm số tại các mốc đó để có được một bảng số. Khi đó để tính giá trị của
hàm đã cho tại các giá trị khác nhau của biến số ta sẽ sử dụng phép nội suy với số phép tính ít hơn
nhiều lần so với cách tính trực tiếp mà độ chính xác vẫn đảm bảo.
23
Trên đây chúng ta nói đến hai ứng dụng chủ yếu của phép nội suy và ngoại suy. Trong trường
hợp thứ nhất thì hàm số được cho ở dạng rời rạc hóa vì không biết biểu thức giải tích của nó, còn
trong trường hợp thứ hai thì hàm được cho ở dạng giải tích nhưng rất phức tạp cho việc tính toán nên
ta phải rời rạc hóa nó trước khi dung phép nội suy. Sau đây chúng ta sẽ đi vào một số phép nội suy
thông dụng

































24
Bài 2. ĐA THỨC NỘI SUY LAGRANGE

Đa thức là một lớp hàm “đẹp”, có đạo hàm ở mọi bậc, cách tính giá trị của nó cũng như tính
đạo hàm, tích phân rất đơn giản. Ngoài ra, các công trình của nhà toán học Weirstrass cho thấy, nếu
hàm số


f x
liên tục trên đoạn



;
a b
thì với mọi số

dương tùy ý có thể tìm được một đa thức


P x

bậc
n
(phụ thuộc vào

) sao cho
   


, ;
f x P x x a b

   
.
Những lí do trên là cơ sở tốt để người ta chọn đa thức làm hàm xấp xỉ của phép nội suy. Định
lý Weirstrass cũng cho thấy, bậc đa thức càng cao thì độ chính xác của xấp xỉ càng tăng. Tuy nhiên,
với ý nghĩa ứng dụng thực tế thì điều đó không phải là như vậy, vì đa thức bậc cao cũng mất rất nhiều
thời gian tính toán.
3.2.1. Đa thức nội suy Lagrange với mốc bất kì
Xét hàm số



y f x

với


;
x a b

.
Cho


; , 0,
i
x a b i n
 
thỏa
i j
x x

nếu
i j


0
;
n
x a x b

 
. Đặt


, 0,
i i
y f x i n
 
,
ta sẽ tiến hành xây dựng một đa thức


n
L x
thỏa mãn hai điều kiện sau
 
   
deg
, 0,
n
n i i i
L x n
L x f x y i n








   



(3.2.1)
Trước tiên ta xét đa thức phụ
 




















0 1 1 1
0 1 1 1


, 0,

i i n
i
i i i i i i i n
x x x x x x x x x x
x i n
x x x x x x x x x x

 
 
    
  
    

Ta suy ra được


deg
i
x n



 
0, ,
1, .
i j ij
i j
x

i j
 




 






Đặt
   
0
n
n i i
i
L x y x




. Ta thấy


n
L x
thỏa cả hai điều kiện trong (3.2.1).

Đa thức


n
L x
xây dựng như trên được gọi là đa thức nội suy Lagrange.








Hình 3.2.1


y f x



n
y L x

25
Tiếp theo, ta chứng tỏ rằng sự tồn tại của đa thức


n
L x

là duy nhất. Giả sử còn có đa thức


Q x
thỏa mãn các điều kiện của bài toán. Đặt






n
x L x Q x

 
, ta suy ra


deg
x n





0, 0,
i
x i n

 

. Điều này chứng tỏ


x

là một đa thức có bậc nhỏ hơn
n
đồng thời có ít
nhất
1
n

nghiệm, ta suy ra


0
x


hay




n
L x Q x

(đpcm).
Đồ thị của các đa thức



i
x

(trường hợp
4
n


, 0,4
i
x i i
 
)













Hình 3.2.2
Ví dụ 3.2.1: Cho hàm số



y f x

có bảng giá trị
x

0 1 2 4
y

1 0 2 1

a. Hãy xây dựng đa thức nội suy Lagrange của hàm số


y f x

cho bởi bảng trên.
b. Tính gần đúng


3
f
.
Giải
a. Ta có
         
   
   
 
  

   
 
  
   
 
  
   
 
3 0 0 1 1 2 2 3 3
3 2
1 2 4 0 2 4
1. 0.
0 1 0 2 0 4 1 0 1 2 1 4
0 1 4 0 1 2
2. 1.
2 0 2 1 2 4 4 0 4 1 4 2
1
7 39 44 12 .
12
L x y x y x y x y x
x x x x x x
x x x x x x
x x x
   
   
     
 
     
     
 

     
    

b. Áp dụng kết quả câu a ta có

×