Chương 5 :Giải gần đúng phương trình vi phân
Cho phương trình vi phân cấp1
y ' ( x) = f ( x, y ( x))
với điều kiện ban đầu y ( x0 ) = y0 .
Tính gần đúng giá trị y (b) với b bất kỳ cho trước
1) Phương pháp Euler :
a)Nội dung : Chia đoạn [ a , b] thành n phần đều
nhau , bởi các điểm chia
x0 = a < x1 = x0 + h < x2 = x0 + 2h <
< ... < xn = b = a + nh
Ngơ Thu Lương – Phương Pháp Tính
1
yi +1 = yi + k
k = h f ( xi , yi )
(2)
hM
b) Sai soá : y gd (b) − yd (b) ≤
[ e L (b − a ) − 1]
2L
∂f
L = Max
( x, y )
∂y
Ví dụ : Phương trình y ' ( x) = 1 + ( x − y ) 2
với điều kiện ban đầu y (2) = 1 .
Tính gần đúng nghiệm y (2.6) với bước h = 0.2
Ngơ Thu Lương – Phương Pháp Tính
2
2) Phương pháp Euler cải tiến
a) Nội dung :
k1 + k2
yi +1 = yi +
2
k1 = hf ( x i , y i )
k 2 = hf ( x i +1 , y i + k1 )
Ngô Thu Lương – Phương Pháp Tính
3
Ví dụ : Giải phương trình y ' ( x) = 1 + ( x − y ) 2 với
điều kiện ban đầu y ( 2) = 1 trong ví dụ trước theo
phương pháp Euler cải tiến , kết quả như sau :
Ngơ Thu Lương – Phương Pháp Tính
4
3) Công thức Runge – Kutta bậc 4 :
a) Công thức
1
y ( xi +1) = y ( xi ) + (k1 + 2k2 + 2k3 + k4 )
6
k1 = hf ( xi , yi )
k1
h
k 2 = hf ( xi + , yi + )
2
2
k2
h
k3 = hf ( xi + , yi + )
2
2
k4 = h f ( xi +1 , yi + k3 )
Ngô Thu Lương – Phương Pháp Tính
5
Ví dụ : Giải phương trình y ' ( x) = 1 + ( x − y ) 2 với
điều kiện ban đầu y (2) = 1 trong ví dụ trước theo
phương pháp Runge-Kutta , kết quả như sau :
Ngơ Thu Lương – Phương Pháp Tính
6
4) Giải hệ phương trình vi phân cấp 1 :
y ' = F ( x, y , z )
Giaû sử ta cần giải hệ :
trong đó
z ' = G ( x, y , z )
y = y (x) , z = z (x) là những hàm phải tìm và thỏa
điều kiện ban đầu y(x0 ) = y0 , z ( x0 ) = z0
Phương pháp Euler
yi +1 = yi + h F ( xi , yi , zi )
zi +1 = zi + h G( xi , yi , zi )
Ngơ Thu Lương – Phương Pháp Tính
7
y ' ( x) = z ( x)
Ví dụ : Cho heä
z ' ( x) = 2 z ( x) − y ( x) + x
với điều kieän y (0) = 1 , z (0) = 0 .
Tìm y (1) và z (1) nếu số bước chia là n = 4
Ngơ Thu Lương – Phương Pháp Tính
8
5) Giải phương trình vi phân cấp cao :
Giải phương trình vi phân cấp 2
y ' ' ( x) + p( x) y ' ( x) + q( x) y ( x) = f ( x)
với điều kiện đầu y ( x0 ) = y0 , y ' ( x0 ) = y0/
Đưa về hệ phương trình vi phân cấp 1 bằng phép
đổi biến y ' ( x) = z ( x) , y ' ' ( x) = z ' ( x)
y '= z
Heä
z ' = − p( x) z − q( x) y + f ( x)
với điều kiện
ban đầu y ( x0 ) = y0 vaø z ( x0 ) = y 0/ = z0 .
Hệ này đã biết cách giải
Ngơ Thu Lương – Phương Pháp Tính
9