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

Phương pháp euler giải phương trình vi phân và phương trình vi phân đại số

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 (540.8 KB, 89 trang )



BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2







NGUYỄN THỊ QUẾ







PHƯƠNG PHÁP EULER GIẢI PHƯƠNG TRÌNH VI PHÂN VÀ
PHƯƠNG TRÌNH VI PHÂN ĐẠI SỐ



Chuyên ngành: Toán giải tích
Mã số: 60 46 01 02




LUẬN VĂN THẠC SĨ TOÁN HỌC






Người hướng dẫn khoa học: PGS. TS. TẠ DUY PHƯỢNG








HÀ NỘI, 2014
Lời cảm ơn
Tác giả xin chân thành cảm ơn PGS.TS.Tạ Duy Phượng (Viện Toán
học), người Thầy đã hướng dẫn tác giả hoàn thành Luận văn này. Trong
suốt thời gian qua Thầy đã không quản ngại khó khăn và nhiệt tình chỉ
dạy, giúp đỡ để em có thể hoàn thành Luận văn này.
Xin cảm ơn trường Đại học Sư phạm Hà Nội 2, phòng Sau đại học nơi
tác giả đã hoàn thành chương trình cao học dưới sự giảng dạy nhiệt tình
của các Thầy cô.
Và tôi xin được gửi lời cảm ơn sâu sắc đến Gia đình, bạn bè đã luôn ở
bên, thông cảm, tạo mọi điều kiện tốt nhất cho tôi để tôi hoàn thành
Luận văn này.
Hà Nội, tháng 6 năm 2014
Tác giả
Nguyễn Thị Quế
Lời cam đoan
Tôi xin cam đoan rằng số liệu và kết quả nghiên cứu trong Luận văn này

là trung thực và không trùng lặp với các đề tài khác. Tôi cũng xin cam
đoan rằng mọi sự giúp đỡ cho việc thực hiện Luận văn này đã được cảm
ơn và các thông tin trích dẫn trong Luận văn đã được chỉ rõ nguồn gốc.
Hà Nội, tháng 6 năm 2014
Tác giả
Nguyễn Thị Quế
Mục lục
Mở đầu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Chương 1. Phương pháp Euler và Euler cải biên giải phương
trình, hệ phương trình vi phân thường 4
1.1. Phép nội suy và bài toán cầu phương cơ bản 4
1.1.1. Phép nội suy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.2. Qui tắc cầu phương cơ bản. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2. Bài toán Cauchy của phương trình vi phân cấp một 12
1.3. Phương pháp Euler 15
1.3.1. Định lí tồn tại nghiệm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3.2. Phương pháp đường gấp khúc Euler. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.3. Phương pháp xấp xỉ tích phân . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.4. Phương pháp Euler cải tiến (Phương pháp Heun) 21
1.5. Giải số phương trình vi phân thường bằng phương pháp Euler
và Euler cải tiến 22
1.6. Phương pháp Euler cho hệ phương trình 34
1.7. Ổn định và sai số của phương pháp Euler 41
1.7.1. Bậc xấp xỉ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
1.7.2. Tính ổn định . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
1.7.3. Tính hội tụ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
1.7.4. Ước lượng sai số . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Chương 2. Phương pháp số giải phương trình vi phân đại số
49
2.1. Phương trình vi phân đại số 49

2.1.1. Định nghĩa phương trình vi phân đại số. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.1.2. Phương trình vi phân đại số chỉ số 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3
2.1.3. Phương trình vi phân đại số tuyến tính . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
2.2. Một số đặc thù của phương trình vi phân đại số 52
2.3. Phương pháp Euler giải phương trình vi phân đại số 60
Phụ lục . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Kết luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Tài liệu tham khảo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Mở đầu
1. Lí do chọn đề tài
Những phương trình vi phân giải được bằng cầu phương (tìm được công
thức nghiệm hiển) là rất ít. Vì vậy phương trình vi phân được phát triển
theo hai hướng: Lí thuyết định tính nghiên cứu tính chất nghiệm theo
các dữ liệu đầu vào (vế phải của phương trình, điều kiện ban đầu, điều
kiện biên, tham số,. ) và Giải số phương trình vi phân (tìm nghiệm
xấp xỉ).
Phương pháp đường gấp khúc Euler là một trong những phương pháp cổ
điển (classical methods) giải số phương trình vi phân. Do độ hội tụ thấp
nên phương pháp Euler ít được áp dụng hơn so với phương pháp Runge-
Kutta. Tuy nhiên, gần đây, S. Smale (1981) đã phát hiện ra mối quan
hệ hữu cơ giữa phương pháp Newton giải hệ phương trình phi tuyến với
phương pháp Euler giải hệ phương trình vi phân. Điều này gợi sự quan
tâm mới đối với phương pháp Euler.
Có nhiều cách giải thích phương pháp Euler (tiếp tuyến của đường cong
nghiệm, xấp xỉ đạo hàm, khai triển Taylor, ). Trong [1] đã giải thích
phương pháp Euler như là trường hợp riêng của bài toán xấp xỉ tích
phân. Cách tiếp cận này cho phép hiểu thống nhất phương pháp Euler
và các cải biên của nó trong bức tranh chung của các phương pháp giải
hệ phương trình vi phân thường.

Do nhu cầu của các bài toán kĩ thuật, công nghệ và kinh tế (hệ rôbôt, hệ
hóa học hoặc vật lí phức tạp, hệ điều khiển và kinh tế, ), bắt đầu từ
1
2
những năm 1980 trở lại đây, lí thuyết phương trình vi phân đại số được
quan tâm mạnh mẽ. Phương pháp Euler cũng đã được sử dụng và cải
biên để giải các hệ phương trình vi phân đại số.
2. Mục đích nghiên cứu
Luận văn có mục đích trình bày tổng quan phương pháp Euler và các cải
tiến của nó giải phương trình vi phân thường và phương trình vi phân
đại số. Ngoài ra, Luận văn cũng trình bày thực hành tính toán một số ví
dụ giải phương trình, hệ phương trình vi phân bằng phương pháp Euler
trên Maple 16 và trên máy tính điện tử khoa học. Luận văn gồm hai
chương.
Chương 1 Trình bày tổng quan về phương pháp Euler, Euler cải tiến
giải phương trình, hệ phương trình vi phân thường. Các phương pháp
này được so sánh và minh họa qua thực hành tính toán trên máy tính
Vinacal 570ES PLUS và trên chương trình Maple.
Có thể coi các quy trình và chương trình trong Luận văn là các chương
trình mẫu để giải bất kì phương trình vi phân thường nào. Điều này đã
được chúng tôi thực hiện trên rất nhiều phương trình cụ thể.
Chương 2 Trình bày phương pháp Euler giải phương trình vi phân ẩn
F (t, x, x

) = 0 hoặc phương trình vi phân đại số dạng



x


= f(t, x, y),
0 = g(t, x, y).
3
3. Nhiệm vụ nghiên cứu
Luận văn có hai nhiệm vụ:
1) Nghiên cứu phương pháp Euler giải phương trình, hệ phương trình vi
phân thường và phương trình vi phân đại số.
2) Thực hành tính toán trên máy giải phương trình, hệ phương trình vi
phân thường bằng phương pháp Euler.
4. Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu: Nghiên cứu phương pháp số giải phương trình,
hệ phương trình vi phân thường và phương trình vi phân đại số.
Phạm vi nghiên cứu: Các tài liệu liên quan đến phương pháp số giải
phương trình, hệ phương trình vi phân thường và phương trình vi phân
đại số.
5. Đóng góp của luận văn
Hy vọng Luận văn là một tài liệu tổng quan và tham khảo tốt cho sinh
viên và học viên cao học về phương pháp Euler giải phương trình, hệ
phương trình vi phân thường và phương trình vi phân đại số.
6. Phương pháp nghiên cứu
Sử dụng các kiến thức và công cụ của giải tích, giải tích số, giải tích
hàm, giải tích phức, để tiếp cận và giải quyết vấn đề.
Thu thập, nghiên cứu và tổng hợp các tài liệu liên quan, đặc biệt là các
bài báo và các sách mới về vấn đề mà luận văn đề cập tới.
Chương 1
Phương pháp Euler và Euler cải
biên giải phương trình, hệ phương
trình vi phân thường
1.1. Phép nội suy và bài toán cầu phương cơ bản
1.1.1. Phép nội suy

Trong các bài toán thực tế, ta thường chỉ đo được giá trị của hàm số
y = f(t) tại một số điểm t
i
, i = 1, . . . , n của t trong khoảng [a, b] nào
đó. Thí dụ, dân số của nước ta có thể biết được theo điều tra dân số
vào các năm 1960, 1980, 1995, 2009. Không có một biểu thức toán học
chính xác nào cho phép tính số dân trong các năm đó. Do đó ta cũng
không thể tính số dân của các năm khác (thí dụ, 2000, 2010, 2020,. . .)
một cách giải tích. Tuy nhiên, sử dụng phép nội suy, ta có thể tính được
(xấp xỉ) số dân trong năm bất kì nào đó.
Có thể, công thức toán học của hàm số y = f(t) là đã biết, nhưng
khá cồng kềnh, không thuận tiện (tốn thời gian và bộ nhớ) khi tính toán
giá trị (chính xác) của nó tại các điểm cụ thể. Dùng phép nội suy ta có
thể dễ dàng tính được giá trị (gần đúng) của hàm y = f(t) tại bất kỳ
điểm nào trong đoạn [a, b]. Hơn nữa, phép nội suy còn cho phép ta tính
gần đúng đạo hàm, tích phân,. . . của hàm số y = f(t) trên đoạn [a, b].
Bài toán nội suy tổng quát được phát biểu như sau.
4
5
Giả sử không biết công thức giải tích của hàm số y = f(t) nhưng biết
bảng giá trị của y chỉ tại các điểm t
i
, i = 1, . . . , n, tức là ta chỉ biết các
giá trị y
i
= f(t
i
), i = 1, . . . , n. Ngoài ra ta không có thông tin gì thêm
về hàm y = f(t).
Bài toán đặt ra là: Tìm giá trị của y(= f(t)) tại vị trí

¯
t nào đó. Giá trị
của y tại
¯
t không có trong bảng nội suy cho trước (
¯
t = t
i
, i = 1, . . . , n.).
Có nhiều phương pháp để xác định giá trị của y tại
¯
t. Các phương
pháp này đều có chung một cách giải, đó là: “Tìm một hàm theo các giá
trị trong bảng nội suy xấp xỉ hàm f(t)”.
Hàm xấp xỉ thường được chọn sao cho đơn giản và dễ tính toán.
Hàm xấp xỉ có thể là đa thức, hàm mũ, hàm lượng giác, chuỗi Taylor,
chuỗi Fourie,. . . .
Khi hàm xấp xỉ ϕ(t) là một đa thức đại số thì phép nội suy tương
ứng được gọi là nội suy bằng đa thức đại số. Dưới đây ta sẽ xem xét
phép nội suy bằng đa thức đại số.
Nội suy bằng đa thức đại số
Đa thức đại số là những hàm khá thuận tiện trong sử dụng (bất biến
đối với phép cộng, nhân, lấy tích phân và đạo hàm, . . . , tức là sau các
phép toán trên áp dụng vào đa thức ta được kết quả vẫn là đa thức).
Hơn nữa, các hàm liên tục đều xấp xỉ được (địa phương) bằng đa thức.
Thật vậy, ta có
Định lý 1.1.1. Giả sử hàm f(t) liên tục trên đoạn [a, b]. Khi ấy với mỗi
 > 0 cho trước tồn tại một đa thức P (t) sao cho
|f(t) −P (t)| <  với mọi t ∈ (a, b).
Định lí nói rằng, đa thức nội suy P (t) nằm trong -ống có trục là

6
đường cong f(t).
Bài toán nội suy một hàm số bằng đa thức được phát biểu như sau:
Cho các mốc nội suy a ≤ t
0
≤ t
1
≤ ··· ≤ t
n
≤ b. Hãy tìm đa
thức bậc n, P (t) = a
0
t
n
+ + a
n−1
t + a
n
sao cho P (t
i
) = y
i
:= f(t
i
),
i = 0, 1, 2, . . . , n.
Ý nghĩa hình học của phép nội suy đa thức là:
Xây dựng đường cong đa thức y = P(t) đi qua n điểm (t
i
, y

i
), i =
0, 1, 2, . . . , n. đã cho.
Như vậy, các hệ số a
i
của đa thức cần tìm phải thoả mãn hệ phương
trình đại số tuyến tính



















t
m
0
a

0
+ t
m−1
0
a
1
+ + a
n−1
t
0
+ a
n
= y
0
,
t
m
1
a
0
+ t
m−1
1
a
1
+ + a
n−1
t
1
+ a

n
= y
1
,
···
t
m
n
a
0
+ t
m−1
n
a
1
+ + a
n−1
t
n
+ a
n
= y
n
.
(1.1.1)
Nếu m < n (m > n) thì hệ (1.1.1) nói chung vô nghiệm (vô định). Khi
m = n hệ (1.1.1) có định thức Vandermond khác 0:
∆ =













t
n
0
t
2
0
t
0
1
t
n
1
t
2
1
t
1
1
1
t

n
n
t
2
n
t
n
1












=

0≤i,j≤n
(t
i
− t
j
) = 0,
nên hệ có duy nhất nghiệm a
i

, i = 0, 1, . . . , n. Các hệ số a
i
có thể tính
được theo công thức nghiệm của hệ phương trình đại số tuyến tính.
Đa thức nội suy Lagrange
Đa thức nội suy Lagrange cho phép giải quyết bài toán nội suy mà không
cần giải hệ phương trình (1.1.1). Trước tiên ta tìm đa thức P
i
(t) bậc n
7
(được gọi là hàm Lagrange) thỏa mãn
P
i
(t
j
) = δ
ij
(i, j = 0, . . . , n),
trong đó δ
ij
=



1, nếu i = j
0, nếu i = j
là kí hiệu Kroneker. Vì t
j
, i = j là nghiệm
của phương trình đa thức P

i
(t) = 0 nên P
i
(t) có dạng
P
i
(t) = A
i
(t −t
0
) ···(t − t
i−1
)(t −t
i+1
) ···(t − t
n
) = A
i
n

j=1
j=i
(t −t
j
).
Do P
i
(t
i
) = 1 nên

1 = P
i
(t
i
) = A
i
(t
i
− t
0
) (t
i
− t
i−1
)(t
i
− t
i+1
) . . . (t
i
− t
n
).
Vậy
A
i
=
1
(t
i

− t
0
) . . . (t
i
− t
i−1
)(t
i
− t
i+1
) . . . (t
i
− t
n
)
.
Do đó
P
i
(t) =
(t −t
0
) . . . (t − t
i−1
)(t −t
i+1
) (t −t
n
)
(t

i
− t
0
) . . . (t
i
− t
i−1
)(t
i
− t
i+1
) . . . (t
i
− t
n
)
=
n

j=0
j=i
(t −t
j
)
(t
i
− t
j
)
.

Đặt P (t) =
n

i=0
y
i
P
i
(t) thì P (t
j
) =
n

i=0
y
i
P
i
(t
j
) = y
j
(j = 0, . . . , n).
Do hệ (1.1.1) có duy nhất nghiệm nên
P (t) =
n

i=0
y
i

P
i
(t) =
n

i=0
n

j=0
j=i
(t −t
j
)
(t
i
− t
j
)
y
i
(1.1.2)
là đa thức nội suy duy nhất cần tìm (trùng với đa thức tìm được bằng
cách giải phương trình đại số (1.1.1)).
Đa thức này được gọi là đa thức nội suy (interpolating polynomial)
Lagrange.
8
1.1.2. Qui tắc cầu phương cơ bản
Nội dung cơ bản của quy tắc cầu phương là: Để tính tích phân
b


a
f(t)dt
ta thay f(t) bởi một đa thức nội suy P (t).
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
P (t) (tính được chính xác).
Giả sử ta có n + 1 điểm nội suy khác nhau t
0
, t
1
, . . . , t
n
trong khoảng
[a, b]. Đa thức nội suy Lagrange bậc nhỏ hơn n + 1 có dạng :
P (t) =
n

j=0
f(t
j
)P
j
(t),
trong đó
P
j
(t) =
s

i=1,i=j
(t −t

i
)
(t
j
− t
i
)
, nếu n ≥ 1 và P (t) = f(t
0
) nếu n = 0.
Khi ấy
b

a
f(t)dt ≈
n

j=0
ω
j
f(t
j
).
Các trọng số ω
j
được tính theo công thức ω
j
=
b


a
P
j
(t)dt.
Nếu n = 0 thì đa thức nội suy P(t) ≡ f(t
0
) và ta có:
b

a
f(t)dt ≈ (b −a)f(t
0
).
Ta xét một số trường hợp đặc biệt.
• Nếu chọn n = 0 và t
0
= 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:
b

a
f(t)dt ≈ (b −a)f(a). (1.1.3)
9
• Nếu chọn n = 0 và t
0
= 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:
b

a

f(t)dt ≈ (b −a)f(b). (1.1.4)
• Nếu chọn n = 0 và t
0
=
a+b
2
thì ta có công thức xấp xỉ tích phân
10
bởi diện tích hình chữ nhật ABMN:
b

a
f(t)dt ≈ (b −a)f(
a + b
2
). (1.1.5)
• Nếu chọn n = 1 và t
0
= a, t
1
= b thì P
1
(t) =
t−b
(a−b)
và P
2
(t) =
t−a
(b−a)

. Suy
ra
ω
1
=
b

a
P
1
(t)dt =
b

a
t −b
(a −b)
dt =
1
(a −b)
(t −b)
2
2





b
a
=

b −a
2

ω
2
=
b

a
P
2
(t)dt =
b

a
t −a
(b −a)
dt =
1
(b −a)
(t −a)
2
2





b
a

=
b −a
2
.
Chứng tỏ
b

a
f(t)dt ≈
b −a
2
[f(a) + f(b)].
Như vậy nếu n = 1 và thì t
0
= a, t
1
= b ta có bởi công thức xấp xỉ tích
phân bởi diện tích hình thang ABED
b

a
f(t)dt ≈
b −a
2
[f(a) + f(b)]. (1.1.6)
11
• Nếu chọn n = 2 và t
0
= a, t
1

=
a+b
2
, t
2
= b thì, đặt h = b −a, ta có:
P
1
(t) =
(t −
a+b
2
)(t −b)
(a −
a+b
2
)(a −b)
=
2
h
2
(t −
a + b
2
)(t −b),
P
2
(t) =
(t −a)(t − b)
(

a+b
2
− a)(
a+b
2
− b)
=
−4
h
2
(t −a)(t − b),
P
3
(t) =
(t −a)(t −
a+b
2
)
(b −a)(b −
a+b
2
)
=
2
h
2
(t −a)(t −
a + b
2
).

Suy ra:
ω
1
=
b

a
P
1
(t)dt =
2
h
2
b

a
(t −
a + b
2
)(t −b)dt =
2
h
2
b

a
(t −b −
a −b
2
)(t −b)dt

=
2
h
2
b

a
[(t −b)
2
− (
a −b
2
)(t −b)]dt =
2
h
2
[
(t −b)
3
3
− (
a −b
2
)
(t −b)
2
2
]






b
a
=
2
h
2
(b −a)
3
12
=
h
6
.
12

ω
2
=
b

a
P
2
(t)dt =
−4
h
2

b

a
(t −a)(t − b)dt =
−4
h
2
b

a
(t −a)(t − a + (a − b))dt
=
−4
h
2
[
(t −a)
3
3
+
(t −a)
2
2
(a −b)]





b

a
=
4h
6
.
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 toán trên ta đi đến công thức Simpson:
b

a
f(t)dt ≈
h
6
[f(a) + 4f(
a + b
2
) + f(b)]. (1.1.7)
1.2. Bài toán Cauchy của phương trình vi phân cấp
một
Xét hệ phương trình vi phân
x

= f(t, x), t ∈ (a, b) , x ∈ R

n
, (1.2.1)
với điều kiện ban đầu
x(t
0
) = x
0
, t
0
∈ (a, b) . (1.2.2)
Nghiệm của phương trình vi phân (1.2.1)-(1.2.2) trên khoảng (a, b) là
một hàm vectơ có các thành phần khả vi liên tục thỏa mãn phương
trình (1.2.1) với mọi t ∈ (a, b) và điều kiện ban đầu (1.2.2). Ta thấy
phương trình (1.2.1)-(1.2.2) tương đương với phương trình tích phân
x(t) = x
0
+
t

t
0
f(s, x(s))ds, (1.2.3)
theo nghĩa mọi nghiệm của phương trình (1.2.1)-(1.2.2) cũng là nghiệm
khả vi liên tục của phương trình (1.2.3) và ngược lại. Ta có các định lí
13
sau về sự tồn tại và duy nhất nghiệm của phương trình vi phân (1.2.1)
thỏa mãn điều kiện ban đầu (1.2.2). Để cho gọn ta phát biểu các định lí
cho một phương trình, tức là x ∈ R.
Định lý 1.2.1. (Picard-Lindel¨of) Giả sử:
1. f(t, x) là một hàm liên tục theo cả hai biến trong miền chữ nhật

đóng, giới nội D,
D = {(t, x) ∈ R ×R|t
0
− a ≤ t ≤ t
0
+ a; x
0
− b ≤ x ≤ x
0
+ b}.
Do D là một miền đóng, giới nội nên từ giả thiết này suy ra tồn tại
một số dương M sao cho |f(t, x)| ≤ M với mọi (t, x) ∈ D.
2. Hàm f(t, x) thỏa mãn điều kiện Lipschitz theo biến x trong D đều
theo t, tức là, tồn tại một hằng số dương L sao cho
|f(t, x
2
) −f(t, x
1
)| ≤ L |x
2
− x
1
|
với mọi (t, x
1
) ∈ D, (t, x
2
) ∈ D. Khi ấy tồn tại duy nhất một nghiệm
x(t) của phương trình (1.2.1) trong khoảng t
0

− H ≤ t ≤ t
0
+ H,
trong đó H = min(a,
b
M
), thỏa mãn điều kiện ban đầu (1.2.2).
Chứng minh. Xem, thí dụ, [1]. 
Nhận xét 1.2.1. Nếu hàm f(t, x) và
∂f(t, x)
∂x
là liên tục trên hình chữ
nhật D thì




∂f(t, x)
∂x




≤ L với mọi (t, x) ∈ D. Hơn nữa, theo Định lí
giá trị trung bình, với mỗi cặp (t, x
1
) ∈ D và (t, x
2
) ∈ D tồn tại điểm
(t, x


) ∈ D sao cho
|f(t, x
1
) −f(t, x
2
)| =




∂f(t, x

)
∂x




|x
1
− x
2
| ≤ L |x
1
− x
2
|.
Chứng tỏ f(t, x) thỏa mãn điều kiện Lipschitz trên D.
14

Nhận xét 1.2.2. Định lí Picard-Lindel¨of có tính chất địa phương (tồn
tại nghiệm trong một lân cận của t
0
là khoảng [t
0
−H, t
0
+ H]). Với một
số lớp hàm f(t, x), ta có thể chứng minh sự tồn tại nghiệm toàn cục của
phương trình (1.2.1).
Thí dụ xét phương trình vi phân tuyến tính cấp một
x

= P (t)x + Q(t),
trong đó P (t) và Q(t) là những hàm liên tục trên [a, b]. Ta có
f(t, x) = P (t)x + Q(t).
Đặt L = max
t∈[a,b]
P (t). Khi ấy
|f(t, x
1
) −f(t, x
2
)| = |P (t)(x
1
− x
2
)| ≤ L |x
1
− x

2
|
với mọi t ∈ [a, b] và mọi −∞ < x
1
, x
2
< +∞. Chứng tỏ
f(t, x) = P (t)x + Q(t)
thỏa mãn điều kiện Lipschitz trên dải chữ nhật vô tận [a, b]×(−∞, +∞).
Sự tồn tại nghiệm toàn cục của phương trình
x

= P (t)x + Q(t)
trên toàn khoảng (a, b) là hệ quả của Định lí sau.
Định lý 1.2.2. Giả sử f(t, x) là hàm liên tục theo hai biến và thỏa mãn
điều kiện Lipschitz
|f(t, x
1
) −f(t, x
2
)| ≤ L |t
1
− t
2
|
trên miền chữ nhật vô tận [a, b] × (−∞, +∞) và (t
0
, x
0
) là một điểm

trong miền đó. Khi ấy bài toán giá trị ban đầu (1.2.1)-(1.2.2) có nghiệm
duy nhất trên khoảng (a, b).
Chứng minh. Xem, thí dụ, [1]. 
15
1.3. Phương pháp Euler
1.3.1. Định lí tồn tại nghiệm
Xét phương trình vi phân
x

= f(t, x), t ∈ (a, b), x ∈ R, (1.3.1)
thỏa mãn điều kiện ban đầu
x(t
0
) = x
0
, t
0
∈ (a, b) . (1.3.2)
Khi f(t, x) là liên tục nhưng không là Lipschitz, nghiệm của bài toán
Cauchy vẫn tồn tại nhưng không duy nhất.
Ví dụ 1.3.1. Xét bài toán Cauchy
dx
dt
=
3

x, x(0) = 0.
Bài toán này có vô số nghiệm: ngoài nghiệm x(t) ≡ 0 còn có một họ
nghiệm
x(t) =








0 khi t ≤ c;

2(t −c)
3

3
2
khi t ≥ c
trong đó c ≥ 0 bất kì.
Nhận xét rằng f(t, x) =
3

x không phải là hàm Lipschitz theo x trong
lân cận điểm (0, 0).
Ví dụ 1.3.2. Xét bài toán Cauchy
dx
dt
= (sin 2t)
3

x, x(0) = 0.
Bài toán này có ba nghiệm
x(t) ≡ 0; x(t)= ±

2

2
3

3
sin
3
t
Hàm số f(t, x) = (sin 2t).
3

x không phải là Lipschitz theo x trong lân
cận điểm (0, 0).
Ta có
16
Định lý 1.3.1. (Cauchy-Peano) Giả sử f(t, x) là hàm liên tục theo hai
biến trong miền đóng, giới nội D :
D = {(t, x) : t
0
− a ≤ t ≤ t
0
+ a, x
0
− b ≤ x ≤ x
0
+ b}.
Khi ấy tồn tại ít nhất một nghiệm x = x(t) của phương trình (1.3.1)
trong khoảng t
0

− H ≤ t ≤ t
0
+ H, trong đó H = min(a,
b
M
), thỏa mãn
điều kiện ban đầu (1.3.2). Ở đây M = max
(t,x)∈D
|f(t, x)|, H = min(a,
b
M
).
Chứng minh. Xem, thí dụ, [1] 
1.3.2. Phương pháp đường gấp khúc Euler
Để giải phương trình vi phân (1.3.1) thỏa mãn điều kiện ban đầu (1.3.2)
ta có thể dùng phương pháp đường gấp khúc Euler với giá trị x
i
xấp xỉ
của nghiệm x(t
i
) tại các điểm t
i
như sau.
Theo Định lí 1.3.1, nếu f(t, x) liên tục trên đoạn [a, b] thì tồn tại
H = min(a,
b
M
), trong đó M = max
(t,x)∈D
|f(t, x)| sao cho phương trình

(1.3.1)-(1.3.2) có nghiệm trên khoảng x
0
−H ≤ x ≤ x
0
+H. Để xây dựng
nghiệm gần đúng trên đoạn [x
0
, x
0
+ H] , ta chia đoạn [x
0
, x
0
+ H] , bởi
các điểm chia t
0
< t
1
< ··· < t
n
= H. Vì x(t) là nghiệm của phương
trình (1.3.1) nên ta có x

(t
0
) = f (t
0
, x
0
) . Mặt khác, theo định nghĩa, ta


x

(t
0
) = lim
t→t
0
x(t) −x(t
0
)
t −t
0

x(t) −x(t
0
)
t −t
0
.
Suy ra,
x(t) −x(t
0
)
t −t
0
≈ f(t
0
, x
0

).
Do x(t
0
) = x
0
nên ta có
x(t) ≈ x
0
+ f(t
0
, x
0
) (t − t
0
) .
17
Suy ra
x(t
1
) ≈ x
0
+ f(t
0
, x
0
) (t
1
− t
0
) .

Coi x
1
= x
0
+f(t
0
, x
0
) (t
1
− t
0
) là giá trị xấp xỉ của giá trị nghiệm x (t
1
) .
Đặt h
i
= t
i
−t
i−1
, i = 1, , n và kí hiệu x (t
i
) = x
i
, i = 0, 1, , n, tiếp tục
làm như trên ta có dãy truy hồi tính các giá trị gần đúng của nghiệm
x(t) tại các điểm t
i
:

x
i
= x
i−1
+ h
i
f(t
i−1
, x
i−1
), i = 1, 2, . . . , n. (1.3.3)
Nối các điểm (t
i
, x
i
) với i = 1, . . . , n, ta được một đường gấp khúc x
h
(t),
gọi là đường gấp khúc Euler.
Để cho tiện, coi h
i
= t
i
− t
i−1
≡ h =
H
n
.
Với mỗi h chọn trước, đường gấp khúc Euler cho ta một xấp xỉ của

đường cong nghiệm. Khi h thay đổi ta được một họ các đường gấp khúc
Euler. Cho h tiến tới 0 ta được một họ các hàm số giới nội đều và liên
tục đồng bậc trên khoảng t
0
≤ t ≤ t
0
+ H. Theo bổ đề Arzelà - Ascoli,
từ {x
h
(t)} có thể trích ra một dãy các hàm {x
h
k
(t)} hội tụ đều tới một
hàm liên tục x = x(t) trên khoảng t
0
≤ x ≤ t
0
+ H. Hàm số x = x(t)
chính là nghiệm của phương trình vi phân (1.3.1) thỏa mãn điều kiện
ban đầu (1.3.2) trong khoảng t
0
− H ≤ t ≤ t
0
+ H.
Nhận xét 1.3.1.
Có nhiều cách để đi đến công thức (1.3.3). Khai triển Taylor của hàm
x(t) tại điểm t = t
n−1
ta có:
x(t

i
) = x(t
i−1
) + x

(t
i−1
)(t
i
− t
i−1
) +
x

(ξ)
2!
(t
i
− t
i−1
)
2
.
Bỏ đi đại lượng vô cùng bé bậc hai khi h = t
i
− t
i−1
đủ nhỏ và thay
x


(t
i−1
) = f(t
i−1
, x
i−1
) ta được x(t
i
) = x
i−1
+ f(t
i−1
, x
i−1
)(t
i
− t
i−1
), tức
là (1.3.3).
18
Cũng có thể nhận được công thức (1.3.3) nhờ công thức xấp xỉ đạo
hàm như sau:
Theo định nghĩa đạo hàm ta có
x

(t
i
) = lim
h→0

x(t
i
+ h) −x(t
i
)
h
.
Như vậy,
f(t
i
, x(t
i
)) = x

(t
i
) ≈
x(t
i+1
) −x(t
i
)
h
.
Từ đây ta có công thức (1.3.3) với x
i
là xấp xỉ của x(t
i
). Tuy nhiên, ba
cách đi đến phương pháp Euler thực chất cũng chỉ là một: xấp xỉ nghiệm

qua biểu thức đạo hàm của nó. Công thức (1.3.3) có thể suy ra từ xấp
xỉ tích phân như sau.
1.3.3. Phương pháp xấp xỉ tích phân
Giả sử x = x(t) là nghiệm của x

= f(t, x) thỏa mãn điều kiện x(t
0
) = x
0
.
Khi ấy ta có x

(t) = f(t, x(t)) với mọi t đủ gần t
0
. Tích phân hai vế của
phương trình trên từ t đến x + h với h đủ nhỏ, ta được:
x(t + h) − x(t) =
t+h

t
f(s, x(s))ds.
Nếu xấp xỉ tích phân
t+h

t
f(s, x(s))ds bởi h.f(t, y(t)) (bằng diện tích hình
chữ nhật ABCD), thì ta được công thức
x(t + h) − x(t) = h.f(t, x(t)).
Thay t bởi t
i

, i = 0, trong đó h =
H
n
,
x
i
= x
i−1
+ h.f(t
i−1
, x
i−1
). (1.3.4)
Đây chính là phương pháp Euler, còn được gọi là phương pháp Euler
tiến. (forward Euler method).
19
Ta cũng có thể xấp xỉ tích phân
t+h

x
f(s, x(s))dt bởi diện tích hình chữ
nhật ABEF :
x(t + h) − x(t) = h.f(t + h, x(t + h)).
Từ đây ta có công thức sai phân
x
i
= x
i−1
+ h.f(t
i

, x
i
). (1.3.5)
Phương pháp tính theo công thức này được gọi là phương pháp Euler
lùi (backward Euler method).
20
Để tính giá trị x
i
, phương pháp Euler tiến sử dụng hệ số góc của
tiếp tuyến tại điểm t
i−1
(tức là giá trị x

(t
i
) = f(t
i
, x
i
)), còn phương
pháp Euler lùi sử dụng hệ số góc tiếp tuyến tại điểm t
i
(tức là giá trị
x

(t
i
) = f(t
i
, x

i
)). Phương pháp Euler lùi sử dụng thông tin điểm cuối
nên nói chung chính xác hơn phương pháp Euler tiến. Nhưng phương
pháp Euler tiến là phương pháp hiển (explicit method), tức là x
i
được
tính thông qua x
i−1
một cách trực tiếp, còn phương pháp Euler lùi là
phương pháp ẩn (implicit method): để tính đươc x
i
ta phải giải một
phương trình phi tuyến, vì vậy phương pháp Euler lùi khó sử dụng hơn.
Nếu xấp xỉ tích phân
t+h

t
f(s, x(s))ds bởi diện tích hình thang ABED :
t+h

t
f(s, x(s))ds ≈
h
2
[f(t + h, x(t + h)) + f(t, x(t))]
thì ta nhận được công thức sai phân:
x
i
= x
i−1

+
h
2
[f(t
i−1
, x
i−1
) + f(t
i
, x
i
)]. (1.3.6)
Phương pháp dựa trên công thức này được gọi là phương pháp hình thang
(trapezium method, trapezoidal method). Phương pháp hình thang cũng

×