phương pháp tính: Giải phương trình vi phân thường - Pdf 22


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


= 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

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

2
+−=⇒ tty

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

+=
⇒=
+
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

)( 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

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


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



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ả

α
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
,
αα

( )
( )



=−+++=
=+−+=
10,424'
10,1223'
2
22
212
1
22
211
uettuuu
uetuuu
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:
( ) ( )
tttttt
eteetueeetu
225
2

( )
( )
10
10
2
1
=
=
u
u
( )
( )
?5.0
?5.0
2
1
=
=
u
u
( )
( )
?1
?1
2
1
=
=
u
u

211
1



=
=
22
11
)(
)(
&
α
α
au
au
đầukiệnĐiều
( ) ( )
ii
i
iiii
i
ii
wwthfwwwwthfww
2122
1
22111
1
1
,,,,, +=+=

=+−+=
10,424'
10,1223'
2
,,
22
212
1
,,
22
211
212
211
uettuuu
uetuuu
uutf
t
uutf
t
  
  



=
=





fw

Á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):
( )
( ) ( )



==
≥=
21
',
,',,"
αα
ayay
atyytfy
Đưa về bài toán Côsi cấp 1: Đổi biến u
1
(t)= y(t), u
2
(t)=y’(t)
( )
( ) ( )



===
==

1
0
1
α
α
w
w
Sơ đồ Euler:
( )
( )
( )



+=+=
+=+=
2122
0
2
0
102
0
2
1
2
21
0
2
0
101

= y’(t) ⇒
( ) ( ) ( )
( )



=++−=++−=
−=−===
212
2
21
2
2
2121121
,,sin22sin'22'
6.00,4.00&,,'
uutfteuuteyyu
uuuutfuu
tt



−=
−=
6.0
4.0
0
2
0
1

1
1
fwwthfww
fwwthfww

BÀI TOÁN BIÊN

Bài toán biên cấp 2: Tìm hàm y = y(x) thoả phương trình
( )



==
≤≤=
βα
byay
bxayyxfy
,)(
),',,(''
Hay gặp: Bài toán biên tuyến tính cấp 2
( ) ( )



==
≤≤++=
βα
byay
bxaxryxqyxpy
,

=x
1
3
=x
( )
10
0
−== yy
?
3
1
1
==






yy ?
3
2
2
==







2
012
1
2
)("
h
xyxyxy
xy
+−

b= x
n+1
a= x
0
x
1
x
2
x
3
h
( )
( ) ( )
h
xyxy
xy
2
'
02
1
























+−−
+−
+−+−−
+−+
=

nn

00
2
12




























rh
rh
rh
p
h
rh
b
2
1
2
1
2
1
2
3
2
2
2
11
2

n mốc x
k
∈ (a, b) – ứng n giá trò y
k
chưa biết → Ma trận cấp n

Ký hiệu p
k
= p(x

q
k
r
k

a
kk
a
k,k+1
a
k-1,k

b
k
y
k
1
2
3
BT biên tuyến tính
( )
( ) ( )



==
≤≤++=
βα
byay
bxaxryxqyxpy

kk
: k = 1 → n; a
k,k+1
: k = 1 → (n – 1), a
k-1,k
: k = 2 → n

VÍ DỤ

Giải bài toán biên cấp 2 sau bằng phương pháp sai phân
hữu hạn với bước chia h = 0.2



==
+++−=
1)1(,2)0(
322'3"
yy
xyyy
h = 0.2 ⇒ n = 5 ⇒ 6 điểm chia ⇒ Hệ phương trình 4 ẩn
2.0
4.0
6.0
8.0
3−
3−
3−
3−
2

i
q
i
r
i

a
ii
a
i,i+1
a
i-1,i

b
i

1
2
3
4

KẾT QUẢ

Giải hệ bằng phép khử Gauss (làm tròn 3 chữ số lẻ):
[ ]











−−










=→
116.1
168.0
273.0
608.0
08.2
3.1
0
0
7.000
08.27.00
3.1642.10
0625.01
bA


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status