giải phương trình vi phân bằng phương pháp runge-kuta 4 - Pdf 15

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC BÁCH KHOA
***
KHOA ĐIỆN – ĐIỆN TỬ Giáo viên hướng dẫn: Lê Thị Quỳnh Hà
Các thành viên trong nhóm:

40901457: Nguyễn Phước Lộc

M
t
ph
ng
trình
vi
phân
c
p
1

th
vi
t
d
i
d
ng
gi
i
c
yf (x,y)
mà ta có th tìm c hàm y t o hàm c a nó. T n t i vơ s
nghi m tho mãn ph ng trình trên. M i nghi m ph thu c vào m t h ng s

n21nn
n2122
n2111
Ta ph i tìm nghi m y
1
, y
2
, , y
n
sao cho:
)a(Y
)X,x(
f
)x(Y
v i:
n
2
1
yy
y
Y
n
2
1
f
)y,y,x(
f
y
Khi
t u = y và v = y ta nh n c h ph ng trình vi phân c p 1:
)v,u,x(gv
vu
v i i u ki n u: u(a) = và v(a) =
Các ph ng pháp gi i ph ng trình vi phân c trình bày trong
ch
ng này là các ph ng pháp r i r c: o n [a, b] c chia thành n o n
nh b ng nhau c g i là các b c tích phân h = ( b a) / n.

§2.
PH
NG
PHÁP
EULER
ch
a
chính
xác
i
v
i
các
bài
toán
th
c

(11)
v i c (x
i
, x
i+1
) và:
)x(y,x
f
)x(y
iii
)x(y,xf
dx
d
)x(y
ii
1k
1k
i
)k(
Ta vi t l i (11) d i d ng:
)c(y
!m
h
)x(y
!m
h
)x(y
2
h
)x(yhyy

)i(
2
)i(
1ii
)i(
3
)i(
1ii
)i(
2
ii
)i(
1
(14)
và ta c n xác nh các h s a, b, ; , , , ; r
1
, r
2
, sao cho v ph i c a (13)
khác v
i v ph i c a (12) m t vô cùng bé c p cao nh t có th có i v i h.
Khi dùng công th c Runge Kutta b c hai ta có:
)ky,ahx(hfk
)y,x(hfk
)i(
1ii
)i(
2
ii
)i(

)i(
1
yh)y,x(h
f
k
])y,x(
f
k)y,x(
f
ah)y,x(
f
[hk
iiy
)i(
1iixii
)i(
2
Do ó v ph i c a (16) là:
)]y,x(
f
yr)y,x(
f
ar[h)y,x(
f
)rr(h
iiyi2iix2
2
ii21
(18)
Bây gi

= 1 / 2 và r
2
= 1/2. Lúc này ta nh n c công th c Euler c i ti n.
M
t cách t ng t chúng ta nh n c công th c Runge Kutta b c 4.
Công th c này hay c dùng trong tính toán th c t :
k
1
= h.f(x
i
, y
i
)
k
2
= h.f(x
i
+h/ 2, y
i
+ k
1
/ 2)
k
3
= h.f(x
i
+h/ 2, y
i
+ k
2

n
công
th
c
Runge
Kutta
b
c
4:Ví dụ : Dùng công thức Runge-Kutta tìm nghiệm gần đúng của bài toán Cauchy
y’ = y – x
2
+1, 0≤ x ≤1
y(0) = 0.5
với n = 5
Tính sai số biết nghiệm chính xác là :
y(x) = (x+1)
2
– 0.5e
x

Giải:
Ta có h = 0.2
x
0
Ví dụ: Ta giải lại phương trình: y’ = y – x
2
+1, 0≤ x ≤1, y(0) = 0.5, với n = 5


Định nghĩa trực tiếp hàm f từ của sổ Command Windows:

Định nghĩa hàm f trong của sổ Script rồi lưu thành file f.m 
Vẽ đồ thị từ các giá trị x
k
,y
k
(giá trị trả về của hàm rk4):

function[x,y]=rk4(f,x0,x1,y0,h)

>> [X,Y]=rk4(inline('y-x^2+1','x','y'),0,1,0.5)>> [X,Y]=rk4(@f,0,1,0.5)plot(X,Y,'rd-', 'LineWidth',3)

xlabel('Truc X')

ylabel('Truc Y')

title('DO THI CUA HAM DA CHO')

grid onKết quả cửa sổ Command Windows:


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