Thông tin tài liệu
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. NGUYỄN QUỐC LÂN (5/2006)
NỘI DUNG
A- BÀI TOÁN CÔSI (GIÁ TRỊ ĐẦU)
B- BÀI TOÁN BIÊN
1 – PHƯƠNG PHÁP EULER
1- PHƯƠNG PHÁP SAI PHÂN HỮU HẠN
2 – EULER CẢI TIẾN + RUNGE – KUTTA
3 – HỆ PHƯƠNG TRÌNH VI PHÂN THƯỜNG
4 – PHƯƠNG TRÌNH VI PHÂN CẤP CAO
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
=
≤≤=
α
)(
),,('
ay
btaytfy
a
b
a = t
0
b = t
n
t
1
t
2
h
y
0
= α
y
1
= ?
Cần tính gần đúng giá trò w
k
≈ y
k
= y(t
k
), k = 1 → n
MINH 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,255'
2
y
tttyy
Từ đó xây dựng đa thức nội suy Lagrange (spline) y
gđ
và vẽ
đồ 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
xfhxf
xf
)()(
)('
00
0
−+
≈
t
et
52
3
1
−
+
Điểm chia:
0
0
=
t
5.0
1
=
t
.1
2
=
t
Kết quả tìm được:
( )
( )
875.10.1
5.05.0
=
−=
y
y
33.087.442.6
2
+−=⇒
tty
gđ
cbtaty
++=
2
egđ.Lagrang
CÁC SƠ ĐỒ GIẢI XẤP XỈ PTRÌNH VPHÂN THƯỜNG
[ ]
=
∈=
α
)(
,),,('
ay
batytfy
Chia [a, b] → n đoạn
ihat
n
ab
h
i
+=
−
= ,
Tính w
i
, i = 0 → n
Sơ đồ Euler (i = 0 → n – 1)
S/đ Euler cải tiến (i = 0 → n – 1)
2)(
),(),,(
.
211
121
0
kkww
kwhthfkwthfk
ww
ii
iiii
i
++=
++==
⇒=
+
biếtđãsửGiả
α
),(
.
1
0
iiii
i
wthfww
ww
+=
⇒=
+
biếtđãsửGiả
α
Sơ đồ Runge –
Kutta: w
0
= α.
Giả sử biết w
i
⇒
++++=
+=++=
++==
+
+
6)22(
),(),2,2(
)2,2(),,(
43211
31423
121
kkkkww
kwthfkkwhthfk
kwhthfkwthfk
ii
iiii
iiii
Btoán Côsi: Tìm y(t)
VÍ 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'
2
y
ttyy
∫
=
1
0
)( dttyI
Giải: f(t,y) = y – t
2
+ 1
5.0,0
00
==
wt
11
, wt
22
, wt
33
, wt
h = (b–a)/n = 1/3
+−+=+=
=
+
)1(2.0),(
5.0
2
1
0
iiiiiii
twwwthfww
w
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ình thang
i t
i
w
i
g
i
= g(t
i
) | g
i
- w
i
|
0 0 0.5 0.5 0
1 1/3
2 2/3
3 1.
( ) ( ) ( ) ( )
[ ] [ ]
32103210
1
0
22
2
22
2
)( wwww
h
tytytyty
h
dtty +++≈+++≈
∫
3528807.1=
VÍ DỤ EULER CẢI TIẾN
Tính y(1.) của bt Côsi sau bằng
SĐ Euler cải tiến với h = 0.5:
=
≤≤+−=
5.0)0(
10,1'
2
y
ttyy
i t
i
w
i
k
1
k
2
0 0.0 0.5
1 0.5
2 1.0
5.0,1),(
2
=+−= htyytf
5.0,0
0
==
α
t
?,5.0
11
==
wt
22
, wt
2
),(,),(
21
1121
kk
wwkwhthfkwthfk
iiiiii
+
+=→++==
+
0.75 1.0
1.375 1.0625
2.515625
1.21875
VÍ DUÏ RUNGE – KUTTA
Tính y(1.) baèng Runge – Kutta vôùi h = 0.5
=
+−=
5.0)0(
1'
2
y
tyy
i t
i
w
i
k
1
k
2
k
3
k
4
0 0.0 0.5
1 0.5
2 1.0
+++
+=
++=++=
++==
+
6
22
),(,)2,2(
)
2
,
2
(,),(
4321
1
3423
1
21
kkkk
ww
kwhthfkkwhthfk
k
w
h
thfkwthfk
ii
iiii
iiii
Runge –
Kutta 4:
w
i
→ w
i+1
75.0
90625.0
9451325.0
0976563.1
4251302.1
0875651.1
2032064.1
2331167.1
3286235.1
6396027.2
HỆ PHƯƠNG TRÌNH VI PHÂN THƯỜNG
Bài toán Côsi : Tìm hai hàm u
1
= u
1
(t), u
2
= u
2
(t) thoả
≤≤=
≤≤=
btauutf
dt
du
btauutf
dt
du
),,,(
),,,(
212
2
211
1
=
=
22
11
)(
)(
&
α
α
au
au
đầukiệnĐiều
Ký hiệu:
?,,0),(),(
2211
i
2
i
1
0
2
0
1
wwtínhwwBiết
⇒≥≈≈
ituwtuw
i
i
i
i
0
ta
=
hat
+=
1
hat 2
2
+=
21
,
αα
( ) ( )
?,
1211
=
tutu
?,
2
2
2
1
=
ww
Chia [a, b] thành đoạn bằng nhau: Phân hoạch & rời rạc hoá
2
0
21
0
1
,
αα
==
ww
1
2
1
1
, ww
Ngày đăng: 25/01/2014, 04:20
Xem thêm: Tài liệu PTVP HK2 0506 Web pptx