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

Về một phương pháp không cổ điển giải số phương trình vi phân bậc nhất và bậc hai

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.09 MB, 74 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG……………………

Về một phương pháp không cổ điển giải số phương
trình vi phân bậc nhất và bậc hai

1

LUAN VAN CHAT LUONG download : add


LỜI NĨI ĐẦU
Phương trình vi phân là mơ hình mơ tả khá tốt các quá trình chuyển động
trong tự nhiên và kĩ thuật. Để nghiên cứu phương trình vi phân, người ta thường
tiếp cận theo hai hướng: nghiên cứu định tính và giải số.
Mặc dù đã có lịch sử phát triển hàng trăm năm, do cịn nhiều bài tốn cần giải
quyết, giải số phương trình vi phân thường vẫn thu hút sự quan tâm mạnh mẽ của
các nhà toán học và các nhà nghiên cứu ứng dụng.
Trong giải số phương trình vi phân, người ta thường cố gắng tìm ra những
phương pháp hữu hiệu bảo đảm sự hội tụ, tính ổn định và tính chính xác cao. Để
làm được điều này, người ta thường tổ hợp các phương pháp đa bước để nhận được
các phương pháp mới có bậc hội tụ, tính ổn định và cấp chính xác cao hơn. Phương
pháp khơng cổ điển giải số phương trình vi phân thường bậc nhất và bậc hai do M.
V. Bulatov (và Berghe) đề xuất trong vòng năm năm trở lại đây nằm trong hướng
này.
Luận văn Về một phương pháp không cổ điển giải số phương trình vi phân bậc
nhất và bậc hai có mục đích trình bày các phương pháp của Bulatov và Berghe theo
các tài liệu [4] (2009) và [9]-[11] (2003-2008).
Luận văn gồm ba Chương.
Chương 1 trình bày một số khái niệm và phương pháp cơ bản giải số phương
trình vi phân. Trong mục 1.2 của Chương, chúng tơi trình bày các phương pháp số


cổ điển theo một quan điểm nhất quán là xuất phát từ Quy tắc cầu phương cơ bản.
Chương 2 trình bày phương pháp khơng cổ điển (do Bulatov đề xuất vào
những năm 2003-2008) giải số hệ phương trình vi phân bậc nhất, phi tuyến và tuyến
tính, theo các tài liệu [9]-[11].
Chương 3 trình bày phương pháp khơng cổ điển giải số hệ phương trình vi
phân bậc hai, tuyến tính và phi tuyến, theo bài báo của M. V. Bulatov và G. V.
Berghe ([4], 2009).

2

LUAN VAN CHAT LUONG download : add


Thơng qua việc tính tốn đạo hàm, phân tích các hàm nhiều biến vào chuỗi
Taylor và các phép biến đổi chi tiết, chúng tơi cố gắng trình bày các kết quả của M.
V. Bulatov và G. V. Berghe một cách rõ ràng và chi tiết nhất.
Để minh họa và kiểm chứng lý thuyết, chúng tơi đã lập trình trên MATLAB và
tính tốn trên máy các ví dụ của M. V. Bulatov và G. V. Berghe.
Luận văn được hoàn thành dưới sự hướng dẫn khoa học của PGS-TS Tạ Duy
Phượng (Viện Tốn học). Xin được tỏ lịng cám ơn chân thành nhất tới Thầy.
Tác giả xin tỏ lòng cám ơn Ban Chủ nhiệm , các Thày Cô và các cán bộ khoa
Toán- Cơ – Tin học, trường Đại học Khoa học Tự nhiên, Đại học Quốc gia Hà Nội
đã nhiệt tình giảng dạy và giúp đỡ tác giả trong suốt quá trình học Cao học.
Tác giả xin chân thành cám ơn Ban Lãnh đạo và các cán bộ, giáo viên Học
viện Quân y đã tạo mọi điều kiện để tác giả hồn thành tốt khóa học Cao học.
Và cuối cùng, xin được cám ơn Gia đình, bạn bè đã thơng cảm, sẻ chia, hy
sinh và tạo mọi điều kiện cho tác giả trong suốt thời gian học Cao học và viết luận
văn.

Hà Nội, ngày 30 tháng 11 năm 2009

Tác giả
Vũ Thị Thanh Bình

3

LUAN VAN CHAT LUONG download : add


CHƯƠNG 1

Kiến thức chuẩn bị
Trong Chương 1 chúng tôi nhắc lại những khái niệm cơ bản nhất của giải số
phương trình vi phân nhằm thuận tiện cho trình bày ở các mục sau.

1.1. Bài tốn Cauchy giải hệ phương trình vi phân
Xét bài tốn Cauchy tìm nghiệm của hệ phương trình
x(t )  f ( x(t ), t ),

t   0,1

(1.1)

thỏa mãn điều kiện ban đầu
x (0)  x0 ,

(1.2)

trong đó f  x, t  , x  t  là các hàm vectơ n - chiều, hàm f xác định trên hình hộp vơ
hạn D : 0, 1 R n .
Ở đây ta hiểu nghiệm theo nghĩa cổ điển và địa phương, tức là nghiệm của (1.1)(1.2) là một hàm khả vi x (t ) trên  0,   ,   1 sao cho x(t )  f ( x(t ), t ) trên  0,   và

x(0)  x0 .

Cùng với bài toán (1.1), ta cũng xét trường hợp hàm

f ( x, t ) là tuyến tính, tức là

f ( x, t )  B(t ) x  g (t ) , trong đó B(t ) là ma trận cấp n  n , còn g (t ) là vectơ n -chiều,

tức là hệ tuyến tính
x(t )  B (t ) x  g (t ),

t   0,1 .

(1.3)

Ta luôn giả thiết rằng các phần tử của ma trận B(t ) , của các vectơ f  x, t  , g (t ) là
đủ trơn (có đạo hàm đến cấp cần thiết trong tính tốn). Khi ấy theo định lí PicardLindelưf, hệ (1.1)-(1.2) có duy nhất nghiệm x(t ) trên tồn đoạn  0,1 (nghiệm có
thể kéo dài được trên tồn bộ khoảng xác định, hay tồn tại nghiệm toàn cục, xem
[8], trang 467). Lưu ý này là quan trọng trong giải số hệ phương trình (1.1)-(1.2).

4

LUAN VAN CHAT LUONG download : add


1.2. Giải số bài toán Cauchy
Để chứng minh định lý về sự tồn tại và duy nhất nghiệm của hệ phương trình vi
phân (1.1)-(1.2), ta có thể xây dựng dãy nghiệm xấp xỉ hội tụ tới nghiệm của bài
toán (1.1)-(1.2) trên khoảng tồn tại nghiệm. Có hai phương pháp xây dựng dãy
nghiệm xấp xỉ: phương pháp giải tích và phương pháp số kết quả được cho dưới

dạng bảng, như phương pháp Euler, phương pháp Runge-Kutta, phương pháp đa
bước,...
Dưới đây trình bày cách xây dựng các công thức Euler, Runge-Kutta,... xuất phát từ
qui tắc cầu phương cơ bản (xem, thí dụ, [2]).
1.2.1. Quy tắc cầu phương cơ bản và giải số phương trình vi phân
Quy tắc cầu phương cơ bản (basic quadrature rules) có thể được coi là phương pháp
quan trọng để tính tích phân. Vì giải phương trình vi phân thường (1.1) với điều
kiện ban đầu (1.2) tương đương với việc giải phương trình tích phân
t

(1.4)

x(t )  x0   f ( x(s ), s )ds
t0

nên ta cũng có thể sử dụng quy tắc cầu phương cơ bản trong việc giải số phương
trình vi phân. Trong mục này ta sẽ chỉ ra rằng, nhiều công thức sai phân cổ điển giải
số phương trình vi phân có thể suy ra từ quy tắc cầu phương cơ bản. Trước tiên ta
nhắc lại quy tắc cầu phương cơ bản (xem, thí dụ, [1]).
b

Nội dung cơ bản của quy tắc cầu phương là: để tính tích phân

 f (t )dt

ta thay f (t )

a

bởi một đa thức nội suy (interpolating polynomial). Tích phân của hàm f (t ) được

xấp xỉ bởi tích phân của hàm đa thức (tính được chính xác).
Giả sử ta có s điểm nội suy khác nhau c1 , c2 ,..., cs trong khoảng  a , b  . Đa thức nội
suy Lagrange bậc nhỏ hơn s có dạng (xem [1]):
s

 (t )   f (c j ) L j (t ) ,
j 1

5

LUAN VAN CHAT LUONG download : add


s

trong đó L j (t ) 

(t  ci )
. Khi ấy

i 1,i  j (c j  ci )

b

s

f (t ) dt    j f (c j ) .




j 1

a

b

Các trọng số  j được tính theo công thức  j   L j (t )dt.
a

Nếu s  1 thì đa thức nội suy  (t )  f (c1 ) và ta có:
b

a f (t )dt  (b  a) f (c1 ).
Ta nói độ chính xác (precision) của quy tắc cầu phương là p nếu quy tắc này chính
xác cho mọi đa thức bậc nhỏ hơn p , tức là với mọi đa thức Pk (t ) bậc nhỏ hơn p
ta có:
b

s

 Pk (t )dt    j f (c j ).
j 1

a

Nếu b  a  0(h) thì sai số trong quy tắc cầu phương của độ chính xác p là 0(h p 1 ).
Ta xét một số trường hợp đặc biệt.
 Nếu chọn s  1 và c1  a thì ta có cơng thức xấp xỉ tích phân bởi diện tích hình
chữ nhật ABCD (Hình 1.1):
b


 f (t )dt  (b  a) f (a).

(1.5)

a

Nếu x (t ) là nghiệm của phương trình vi phân (1.1) - (1.2) (nghiệm của phương trình
tích phân (1.4)) thì:
t h

x (t  h )  x (t ) 



f ( x( s ), s )ds

(1.6)

t

Kết hợp với công thức (1.5) ta đi đến công thức:
x(t  h)  x(t )  h. f ( x(t ), t )

(1.7)

Gọi h là độ dài bước (stepsize) của biến độc lập t ( h có thể dương hoặc âm, khi h
dương thì nghiệm được xây dựng về bên phải của điểm t0 và ngược lại, khi h âm

6


LUAN VAN CHAT LUONG download : add


thì nghiệm được xây dựng về bên trái của t0 ). Dưới đây ta coi h  0 , trường hợp
h  0 có thể được xét tương tự.

f

Từ cơng thức (1.7) ta có
x1  x0  h. f ( x0 , t0 ) ;

D

C

a
A

b
B

x2  x1  h. f ( x1 , t1 ) ;

.....;

O

xn 1  xn  h. f ( xn , tn ) .


Đây chính là cơng thức Euler tiến quen thuộc.

x

Hình 1.1

 Nếu chọn s  1 và c1  b thì ta có cơng thức xấp xỉ tích phân bởi diện tích hình
chữ nhật ABEF (Hình 1.2):

f

F

E

O

a
A

b
B

b

 f (t )dt  (b  a) f (b).
a

Từ đây ta có:
x(t  h)  x(t )  h. f ( x(t  h), t  h)


x

Suy ra công thức Euler lùi:
xn 1  xn  h. f ( xn 1 , tn 1 ) .

Hình 1.2

Hai phương pháp Euler tiến và Euler lùi là những phương pháp Runge-Kutta bậc
nhất (có độ xấp xỉ bậc nhất).

f

a b
 Nếu chọn s  1 và c1 
thì ta có
2

N

M

a
A

b
B

cơng thức xấp xỉ tích phân bởi diện tích
hình chữ nhật ABMN (Hình 1.3):

t h


t

O

h
h
f ( x( s ), s)ds  h. f ( x(t  ), t  )
2
2

Từ đây ta có:

ab
2

x

Hình 1.3
h
h
x(t  h)  x(t )  h. f ( x(t  ), t  ) .
2
2

7

LUAN VAN CHAT LUONG download : add



Từ cơng thức trên ta có
h
h
xn 1  xn  h[ f ( x(tn  ), tn  ] .
2
2

Đây chính là phương pháp trung điểm (midpoind method).
 Nếu chọn s  2 và c1  a, c2  b thì L1 (t ) 

t b
t a
và L2 (t ) 
.
( a  b)
(b  a )

Suy ra
b

b

t b
1 (t  b) 2
1   L1 (t )dt  
dt 
( a  b)
(a  b ) 2

a
a

b



ba
2



ba
.
2

a


b

b

t a
1 (t  a ) 2
2   L2 (t )dt  
dt 
(b  a )
(b  a ) 2
a

a

a

b

Chứng tỏ
b

 f (t )dt 
a

ba
[ f ( a )  f (b )] .
2

th

Như vậy nếu xấp xỉ tích phân



f ( x( s ), s ) ds bởi công thức trên (bởi diện tích hình

t

thang ABED, Hình 1.4) thì ta được:
th



t

f
h
f ( x( s ), s) ds  [ f ( x(t  h), t  h)  f ( x(t ), t )] .
2

E
D

Từ đây ta có cơng thức hình thang:
h
xn1  xn  [ f ( xn , tn )  f ( xn1 , tn1 )] .
2

O

b
B

a
A

x

Phương pháp điểm giữa và phương pháp
hình thang là hai phương pháp ẩn,

Hình 1.4


chúng có độ chính xác p  2 .
 Nếu chọn s  3 và c1  a , c2 

ab
, c3  b thì, đặt h  b  a , ta có:
2

8

LUAN VAN CHAT LUONG download : add


a b
)(t  b )
2
ab
2
L1 (t ) 
 2 (t 
)(t  b ),
a b
2
(a 
)(a  b) h
2
(t 

L2 (t ) 

(t  a )(t  b)

4
 2 (t  a )(t  b),
ab
ab
(
 a )(
 b) h
2
2

ab
)
2
ab
2
L3 (t ) 
 2 (t  a )(t 
).
ab
2
h
(b  a )(b 
)
2
(t  a )(t 

Suy ra
b

b


b

2
a b
2
a b
1   L1 (t )dt  2  (t 
)(t  b)dt  2  (t  b 
)(t  b)dt
2
2
h a
h a
a
b

b



2
a b
2 (t  b)3 a  b (t  b ) 2
2
[(
t

b
)


(
)(
t

b
)]
dt

[
(
)
]
2
3
2
2
h 2 a
h2
a



2 (b  a )3 h
 .
h 2 12
6


b


b

b

4
4
2   L2 (t )dt  2  (t  a )(t  b)dt  2  (t  a )(t  a  (a  b ))dt
h a
h a
a
b



4 (t  a )3 (t  a) 2
4h
[

( a  b)]  .
2
3
2
6
h
a

Do tính chất đối xứng (hoặc tính trực tiếp), ta có
 3  1 


h
.
6

Từ các tính tốn trên ta đi đến cơng thức Simpson:
b

h

a f (t )dt  6 [ f (a)  4 f (

ab
)  f (b )] .
2

Suy ra công thức xấp xỉ nghiệm của phương trình vi phân

9

LUAN VAN CHAT LUONG download : add


h
h
h
x(t  h)  x(t )  [ f ( x(t ), t )  4 f ( x(t  ), t  )  f ( x(t  h), t  h)]
6
2
2


và công thức sai phân
h
h
h
xn1  xn  [ f ( xn , tn )  4 f ( x(tn  ), tn  )  f ( xn 1 , tn 1 )] .
6
2
2

Đây là công thức ẩn của phương pháp Runge-Kutta kinh điển cấp bốn (classical
fourth-order Runge-Kutta method).
1.2.2. Phương pháp Runge-Kutta
1.2.2.1. Dẫn tới phương pháp Runge - Kutta
Vì phương pháp ẩn địi hỏi tại mỗi bước phải giải một phương trình phi tuyến, điều
này khơng đơn giản, nên ta cố gắng xây dựng các công thức Runge-Kutta hiển từ
cơng thức hình thang ẩn, cơng thức điểm giữa ẩn và công thức Runge-Kutta kinh
điển cấp bốn ẩn tương ứng như sau.
 Trong cơng thức hình thang ẩn:
h
xn 1  xn  [ f ( xn , tn )  f ( xn 1 , tn 1 )] ,
2

ta thay giá trị xn1 ở vế phải bằng công thức Euler tiến:
xˆn 1  xn  hf ( xn , tn ) .

Khi ấy ta được công thức:
h
xn 1  xn  [f ( xn , tn )  f ( xˆn 1 , tn 1 )]
2


Công thức này được gọi là phương pháp hình thang hiển (explicit trapezoidal
method).
h
2

 Bằng cách sử dụng xấp xỉ bậc nhất của x(tn  ) theo phương pháp Euler tiến:

n

1
2

 xn 

h
f ( xn , t n )
2

và thay vào công thức của phương pháp trung điểm ẩn
h
h
xn 1  xn  hf ( x(tn  , tn  )
2
2

10

LUAN VAN CHAT LUONG download : add



ta nhận được phương pháp trung điểm hiển (explicit midpoint method):
xn 1  xn  hf ( xˆ

n

1
2

h
, tn  )
2

 Từ phương pháp Runge-Kutta ẩn cấp bốn kinh điển
h
h
h
xn1  xn  [ f ( xn , tn )  4 f ( x(tn  ), tn  )  f ( xn 1 , tn 1 )] ,
6
2
2

ta có cơng thức Runge-Kutta hiển bậc bốn kinh điển sau:
h
xn 1  xn  ( k1  2 k2  2k3  k4 ), n  0,1, 2,...
6

trong đó:
k1  f ( xn , t n );
hk1
h

, tn  );
2
2
hk
h
k3  f ( xn  2 , tn  );
2
2
k4  f ( xn  hk3 , tn ).
k2  f ( xn 

1.2.2.2. Phương pháp Runge-Kutta tổng quát
Nội dung cơ bản của phương pháp Runge-Kutta tổng quát như sau.
Chia đoạn  0,1 thành một lưới đều
ti  ih , i  0,1, 2,..., N , h 

1
,
N

và kí hiệu xi là giá trị xấp xỉ x  ti  , Bi  B(ti ) , g i  g  ti  .
Phương pháp Runge-Kutta cho bài toán (1.1)-(1.2) có dạng (xem, [2], [4]-[7])
s

xi 1  xi  h bi X i ,

(1.8)

i 1


trong đó X i là vectơ n -chiều và là nghiệm của hệ phương trình phi tuyến
s


X i  f  x i  h a i j X j , t i  c i h  .
j 1



(1.9)

Các tham số aij , ci , bi xác định bậc xấp xỉ của phương pháp, còn s được gọi là số

11

LUAN VAN CHAT LUONG download : add


nấc. Nếu aij  0 với mọi j  i thì ta có phương pháp Runge-Kutta hiển. Khi ấy tính
tốn khá đơn giản ( X i được tính theo cơng thức truy hồi). Nếu aij  0 với j  i nào
đó thì ta có phương pháp Runge-Kutta ẩn. Khi ấy tại mỗi bước ta phải giải một hệ
ns phương trình phi tuyến (tuyến tính nếu f ( x, t )  B(t ) x  g (t ) ) để tìm s vectơ X i

(mỗi vectơ X i có n tọa độ).
Thường phương pháp Runge-Kutta được viết dưới dạng bảng Butcher (Butcher
table)
c

A


bT

Hai phương pháp Runge-Kutta quan trọng thường hay được sử dụng là phương
pháp Runge-Kutta bậc hai và phương pháp Runge-Kutta bậc bốn.
1.2.2.3. Công thức lặp của phương pháp Runge-Kutta bậc hai
Giả thiết rằng ta đã biết giá trị của x tại tn là xn . Phương pháp Runge-Kutta hiển
hai nấc cấp hai sử dụng điểm ( xn , tn ) để xấp xỉ giá trị của x tại điểm tiếp theo bằng
công thức
xn 1  xn  h(b1k1  b2 k 2 ),

(1.10)

trong đó
k1  f ( xn , yn ); k2  f ( xn  c2 h, yn  ha21k1 ).

Khái niệm s -nấc ( s -stage) thể hiện rằng số lần tính các giá trị của hàm f (tại các
điểm khác nhau trong công thức Runge-Kutta) là s .
Để tìm các phương pháp Runge-Kutta bậc hai, ta làm như sau (xem [2]).
Khai triển Taylor hàm f ( x, t ) theo phương trình (1.1) và theo công thức (1.10) rồi
so sánh, ta đi đến kết luận:
Các hệ số trong phương pháp Runge-Kutta cấp hai phải thoả mãn hệ phương trình
1
1
b1  b2  1, c2b2  , a21b2  .
2
2

12

LUAN VAN CHAT LUONG download : add



Đây là một hệ ba phương trình (phi tuyến) bốn ẩn. Ta có thể chọn một hệ số, thí
dụ, b2  0 tự do. Khi ấy các hệ số còn lại biểu diễn qua b2  0 bởi các công thức:
b1  1  b2 , c2 

1
2

Chọn b2  , thì b1 

1
1
, a21 
.
2b2
2b2

1
và a21  c2  1 . Khi ấy ta có một phương pháp Runge-Kutta
2

cấp hai cho phép tính xn 1 dựa trên cơng thức:
1
1
xn 1  xn  hf ( xn , tn )  hf ( xn  hf ( xn , tn )tn  h ) .
2
2

Công thức này được gọi là phương pháp Runge-Kutta đơn giản (Simple RungeKutta Method) hoặc phương pháp tiếp tuyến cải tiến (Impoved Tangent Method), vì

nó trùng với phương pháp Euler cải tiến.
1
2

1
2

Nếu chọn b2  1 thì a21  , b1  0 và c2  . Khi ấy ta có cơng thức
xn 1  xn  h(b1k1  b2 k2 )  xn  .h. f ( xn 

h
h
f ( xn , tn ), tn  ) .
2
2

Phương pháp tính theo cơng thức trên được gọi là phương pháp Euler-Cauchy.
1.2.3. Phương pháp cổ điển đa bước
Phương pháp cổ điển k -bước cho bài toán (1.1) có dạng (xem, [3], [4]-[7])
k

k

  j xi1 j  h j f ( xi1 j , ti1 j ) .
j 0

(1.11)

j 0


Phương pháp một tựa tương ứng với nó là
k

k

k

  j xi1 j  hf (  j xi 1 j ,   jti1 j ) .
j 0

j 0

(1.12)

j 0

Đối với phương pháp này ta giả thiết rằng các giá trị xuất phát x1, x2 ,..., xk 1 đã được
tính tương đối chính xác.
Nếu 0  0 và  0  0 thì phương pháp là phương pháp hiển. Nếu 0  0 và  0  0
thì ta có phương pháp ẩn.

13

LUAN VAN CHAT LUONG download : add


1.3. Mơ hình thử và ổn định của phương pháp số
1.3.1. Mơ hình thử
Để phân tích hiệu quả của các phương pháp, ta thường thử chúng trên mơ hình G.
Dahlquist (gọi là phương trình thử hay mơ hình thử)

x   x, x  0   x0  R, t   0,1 ,

(1.13)

trong đó  là một hằng số (thực hoặc phức). Nghiệm của phương trình này là
x(t )  e t x0 .

Ta thường viết    R  i I , trong đó  R và  I tương ứng là các phần thực và phần
ảo của  .
Tương ứng với phương trình (1.13), xét phương trình sai phân tuyến tính bậc nhất
x n 1  x n , n  0,1,2,... ,

trong đó x 0 cho trước và  nói chung là một số phức. Nghiệm của phương trình
này là x n   n x0 . Ta thấy rằng nghiệm này bị chặn khi và chỉ khi   1 .
Giả sử bước h  0 cố định. Khi ấy giá trị của nghiệm chính xác tại các điểm t n  nh
sẽ là x n  e t x0  e nh x 0   n x0 , trong đó   e h .
n

Nếu nghiệm chính xác bị chặn thì   e h  1 . Điều này chỉ có thể xảy ra nếu
Re  h   R h  0 . Điều này có nghĩa là, trên mặt phẳng với trục hoành Re(h) và trục

tung Im(h) , miền ổn định của nghiệm chính xác phải là nửa mặt phẳng mở bên
trái.
Phương pháp một bước được gọi là ổn định tuyệt đối nếu   1 và ổn định tương
đối nếu   e h .
Nếu  là thuần ảo và   1 thì ổn định tuyệt đối được gọi là ổn định tuần hoàn (Pổn định).
Khi miền ổn định của phương trình sai phân đồng nhất với miền ổn định của
phương trình vi phân, lược đồ sai phân hữu hạn được gọi là ổn định - A.

14


LUAN VAN CHAT LUONG download : add


Phương trình thử thường được sử dụng như một mơ hình để dự đốn tính ổn định
của phương pháp số giải hệ dạng tổng quát (1.1)-(1.2).
Để thuận tiện, ta cũng có thể đưa ra các khái niệm ổn định tương tự như sau.
Kí hiệu z   h , mọi phương pháp Runge-Kutta (1.8)-(1.9) đều có thể viết dưới dạng
xi 1  R( z ) xi ,

trong đó R( z ) được gọi là hàm ổn định.
Định nghĩa 3.1
Tập tất cả các điểm của mặt phẳng phức M mà R( z )  1 được gọi là miền ổn định
của phương pháp (1.8)-(1.9). Nếu tập hợp đó chứa tồn bộ nửa mặt phẳng trái thì
phương pháp được gọi là ổn định-A, cịn nếu ngồi ra lim R( z )  0 thì phương pháp
z 

được gọi là ổn định-L(hay cịn gọi là ổn định tiệm cận).
1.3.2. Sự ổn định của phương pháp Euler
Phương pháp Euler áp dụng cho phương trình thử (3.1) có dạng
x n1  xn  hf ( xn , t n )  x n  hxn  1  hx n .

Nghiệm của phương trình sai phân tương ứng là
x n  1  h  x n   n x0 ,
n

trong đó   1  h .
Phương pháp số là ổn định nếu   1 .
Xét các trường hợp sau
1)  là số thực. Khi ấy   1  h  1 , hay  2  h  0 .

2)  là thuần ảo (   i , trong đó  là số thực khác 0). Khi ấy
  1  ih  1   2 h 2  1 .

Chứng tỏ phương pháp là không ổn định nếu  là thuần ảo.
3)  là số phức (    R  i I ). Khi ấy
  1  h  1   R h  i I h 

1   R h 2   I h 2

 1,

15

LUAN VAN CHAT LUONG download : add


nghĩa là h nằm trong hình trịn đơn vị tâm là  1;0  (Hình1.5). Hình trịn này tiếp
xúc với trục ảo.
Im
h

-1
-

O

Re
h

Hình 1.5


Như vậy, chỉ có một phần rất nhỏ (hình trịn bán kính bằng 1) của nửa mặt phẳng
trái là miền ổn định của phương pháp Euler.
Với mọi giá trị khác của h trong nửa mặt phẳng trái và bên ngồi hình trịn này,
nghiệm số sẽ bị phóng đại (blow-up) khi nghiệm chính xác triệt tiêu (decays).
Phương pháp số này được gọi là ổn định có điều kiện.
Để nhận được nghiệm số ổn định, bước h phải được chọn sao cho h nằm trong
hình trịn. Nếu  là số thực âm thì từ điều kiện  2  h  0 suy ra

2
 h  0.


Nếu  là thực và nghiệm số khơng ổn định thì 1  h  1 , nghĩa là 1  h là một số
âm và có trị tuyệt đối lớn hơn 1. Vì x n  1  h n x 0 nên nghiệm số sẽ đổi dấu qua
mỗi bước. Sự thay đổi của nghiệm số mơ tả khá rõ tính khơng ổn định.
Tương tự, ta có thể xét tính ổn định của các phương pháp Euler cải tiến. Ta đi đến
kết luận sau.
Phương pháp Euler ẩn là ổn định-L và hội tụ cấp một; Phương pháp hình thang là
ổn định-A và hội tụ cấp hai, cịn phương pháp Euler hiển khơng phải là ổn định-A
và hội tụ cấp 1.
z
1
1
2 và 1  z .
Hàm ổn định của các phương pháp này tương ứng là
,
1 z 1 z
2


16

LUAN VAN CHAT LUONG download : add


1.3.3. Sự ổn định của phương pháp Runge-Kutta
1.3.3.1 Sự ổn định của phương pháp Runge-Kutta bậc hai
Xét phương pháp Runge-Kutta bậc hai cho phương trình thử (1.13). Ta có
k1  hf ( x n , t n )  hxn ;

k 2  hf ( x n  k1 , t n  h)  h x n  k1   h x n  hxn   h1  hx n


x n1  x n 

2 2

1
k1  k 2   xn  1 h  h1  hx n  1  h   h
2
2
2


Để phương pháp ổn định thì   1 , trong đó   1  h 
Trường hợp 1.  là số thực. Khi ấy 1  h 


 x n .



2 h 2
.
2

2 h 2
 1 hay  2  h  0 .
2

Trường hơp 2.   i thuần ảo,   0 .
1
4

Khi ấy   1   4 h 4  1 . Phương pháp không ổn định.
Trường hợp 3.   R  i I là số phức. Khi ấy
1  h 

là số phức. Đặt 1  h 

2  2I 2 
2 h 2 
 1   R h  R
h   i I   R  I 
2
2



2 h 2
 e i và tìm nghiệm phức h của phương trình bậc hai

2

theo các giá trị của  . Nhận xét rằng   1 với mọi giá trị của  .
Miền ổn định được chỉ ra trên Hình 1.6.
1.3.3.2. Sự ổn định của phương pháp Runge-Kutta bậc bốn
Xét phương pháp Runge-Kutta bậc bốn cho phương trình thử (1.13). Ta có
k1  hf ( x n , t n )  hxn ;
k 

 h 
k 2  h xn  1   h x n  hxn   h1 
 xn ;
2
2 



17

LUAN VAN CHAT LUONG download : add


  h 2 h 2
k 

1  h  

k 3  h xn  2   h x n  h1 

 x n   h1 

2
2 
2  
2
4





 h  2 h 2
k 4  h x n  k 3   h x n  h1 

2
4




 xn ;


 

 2 h 2 3 h 3 
 x n   h1  h 
 xn


2

4 
 



x n1  x n 

2 2
3 3
4 4


1
k1  2k 2  2k 3  k 4   1  h   h   h  h  x n .
6
2
3! 4! 


Để phương pháp ổn định thì   1 , trong đó   1  h 

2 h 2 3 h 3 4 h 4

.
2
3! 4!

Trường hợp 1.  là số thực. Khi ấy  2.785  h  0 .
Trường hơp 2.   i thuần ảo,   0 . Khi ấy 0  h  2 2 .
Trường hợp 3.   R  i I là số phức. Đặt 1  h 


 2 h 2 3 h 3  4 h 4

 e i và tìm
2
3! 4!

nghiệm phức h của phương trình bậc bốn theo các giá trị của  . Nhận xét rằng
  1 với mọi giá trị của  .

Miền ổn định được chỉ ra trên Hình 1.6.

Hình 1.6

18

LUAN VAN CHAT LUONG download : add


1.3.4. Sự ổn định của phương pháp đa bước
Áp dụng các phương pháp (1.11) và (1.12) cho bài toán (1.13) ta được
k

   j  z j  xi1 j  0 .

(1.14)

j 0

Phương trình đặc trưng của phương trình sai phân tuyến tính trên có dạng

k

   j  z j  k  j  0 .

(1.15)

j 0

Định nghĩa 3.2
Tập tất cả các điểm của mặt phẳng phức M mà  ( z )  1 với mọi nghiệm của (1.15)
và  ( z )  1 đối với các nghiệm bội được gọi là miền ổn định của phương pháp
(1.14). Nếu tập hợp đó chứa tồn bộ nửa mặt phẳng trái thì phương pháp được gọi
là ổn định-A.
Nhận xét
Với mọi phương pháp cổ điển miền ổn định chứa gốc tọa độ của mặt phẳng phức.
Tương ứng với bậc của phương pháp ta đã biết những điều sau (xem [11]):
1) Bậc của các phương pháp Runge-Kutta s -nấc cho phương trình (1.13)-(1.15)
khơng vượt q 2s (chắn Butcher).
2) p là cấp chính xác, k là số bước của phương pháp (1.11).Nếu phương pháp ổn
định thì p khơng vượt quá k  2 khi k chẵn và k  1 khi k lẻ (chắn Dahlquist thứ
nhất).
3) Phương pháp (1.11) ổn định – A khơng thể có cấp chính xác vượt quá 2 (chắn
Dahlquist thứ hai).
Trong Chương sau ta sẽ trình bày phương pháp do Bulatov đề nghị cải tiến được
những hạn chế nêu trên.
1.3.5. Sự ổn định của phương pháp sai phân hữu hạn
Xét phương trình vi phân tuyến tính bậc hai
x   kx   0 ,

trong đó k là hằng số và đủ lớn so với 1.


19

LUAN VAN CHAT LUONG download : add


Phương trình có nghiệm là x(t )  A  Be  kx , trong đó A và B là các hằng số bất kì
được xác định bởi điều kiện ban đầu hoặc điều kiện biên tương ứng.
Nếu k  0 và x   thì nghiệm bị chặn. Đại lượng e  kx là nghịch biến khi k  0 và
đồng biến khi k  0 .
Xấp xỉ sai phân trung tâm cho hệ là
1
xi1  2 xi  xi 1   k xi 1  xi 1   0 .
2
2h
h
i

 2  kh 
Phương trình sai phân này có nghiệm là xi  A  B
.
 2  kh 

Nếu k  0 đại lượng

2  kh
 2  kh 
 1 nên 

2  kh

 2  kh 

i

là nghịch biến. Khi k  0 thì

2  kh
2
 1 nếu h  . Đây chính là điều kiện ổn định cho hệ sai phân.
2  kh
k

20

LUAN VAN CHAT LUONG download : add


CHƯƠNG 2

Về một phương pháp không cổ điển giải số
hệ phương trình vi phân cấp một
Chương này trình bày một phương pháp mới do Bulatov đề xuất giải số bài tốn
Cauchy cho hệ phương trình vi phân cấp một (xem [9]-[11]) tốt hơn các phương
pháp cổ điển. Phương pháp mới là một họ phương pháp một bước, bậc hai, trong đó
có phương pháp là L-ổn định. Nội dung của Chương gồm hai mục. Trong 2.1 chúng
tơi trình bày phương pháp không cổ điển do Bulatov đề xuất giải số hệ phương
trình vi phân phi tuyến cấp một. Phương pháp khơng cổ điển do Bulatov đề xuất
giải số hệ phương trình vi phân tuyến tính cấp một được trình bày trong 2.2. Để làm
sáng tỏ phương pháp, chúng tôi đã thực hiện các tính tốn chi tiết (phân tích các
hàm nhiều biến dưới dạng chuỗi Taylor,...) mà trong [9]-[11] trình bày không tường

minh.

2.1. Phương pháp không cổ điển giải số hệ phương trình vi phân
phi tuyến cấp một
2.1.1. Phương pháp tổng qt
Xét bài tốn Cauchy tìm nghiệm của hệ phương trình
x(t )  f ( x(t ), t ),

t   0,1

(2.1)

thỏa mãn điều kiện ban đầu
x (0)  x0 ,

(2.2)

trong đó f  x, t  , x  t  là các hàm vectơ n - chiều, hàm f xác định trên hình hộp
chữ nhật vơ tận D : R n  0, 1 .
Để giải bài toán (2.1)-(2.2), ta bắt đầu đi từ phương pháp- và phương pháp một tựa
của nó (hai phương pháp này đều có cấp chính xác bằng một):

21

LUAN VAN CHAT LUONG download : add


xi 1  xi  h  c1 f ( xi 1 , ti 1 )  (1  c1 ) f ( xi , ti 

(2.3)


xi 1  xi  hf (c2 xi 1  (1  c2 ) xi , ti  c2h )

(1.4)



với c1 , c2 là các hằng số tùy ý, 0  c1 , c2  1 .
Mỗi công thức truy hồi (2.3) (hoặc (2.4)) cho một dãy các giá trị xấp xỉ nghiệm của
phương trình vi phân (2.1)-(2.2). Dưới đây ta cố gắng kết hợp hai phương pháp
(2.3) và (2.4) để được một phương pháp số mới giải hệ phương trình vi phân (2.1)(2.2).
Khai triển Taylor tại điểm x  xi ta được:



f  xi 1 , ti 1   f  xi , ti 1   J  xi , ti 1  xi 1  xi   O xi 1  xi

2




f  c2 xi 1  1  c2  xi , ti  c2 h 








 f  xi , ti  c2 h   J  xi , ti  c2 h   c2 xi 1  1  c2  xi   xi  O xi 1  xi



 f  xi , ti  c2 h   c2 J  xi , ti  c2h  xi 1  xi   O xi 1  xi

trong đó J  x, t  

2

2



,

f  x, t 
.
x

Các phương pháp (2.3)-(2.4) được tuyến tính hóa như sau
xi 1  xi  h  c1 f ( xi , ti 1 )  (1  c1 ) f ( xi , ti )  c1 J ( xi , ti 1 )( xi 1  xi )  ,

(2.3’)

xi 1  xi  h  f ( xi , ti  c2 h)  c2 J ( xi , ti  c2 h)( xi 1  xi )] .

(2.4’)

Viết lại hai cơng thức trên thành một hệ phương trình đại số tuyến tính có ẩn là xi 1

(kí hiệu E là ma trận đơn vị cấp n ):
 E  hc1J ( xi , ti1 )

 E  hc1J (xi , ti 1 )

 c1 f (xi , ti1)  (1  c1) f ( xi , ti ) 

 xi1  
 xi  h 
 . (2.5)
 E  hc2 J ( xi , ti  c2h) 
 E  hc2 J (xi , ti  c2h) 
 c2 f ( xi , ti  c2h)


Nhận thấy rằng hệ (2.5) nói chung khơng có nghiệm theo nghĩa cổ điển vì số
phương trình nhiều hơn số ẩn, tức là hệ (2.3) và (2.4) nói chung khơng có nghiệm
trùng nhau. Để giải hệ phương trình đại số (2.5) ta nhân hai vế của hệ này với ma

22

LUAN VAN CHAT LUONG download : add


trận

 E  hc1 J ( xi , ti1 )

c3 ( E  hc2 J ( xi , ti  c2h )  cấp n  2n , trong đó c3 là hằng số tùy


ý. Khi ấy (2.5) trở thành:
 E  hc J  x , t  2  c  E  hc J  x , t  c h  2  x
1
i i 1
3
2
i i
2

 i 1
2
2
  E  hc1 J  xi , ti 1    c3  E  hc2 J  xi , ti  c2 h    xi



(2.6)

 h  E  hc1 J  xi , ti 1    c1 f  xi , ti 1   1  c1  f  xi , ti  
 hc3  E  hc2 J  xi , ti  c2 h   f  xi , ti  c2 h  .

Theo [11]lược đồ sai phân (2.6) là ổn định với mọi bộ hệ số c1, c2 , c3 và có bậc hội
tụ tối thiểu là bậc một. Ta có ba tham số tự do, vì vậy có thể chọn được bộ ba số
c1, c2 , c3 sao cho họ lược đồ sai phân (2.6) hội tụ cấp hai.

Khai triển Taylor theo t tại điểm  xi , ti  ta được:

 

J  xi , ti 1   J  xi , ti   J t  xi , ti  h  O h 2


 

J  xi , ti  c2h   J  xi , ti   J t  xi , ti  c2h  O h 2

 

f  xi , ti 1   f  xi , ti   ft xi , ti  h  O h 2

 

f  xi , ti  c2 h   f  xi , ti   f t xi , ti  c2h  O h 2
xi 1  x  ti 1   xi  hxi 

h2
xi O h 3
2

 

Thay vào (2.6) ta được

(1  c ) E  h 2c J ( x , t )  2c hJ   x , t   2c c J ( x , t )  2c c hJ   x , t  
3

1

i

i


1

t

i

i

2 3

i

i

2 3

t

i

i


2
2
h2 
 h 2 c12  J  xi , ti   hJ t  xi , ti    c22c3  J  xi , ti   c2 hJ t  xi , ti     xi  hxi  xi

 

2 





 (1  c3 ) E  h  2c1 J ( xi , ti )  2c1hJ t  xi , ti   2c2c3 J ( xi , ti )  2c2c3hJ t  xi , ti   



2
2
 h 2 c12  J  xi , ti   hJ t  xi , ti    c3c22  J  xi , ti   c2 hJ t  xi , ti    xi 



 h  E  hc1 J ( xi , ti )  hc1 J t  xi , ti   c1 f  xi , ti   c1hft xi , ti   1  c1  f  xi , ti   

 

 hc3  E  hc2 J ( xi , ti )  h 2c22 J t  xi , ti    f  xi , ti   hc2 f t xi , ti    O h 3

hay

23

LUAN VAN CHAT LUONG download : add




h2 
(1  c3 )E  2h  c1  c2c3  J  xi , ti   h2 2  c1  c2c3  Jt  xi , ti   c12  c22c3 J 2  xi , ti    hxi  xi


2 


















 

 hE  h2c1J  xi , ti   f  xi , ti   hc1 ft xi , ti    hc3E  h2c2c3 J  xi , ti   f  xi , ti   hc2 ft xi , ti    O h3

hay

h2 

(1 c3 )E  2h  c1  c2c3  J  xi , ti   h2 2 c1  c2c3  Jt  xi , ti   c12  c22c3 J 2  xi , ti   hxi  xi


2 

 hf  xi , ti   c1h2 ft xi , ti   c1h2J  xi , ti  f  xi , ti   c12h3J  xi , ti  ft xi , ti   hc3 f  xi , ti  









 

c2c3h2 ft xi , ti   c2c3h2 J  xi , ti  f  xi , ti   c22c3h3J  xi , ti  ft xi , ti   O h3 .

Đẳng thức trên đúng với mọi h . So sánh hệ số hai vế ta được:
 Hệ số của h1 :
(1  c3 ) xi  f ( xi , t i )  c3 f ( xi , t i ) .

Do x(t )  f ( x(t ), t ) (phương trình (1.1)) nên hệ thức trên đúng với mọi c3 .
 Hệ số của h 2 :
xi
 2(c1  c2 c3 ) J ( xi , ti ) xi
2
 c1 ft( xi , ti )  c1 J ( xi , ti ) f ( xi , ti )  c2c3 ft ( xi , ti )  c2c3 f ( xi , ti ) J ( xi , ti ).


(1  c3 )

Từ phương trình (1.1) ta có:
x(t )  f ( x(t ), t )


xt 

f
f
xt 
 J  x, t  f  x, t   ft x , t  .
x
t

Do đó hệ số của h2 viết lại thành:
1  c3
( J  xi , ti  f  xi , ti   f t( xi , ti ))  (c1  c2c3 )( J ( xi , ti ) f ( xi , ti )  f t xi , ti )
2

hay
 1  c3

 c1  c2 c3   J  xi , ti  f  xi , ti   f t( xi , ti )   0 .

 2


Như vậy, hệ số của h 2 bằng 0 khi và chỉ khi ta có
1  c3  2c1  2c2c3 .


(2.7)

24

LUAN VAN CHAT LUONG download : add


Như vậy nếu chọn c1 , c2 , c3 thỏa mãn (2.7) thì ta được cơng thức (2.6) có cấp hai,
bởi vì lúc này cơng thức (2.6) có sai số địa phương bậc h3 . Ta đi đến định lý sau.
Định lý 1.1
Nếu f  xt , t , J  xt , t   C 2 0,1 thì ta có đánh giá

xi  x  ti   O (h 2 ) , trong đó xi

tìm được theo công thức (2.6).
Định lý này được chứng minh nhờ nhận xét là sai số địa phương có bậc ba, và ma
trận chuyển sang bước tiếp theo có chuẩn là 1  hK với 0  K   .
2.1.2. Phương trình thử
Áp dụng cơng thức (2.6) cho phương trình thử
x   x, x  0   x0  R, t   0,1 .

Ta có

(2.8)

f  x, t    x, do đó
J  x, t    , x, t và f ( xi , ti  c2 h)   xi , f ( xi 1 , ti 1 )   xi 1 .

Khi đó (1.6) được viết lại thành:

 E  hc1 2  c3  E  hc2   2  xi 1   E  hc1 2  c3  E  hc2   2  xi 




 h( E  hc1 )(c1 xi  (1  c1 ) xi )  hc3 ( E   hc2 ) xi

hay

(1  c3 ) E  (2c1  2c2c3 )h  (c12  c22c3 )(h )2 ]xi 1
  (1  c3 ) E  (1  c3  2c1  2c2c3 )h  (c12  c22c3  c1  c2c3 )(h ) 2 ]xi .

(2.9)

Đặt z  h và nhận xét rằng, với phương trình thử, ma trận E  1 là một số, ta được
công thức
xi 1  R ( z ).xi ,

trong đó
R z 

(1  c3 )  (1  2c1  c3  2c2c3 ) z  (c 1 c12  c3c2  c22c3 ) z 2
.
(1  c3 )  2(c1  c2 c3 ) z  (c12  c22c3 ) z 2

Để (2.6) là ổn định-L thì lim R  z   0 , suy ra trong R  z  bậc của tử thức phải nhỏ
z 

hơn bậc của mẫu thức, tức là ta phải chọn c1, c2 , c3 thỏa mãn


25

LUAN VAN CHAT LUONG download : add


×