TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2KHOA TOÁN VŨ THỊ CHINH MỘT SỐ PHƯƠNG PHÁP SỐ GIẢI GẦN ĐÚNG PHƯƠNG TRÌNH VI PHÂN THƯỜNG KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC... TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2KHOA
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2
KHOA TOÁN
VŨ THỊ CHINH
MỘT SỐ PHƯƠNG PHÁP SỐ GIẢI GẦN ĐÚNG
PHƯƠNG TRÌNH VI PHÂN THƯỜNG
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
Trang 2TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2
KHOA TOÁN
VŨ THỊ CHINH
MỘT SỐ PHƯƠNG PHÁP SỐ GIẢI GẦN ĐÚNG
PHƯƠNG TRÌNH VI PHÂN THƯỜNG
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
Chuyên ngành: Toán Giải tích
Mã số:
NGƯỜI HƯỚNG DẪN KHOA HỌC:
PGS.TS KHUẤT VĂN NINH
Trang 3Để hoàn thành khóa luận tốt nghiệp này, em xin bày tỏ lòng biết ơnchân thành tới các thầy giáo và cô giáo trong khoa Toán – Trường ĐạiHọc Sư Phạm Hà Nội 2, đã tận tình giúp đỡ chỉ bảo trong suốt thời gian
em theo học tại khoa và trong thời gian làm khóa luận
Đặc biệt em xin bày tỏ lòng biết ơn sâu sắc tới PGS.TS Khuất VănNinh – Giảng viên khoa Toán Trường Đại Học Sư Phạm Hà Nội 2, ngườitrực tiếp hướng dẫn em, luôn tận tâm chỉ bảo và định hướng cho em trongsuốt quá trình làm khóa luận để em có được kết quả như ngày hôm nay.Mặc dù đã có rất nhiều cố gắng, song thời gian và kinh nghiệm bảnthân còn nhiều hạn chế nên khóa luận không thể tránh khỏi những thiếusót, em rất mong được sự đóng góp ý kiến của các thầy cô giáo, các bạnsinh viên và bạn đọc
Em xin chân thành cảm ơn
Hà Nội, ngày 21 tháng 04 năm 2017
Sinh viên
Vũ Thị Chinh
Trang 4Khóa luận này là kết quả nghiên cứu của bản thân em dưới sự hướngdẫn tận tình của thầy giáo PGS.TS Khuất Văn Ninh Trong khi nghiêncứu hoàn thành đề tài nghiên cứu này em đã tham khảo một số tài liệu
đã ghi trong phần tài liệu tham khảo Em xin khẳng định kết quả của đềtài “Một số phương pháp số giải gần đúng phương trình vi phânthường” là kết quả của việc nghiên cứu, học tập và nỗ lực của bản thân,không có sự trùng lặp với kết quả của các đề tài khác
Hà Nội, ngày 21 tháng 04 năm 2017
Sinh viên
Vũ Thị Chinh
Trang 5LỜI NÓI ĐẦU 1
1.1 Khái niệm về số gần đúng 3
1.1.1 Sai số tuyệt đối, sai số tương đối 3
1.1.2 Sai số thu gọn 5
1.1.3 Một số bài toán về ước lượng sai số 6
1.2 Sai phân và tính chất của sai phân 9
1.2.1 Định nghĩa sai phân 9
1.2.2 Các tính chất của sai phân 10
1.2.3 Hệ quả 14
1.3 Khái quát về phương trình vi phân 15
1.3.1 Một số khái niệm 15
1.3.2 Bài toán Cauchy đối với phương trình vi phân cấp một 16
2 PHƯƠNG PHÁP EULER 18 2.1 Nguồn gốc phương pháp Euler 18
2.2 Phương pháp Euler 19
Trang 62.4 Tổng quát phương pháp một bước hiện 33
3 PHƯƠNG PHÁP RUNGE - KUTTA 41 3.1 Phương pháp Runge - Kutta 41
3.1.1 Phương pháp Runge – Kutta bậc một 42
3.1.2 Phương pháp Runge – Kutta bậc hai 42
3.1.3 Phương pháp Runge – Kutta bậc ba 44
3.1.4 Phương pháp Runge – Kutta bậc bốn 47
3.2 Tính ổn định tuyệt đối của phương pháp Runge – Kutta 51 Kết luận 54
Tài liệu tham khảo 55
Trang 7LỜI NÓI ĐẦU
1 Lí do chọn đề tài
Thoạt đầu, Toán học được phát sinh do nhu cầu giải quyết các bài
toán có nguồn gốc thực tiễn Cùng với sự phát triển của nội tại Toán
học và các ngành khoa học khác, Toán học chia thành hai lĩnh vực: Toán
học lí thuyết và Toán học ứng dụng
Trong lĩnh vực Toán ứng dụng thường gặp rất nhiều những bài toán
liên quan đến phương trình vi phân thường Vì vậy việc nghiên cứu
phương trình vi phân thường đóng vai trò quan trọng trong lý thuyết
Toán học
Chúng ta biết rằng chỉ một số ít phương trình vi phân thường có thể
tìm được nghiệm chính xác, trong khi phần lớn phương trình vi phân
nảy sinh từ bài toán thực tiễn đều không tìm được nghiệm chính xác
Do vậy, một vấn đề đặt ra là tìm cách để xác định nghiệm gần đúng của
phương trình vi phân
Xuất phát từ nhu cầu đó, các nhà Toán học đã tìm ra nhiều phương
pháp để giải gần đúng phương trình vi phân thường
Dưới góc độ của một sinh viên chuyên ngành Toán và trong phạm vi
của một khóa luận tốt nghiệp, dưới sự hướng dẫn tận tình của PGS.TS
Khuất Văn Ninh, em xin trình bày hiểu biết của mình về vấn đề:
“Một số phương pháp số giải gần đúng phương trình vi phân
thường” Em đã đi sâu vào nghiên cứu hai phương pháp số: phương
Trang 82 Mục đích và nhiệm vụ nghiên cứu
Giới thiệu khái quát về các kiến thức cơ bản, nghiên cứu các phương
pháp số để giải phương trinh vi phân
3 Phương pháp nghiên cứu
+ Phương pháp nghiên cứu lí luận
+ Phương pháp nghiên cứu tổng kết tài liệu
Khóa luận gồm ba chương
Chương 1 " Kiến thức chuẩn bị" Chương này nhắc lại một số kiến
thức cơ bản về số gần đúng và sai số, khái quát về phương trình vi phân
và bài toán Cauchy đối với phương trình vi phân cấp một
Chương 2 "Phương pháp Euler" Mục đích chương này trình bày về
một số phương pháp Euler và ứng dụng giải gần đúng các phương trình
vi phân thường
Chương 3 "Phương pháp Runge - Kutta" Mục đích chương này trình
bày về phương pháp Runge - Kutta và ứng dụng của nó giải gần đúng
các phương trình vi phân thường
Trang 9KIẾN THỨC CHUẨN BỊ
Chương này trình bày một số kiến thức cơ bản về số gần đúng và sai số,
khái quát về phương trình vi phân và bài toán Cauchy đối với phương
trình vi phân cấp một
1.1.1 Sai số tuyệt đối, sai số tương đối
Trong nhiều bài toán, chúng ta không thể xác định được giá trị chính
xác của một đại lượng mà chỉ làm việc với số gần đúng của nó Độ lệch
giữa giá trị chính xác và giá trị gần đúng được gọi là sai số Việc đánh
giá sai số cho ta đánh giá được chất lượng của việc giải quyết bài toán
Nghiên cứu và đánh giá sự sai khác này là yêu cầu bắt buộc khi ta sử
dụng số gần đúng vào tính toán trong việc giải bài toán
Định nghĩa 1 Số a được gọi là số gần đúng của số chính xác A nếu nó
xấp xỉ A Ta kí hiệu a ≈ A
Định nghĩa 2 Đại lượng ∆ = |a − A| gọi là sai số thực sự của số gần
Trang 10Trong thực tế, do không tính được A, ta cần tìm một số dương ∆a càng
Kết luận: cùng một giá trị gần đúng có thể có nhiều sai số tuyệt đối
khác nhau, trong ví dụ này sai số 0.002 tốt hơn
Trong tính toán ta thường gặp 4 loại sai số sau:
• Sai số giả thiết – Do mô hình hóa, lý tưởng hóa bài toán thực tế
Trang 11• Sai số các số liệu – Các số liệu thường thu được bằng thực nghiệm
Trang 12số của phép thu gọn số a ký hiệu là Γa = |a − a|
Ta có |A − a| ≤ |A − a| + |a − a| ≤ ∆a + Γa
Như vậy sau khi thu gọn thì sai số tuyệt đối tăng thêm Γa
1.1.3 Một số bài toán về ước lượng sai số
Trong phần này, chúng ta xét bài toán ước lượng sai số tính toán khi
thực hiện các phép toán số học và tính giá trị của các hàm một biến
Cho hàm y = f (x) và x là số gần đúng của x0 Ký hiệu ∆x và ∆y làsai số tuyệt đối của đối số và hàm số Ta sẽ xét bài toán ước lượng sai
số của hàm hoặc của biến nếu biết một trong hai số
i) Bài toán thuận
Bài toán: Ước lượng ∆y khi biết x và ∆x
Theo công thức số gia hữu hạn Lagrange ta có
Trang 13Ví dụ 3.
y = lnx, ta có f0(x) = 1/x nên
ii) Bài toán ngược
Biết giá trị gần đúng x ta cần phải tính y với sai số ∆x là bao nhiêu để
đảm bảo ∆y ≤ ∆, với ∆ là một giá trị cho trước Từ công thức (1.2) ta
iii) Sai số của tổng hoặc hiệu
Mệnh đề 1 Sai số tuyệt đối của một tổng hay một hiệu bằng tổng các
sai số tuyệt đối thành phần
Chứng minh Để đơn giản ta xét u = a ± b với các số a, b có giá trị
đúng a0, b0 và sai số tuyệt đối ∆a, ∆b tương ứng
Khi đó
a0 − ∆a ≤ a ≤ a0 + ∆a
b0 − ∆b ≤ b ≤ b0 + ∆b
Trang 14Do đó ta có
(a0 + b0) − (∆a + ∆b) ≤ a + b ≤ (a0 + b0) + (∆a + ∆b)
(a0 − b0) − (∆a − ∆b) ≤ a − b ≤ (a0 − b0) + (∆a − ∆b)
Đó chính là điều phải chứng minh
Trường hợp tổng hay hiệu của nhiều số hạng cũng được xét tương tự
Ví dụ 5
Cho a = 50.5, b = 50.9 với ∆a = ∆b = 0.05 và u = a − b
Ta có u = 0.4 với ∆u = 0.05 + 0.05 = 0.1
Vậy δu = 0.1/0.4 = 25%, hay trừ hai số gần bằng nhau thì hiệu sẽ có
sai số tương đối là lớn
iv) Sai số của tích hoặc thương
Mệnh đề 2 Sai số tương đối của một tích hay một thương bằng tổng các
sai số tương đối thành phần
Chứng minh Xét thương
u = x1 xm
y1 ypGiả sử tất cả các số hạng của tích và thương đều dương Khi đó ta có
lnu = lnx1 + + lnxm − lny1 − − lnypLại có
Trang 151.2.1 Định nghĩa sai phân
Giả sử f : R → R là một hàm số cho trước và h = cosnt, h 6= 0 Ta gọisai phân cấp một của f (x) là đại lượng
Trang 16Một cách tổng quát
∆nf (x) := ∆∆n−1f (x) (n ≥ 1) , ∆0f (x) := f (x)
là sai phân cấp n
1.2.2 Các tính chất của sai phân
1) Sai phân là một toán tử tuyến tính, nghĩa là
Trang 17(x)
Trang 19Ta chứng minh bằng phương pháp quy nạp
Trang 211.3 Khái quát về phương trình vi phân
1.3.1 Một số khái niệm
i) Phương trình vi phân cấp một
Phương trình vi phân cấp một có dạng tổng quát
trong đó hàm F xác định trong miền D ⊂ R3
Nếu trong miền D, từ phương trình (1.5) ta có thể giải được y0
y0 = f (x, y)
thì ta được phương trình vi phân cấp một đã giải đạo hàm
ii) Phương trình vi phân cấp n
Phương trình vi phân cấp n có dạng tổng quát
tức phương trình vi phân cấp n đã giải ra đối với đạo hàm cấp cao nhất
Trang 221.3.2 Bài toán Cauchy đối với phương trình vi phân cấp một
(1.7)
(t, x) ∈ R = [0, T ] × [x0 − r, x0 + r] Trong đó x (t) là hàm một biến xác định trên [0, T ] với [0, T ] cho trước,
hàm f (t, x) và x0 cho trước được gọi là bài toán Cauchy đối với phươngtrình vi phân thường cấp một, điều kiện x(0) = x0 được gọi là điều kiệnCauchy hay điều kiện ban đầu
a) Định lý tồn tại nghiệm
Xét bài toán (1.7), (t, x) ∈ R = [0, T ] × [x0 − r, x0 + r]
Nếu f (t, x) là hàm số liên tục trên hình chữ nhật R(r > 0 cố định) thì
tồn tại ít nhất một nghiệm x (t) của phương trình x0(t) = f (x, t) thỏamãn điều kiện x(0) = x0 tức là x (t) là nghiệm của bài toán (1.7)
b) Định lý duy nhất nghiệm
Xét bài toán (1.7) Nếu f (t, x) là hàm số liên tục trên hình chữ nhật R
(r > 0 cố định) và f (t, x) thỏa mãn điều kiện Lipschitz cho biến x trên
hình chữ nhật R tức là
|f (t, x) − f (t, y)| ≤ N |x − y| ,
Trang 23Xét bài toán (1.7), (t, x) ∈ R = [0, T ] × [x0 − r, x0 + r]
Hàm f (t, x) xác định trong R (r > 0 cố định) thỏa mãn 2 điều kiện:
(1) f (t, x) liên tục trên R và do R đóng và bị chặn cho nên
Trang 24PHƯƠNG PHÁP EULER
Chương này trình bày về một số phương pháp Euler và ứng dụng giải
gần đúng các phương trình vi phân thường
Ta biết rằng không phải tất cả các phương trình vi phân dạng tổng quát
y0 = f (x, y) đều có thể giải được dưới dạng hiển bằng các phương phápgiải tích Chẳng hạn, xét phương trình
y0 = e−x
Nghiệm của phương trình trên là nguyên hàm của e−x Nhưng chúng tabiết rằng nguyên hàm của hàm f (x) = e−x đều không phải là hàm sơcấp nghĩa là không thể biểu diễn dưới dạng một biểu thức giải tích Vì
Trang 252.2 Phương pháp Euler
Phương pháp Euler không phải là một phương pháp số hiệu quả nhưng
có nhiều ý tưởng liên quan đến các nghiệm là số của phương trình vi
phân được giới thiệu cách đơn giản nhất Trong phần này ta sẽ quan
tâm tới việc xây dựng và phân tích một số phương pháp số cho phương
trình vi phân bậc nhất dạng
với hàm số y có giá trị thực của biến số thực x, ở đó y0 ≡ dy/dx Đểchọn một tích phân cụ thể từ dãy vô hạn của đường cong nghiệm tạo
thành nghiệm tổng quát cho (2.1), phương trình vi phân sẽ được xét với
một điều kiện ban đầu Cho hai số thực x0 và y0, ta tìm kiếm nghiệmcho (2.1) với x > x0 sao cho
Phương trình vi phân (2.1) cùng với điều kiện ban đầu (2.2) được gọi là
bài toán giá trị ban đầu
Nói chung, mặc dù nếu f (., ) là một hàm số liên tục, điều đó không
đảm bảo rằng bài toán giá trị ban đầu (2.1 – 2.2) có một nghiệm duy
nhất Nhưng với một số điều kiện nhẹ đặt vào hàm số f , sự tồn tại và
duy nhất nghiệm của (2.1 – 2.2) được đảm bảo: kết quả được gói gọn
trong định lý sau
Định lý 1 (Định lý Picard) Giả sử f (., ) là một hàm liên tục theo
Trang 26(x, y) trong lân cận U của mặt phẳng và U có chứa hình chữ nhật
Ta sẽ không dừng lại ở các chứng minh của định lý Picard Bản chất của
chứng minh là xét dãy hàm {yn}∞n=0, xác định phép lặp Picard như sau
Trang 27chứng minh nhờ điều kiện Lipschitz của hàm f (x, y) theo biến y.
Định lý Picard được mở rộng tự nhiên cho bài toán giá trị ban đầu cho
kf (x, y) − f (x, z)k ≤ L ky − zk (2.6)
Trang 28với mọi (x, y) , (x, z) trong R Cuối cùng, giả sử
M = max {||f (x, y)|| : (x, y) ∈ R} ,
và M (XM − x0) ≤ YM Khi đó tồn tại một hàm số khả vi liên tục y (x)xác định trên khoảng đóng [x0, XM], mà thỏa mãn (2.5)
Một điều kiện đủ cho (2.6) là f liên tục trên R, khả vi tại mỗi điểm
(x, y) trong int (R), phần trong của R và có tồn tại L > 0 sao cho
∂f
∂y(x, y) ≤ L (x, y) ∈ int (R) , (2.7)
ở đó ∂f /∂y biểu thị ma trận Jacobi m × n của y ∈ Rm 7→ f (x, y) ∈ Rm,
và k.k là chuẩn của ma trận trong không gian Euclide
Định nghĩa 5 Một nghiệm y = v (x) của phương trình (2.5) được cho
là ổn định trên [x0, XM] nếu cho mỗi ε > 0 tồn tại δ > 0 sao cho vớimọi z thỏa mãn kv (x0) − zk < δ nghiệm y = w (x) của phương trình viphân y0 = f (x, y) thỏa mãn điều kiện ban đầu w (x0) = z được xác địnhvới mọi x ∈ [x0, XM] và thỏa mãn kv (x) − w (x)k < ε với mọi x trong[x0, XM]
Một nghiệm mà ổn định trên [x0, ∞] (ổn định trên [x0, XM] với mỗi XM
và với δ độc lập với XM) được cho là ổn định theo nghĩa của Lyapunov.Ngoài ra, nếu
lim
x→∞kv (x) − w (x)k = 0,
Trang 29y = v (x) của bài toán giá trị ban đầu (2.5) là ổn định trên khoảng
ddx
Trang 30A (x) ≤ aeL(x−x0 )
Mệnh đề “ (2.9) => (2.12) ” thường được gọi như bổ đề Gronwall Quay
về kí hiệu ban đầu của ta và kết luận từ (2.12) ta có
kv (x) − w (x)k ≤ kv (x0) − zk eL(x−x0 )
, x0 ≤ x ≤ XM (2.13)
Như vậy, cho ε > 0, ta chọn δ = ε exp (−L (XM − x0)) suy ra sự ổn định
Để kết thúc phần này, ta thấy rằng nếu một trong hai x0 = −∞ hoặc
XM = +∞, mệnh đề định lý 3 là không đúng Ví dụ, nghiệm tầm thường
y ≡ 0 của phương trình vi phân y0 = y là không ổn định trên [x0, ∞] vớimọi x0 > −∞ Khái quát hơn, cho bài toán giá trị ban đầu
y0 = λy, y (x0) = y0,
Trang 31định tiệm cận với λ < 0.
Trong phần tiếp theo, chúng ta xét các phương pháp số cho nghiệm
xấp xỉ của bài toán giá trị ban đầu (2.1 – 2.2) Ta hạn chế xét một
phương trình vi phân thường tương ứng với m = 1 Ta sẽ giả sử rằng
hàm f thỏa mãn điều kiện của định lý Picard trên hình chữ nhật R và
bài toán giá trị ban đầu có một nghiệm duy nhất xác định trên khoảng
[x0, XM] , −∞ < x0 < XM < ∞ Ta bắt đầu xét về phương pháp mộtbước; phương pháp này sẽ được tìm hiểu trong phần tiếp theo khi nghiên
cứu các phương pháp đa bước tuyến tính
Phương pháp Euler Giả sử bài toán giá trị ban đầu (2.1 – 2.2) có
nghiệm trên khoảng [x0, XM] Ta chia khoảng này bằng lưới điểm xn =
x0 + nh, n = 0, , N, ở đó h = (XN − x0) /N và N nguyên dương Sốthực dương h được gọi là cỡ bước Bây giờ giả sử, với mỗi n, ta tìm một
số xấp xỉ yn của y (xn), giá trị của nghiệm giải tích trên lưới điểm xn.Căn cứ vào y (x0) = y0 đã biết, ta tính yn, với mỗi n, 0 ≤ n ≤ N − 1 tađịnh nghĩa
yn+1 = yn+ hf (xn, yn) , n = 0, , N − 1
Do đó, lấy liên tiếp n = 0, 1, , N − 1, với một bước tại một thời điểm,
giá trị xấp xỉ yn trên lưới điểm xn có thể dễ dàng xác định được Phươngpháp số này được gọi là phương pháp Euler
Ví dụ 7 Tìm các nghiệm gần đúng của phương trình sau bằng phương
pháp Euler
y0 = y − 2x
y
Trang 32Nguồn gốc cơ bản của phương pháp Euler thu được bởi lấy tích phân
phương trình vi phân đầu tiên (2.1) từ xn đến xn+1
Trang 33gọi là quy tắc hình chữ nhật, với g (x) = f (x, y (x)), để có được
tham số θ ∈ [0, 1]; (2.16) được gọi là phương pháp θ Bây giờ, cho θ = 0
ta lại được phương pháp Euler Cho θ = 1, và y0 đã cho bởi (2.2), ta có
yn+1 = yn + hf (xn+1, yn+1) , n = 0, , N − 1, (2.17)
gọi là phương pháp Euler ẩn Không giống phương pháp Euler ở trên,
(2.17) đòi hỏi tìm nghiệm của một phương trình ẩn để xác định yn+1,khi đã cho yn Để nhấn mạnh sự khác biệt này, phương pháp Euler đôikhi được xem là phương pháp Euler hiện Sơ đồ mà kết quả cho giá trị
θ = 1/2 cũng là liên quan: y0 được cho bởi (2.2) và giá trị tiếp theo yn+1