BỘ MÔN TOÁN ỨNG DỤNG - ĐHBK ---PHƯƠNG PHÁP TÍNH – SV CHƯƠNG 5 GIẢI PHƯƠNG TRÌNH VI PHÂN THƯỜNG • TS... KẾT QUẢ PHƯƠNG PHÁP EULER ---Bảng kết quả: Tính gần đúng tích phân với công thức h
Trang 1BỘ MÔN TOÁN ỨNG DỤNG - ĐHBK
-PHƯƠNG PHÁP TÍNH – SV
CHƯƠNG 5 GIẢI PHƯƠNG TRÌNH VI PHÂN THƯỜNG
• TS NGUYỄN QUỐC LÂN (5/2006)
Trang 2NỘI DUNG
Trang 3
BÀI TOÁN CÔSI
-Tìm hàm y = y(t) thoả phương trình vi phân thường & điều kiện đầu
Giải xấp xỉ: Chia [a, b] thành n đoạn bằng nhau, độ dài h
= (b – a)/n, (n + 1) điểm chia t 0 = a < t 1 = a + h < … < t n = b
),,(
'
a y
b t
a y
t f y
Trang 4MINH HOẠ Ý TƯỞNG
-Bài toán Côsi:
& công thức xấp xỉ đạo hàm 2 điểm:
+
−
=
31)
0(
0,25
5
y
t t
t y
y
đồ thị so sánh với nghiệm chính xác g(t) =
hãy tính xấp xỉ nghiệm y tại t = 0.5, t = 1.
Với bước chia h = 0.5
h
x f h
x
f x
.442
e gđ.Lagrang
Trang 5CÁC SƠ ĐỒ GIẢI XẤP XỈ PTRÌNH VPHÂN THƯỜNG
,(
'
a
y
b a t
y t f
y
ih a
t n
a
b
Tính w i , i = 0 → n
Sơ đồ Euler (i = 0 → n – 1)
S/đ Euler cải tiến (i = 0 → n – 1)
2)(
),
(),
,(
2 1
1
1 2
1 0
k k
w w
k w
h t
hf k
w t hf k
w w
i i
i i
i i
i
++
=
++
sửGiả
α
),(
1
0
i i i
i
i
w t hf w
sửGiả
++
=
+
=+
+
=
++
2(
),
(),
2,
2(
)2,
2(
),,
(
4 3
2 1
1
3 1
4 2
3
1 2
1
k k
k k
w w
k w
t hf k
k w
h t
hf k
k w
h t
hf k
w t hf k
i i
i i
i i
i i
i i
Btoán Côsi: Tìm y(t)
Trang 6VÍ DỤ PHƯƠNG PHÁP EULER
-Sơ đồ Euler:
Bằng p/pháp Euler, giải bài toán Côsi với n = 3 đoạn chia:
So sánh nghiệm xấp xỉ với nghiệm g(t) = (t+1) 2 – 0.5e t
Từ đó tính xấp xỉ tích phân bằng c/t hình thang:
−
=
5.0)
0(
10
,1
y
t t
y y
I
Giải: f(t,y) = y – t 2 + 1
5.0,
=+
=
=
5
0
2 1
0
i i
i i
i i
w w
Trang 7KẾT QUẢ PHƯƠNG PHÁP EULER
-Bảng kết quả:
Tính gần đúng tích phân với công thức hình thang
2
22
1
=
Trang 8VÍ DỤ EULER CẢI TIẾN
-Tính y(1.) của bt Côsi sau bằng
=
≤
≤+
−
=
5.0)
0(
10
,1
y
t t
y y
1)
,
(t y = y −t2 + h =
f
5.0,
(,
),
1 1
2 1
k
k w
w k
w h t
hf k
w t hf
Trang 9VÍ DUÏ RUNGE – KUTTA
0(
1
y
t y y
++
=
++
=+
+
=
++
=
=
22
),
(,
)2,
2(
)2
,2
(,
),
(
4 3
2
1 1
3 4
2 3
1 2
1
k k
k
k w
w
k w
h t
hf k
k w
h t
hf k
k w
h t
hf k
w t hf k
i i
i i
i i
i i
i i
Runge –
Kutta 4:
w i → w i+1
75
0 0.90625 0.9451325 1.09765634251302
1 1.0875651 1.2032064 1.2331167 1.32862356396027
.2
Trang 10HỆ PHƯƠNG TRÌNH VI PHÂN THƯỜNG
a u
u t
f dt
du
b t
a u
u t
f dt
du
),,
,(
),,
,(
2 1 2
2
2 1 1
1 1
)(
a
u
đầukiện
0
1 =α , w =α
Trang 11MINH HOẠ Ý TƯỞNG
++
=
=+
−+
=
10
,4
24
'
10
,1
22
3'
2
2
2 2
1 2
1
2
2 2
1 1
u e
t t
u u
u
u e
t u
u
u
t t
Với bước chia h = 0.5, tính xấp xỉ nghiệm u 1 , u 2 tại t = 0.5; 1
So sánh giá trị tính được với giá trị nghiệm chính xác:
( )t e t e t e t u ( )t e t e t t e t
3
23
1
;3
13
( ) ( )0 1
10
.0
Trang 12SƠ ĐỒ EULER
a u
u t
f dt
du
b t
a u
u t
f dt
du
),,
,(
),,
,(
2 1 2
2
2 1 1
1 1
)(
a
u
đầukiện
Điều
i
i i
i
i i
i
2 2
1 1
++
=
=+
−+
=
10
,4
24
'
10
,1
22
3'
2 ,
,
2
2 2
1 2
1 ,
,
2
2 2
1 1
2 1 2
2 1 1
u e
t t
u u
u
u e
t u
u u
u u t f
t
u u t f
1
0 2
0 1 2
=
=+
=
1,1,05
.01
1,1,05
.01
2
1 2
1
1 1
f w
f w
Trang 13ÁP DỤNG : PHƯƠNG TRÌNH VI PHÂN CẤP 2
-Bài toán Côsi cấp 2 (Ph/trình vi phân cấp 2 và đkiện đầu):
( ) ( ) ( )
"
α
a y
a t
y y t f y
Đưa về bài toán Côsi cấp 1: Đổi biến u 1 (t)= y(t), u 2 (t)=y’(t)
( ) ( ) ( )
2
2 1 1
2 1
,,'
,,''
'
,,
'
u u t f y
y t f y
u
u u t f u
1 1
α
a y a
u
a y a
1
0 1
α
α
w w
=
+
=+
=
2 1 2
2
0 2
0 1 0 2
0 2
1 2
2 1
0 2
0 1 0 1
0 1
1 1
,,,
,
,
,
ααα
α
α
a hf w
w t
hf w
w
h w
w t
hf w
w
Trang 14VÍ DỤ
-Với h = 0.1, tính xấp xỉ giá trị y(0.2), y’(0.2) của nghiệm
bài toán sau bằng phương pháp Euler:
−
6.0)
0(',4.0)
0(
0,
sin2
'2
y y
t t e
y y
+
−
=+
2 2
1
2 2
2 1
2 1 1
2 1
,,sin
22
sin'
22
'
6.00
,4.00
&
,,
'
u u t f t
e u
u t
e y y
u
u u
u u t f u
u
t t
4
−
=+
=
−
−+
−
=+
=
⇒
6.0,4.0,01
.06
.0,
,
6.0,4.0,01
.04.0,
,
2
0 2
0 1 0 2
0 2
1 2
1
0 2
0 1 0 1
0 1
1 1
f w
w t
hf w
w
f w
w t
hf w
w
Trang 15BÀI TOÁN BIÊN
b x
a y
y x f
y
,)
(
),',,(''
Hay gặp: Bài toán biên tuyến tính cấp 2
b x
a x
r y x q y x p
y
,
),()
('
)(
"
Trang 16−
01
,10
10
,1
2'1
y y
x e
x y
y x
Trang 17PHƯƠNG PHÁP SAI PHÂN HỮU HẠN
b x
a x r y x q y x p
y
,
*),
()
('
)(
"
(*) Xấp xỉ y’(x k ) , y’’(x k ): công thức đạo hàm hướng tâm
( ) ( ) ( )
2
0 1
2 1
2)
(
"
h
x y x
y x
y x
y x
y x
3 2
2)
(
"
h
x y x
y x
y x
Trang 18CÔNG THỨC LẮP GHÉP
−
−
+
− +
=
−
n n
n
q h p
h
p h
p
h q
h p
h
p
h q
2 2
1 1
2
2 2
1 0
0
2 1
0 0
2
1
2 2
1
0
0 2
1 2
n
p
h r
h
r h
r h
r h
p
h r
h
b
2 1
2 1
2
1 2
3 2 2 2
1 1
Trang 19LẬP BẢNG LẮP GHÉP
- Chia [a, b] thành các đoạn nhỏ độ dài h n điểm chia x k
(không kể 2 đầu) – ứng với y k chưa biết → n ẩn số y k
b x
a x r y x q y x p
y
,
*),
()
('
)(
"
Lập bảng cột x k → p k = p(x k ), q k = q(x k ), r k = r(x k ) → a kk (đ/chéo chính), a k,k+1 (chéo trên), a k-1,k (dưới), b k → Nghiệm y k
Đ/chéo a kk : k = 1 → n; a k,k+1 : k = 1 → (n – 1), a k-1,k : k = 2 → n
Trang 20−
=
1)
1(,
2)
0(
32
2'3
"
y y
x y
y y
2
0
4
0
6
0
8.0
3
−3
−3
−3
−
2222
4
38
32
46.4
3
13
13.1
7
07
07.0
264
1
−152
0168
0116
1
−
Ma trận cấp 4: Chéo chính a kk – 4 phần tử; Chéo trên a k, k+1 : 3
08.2
−
08.2
−
08.2
−
08.2
Trang 21168
0
152
0
264
1
08.2
3.100
7.00
0
08.27
.00
3.108
.27
.0
03
.108
.2
b A
1
168
0
273
0
608
0
08.2
3.100
7.00
0
08.27
.00
3.1642
.10
0625
.01
0
593
0
636
0
006
1
y