MATLAB LECTURE - Trang 39

16/09/2015

2

Nguyen Quang Hoang

Department of Applied Mechanics

Giải số bằng lệnh ode23

5

Cú pháp lệnh ode23

[t, y] = ode23(

‘funct_name’, [t0:h:t_end], y0)

Giá trị điều kiện đầu

Khoảng thời gian cần giải

t từ t0 đến t_end, với h là

bước thời gian

Tên m-file chứa phương trình vi
phân cần giải

Kết quả tính được ghi vào hai véctơ
t và y chứa các cặp [t(i), y(ti)]

Nguyen Quang Hoang

Department of Applied Mechanics

Ví dụ giải phương trình vi phân thường

6

Ví dụ: sử dụng ode23 giải phương trình vi phân

Trước hết tạo m-file chứa phương trình vi phân cần giải:

cos( )

dy

t

dt

(0) 2

y

với điều kiện đầu

Sử dụng lệnh ode23:

function

ydot = eq1(t,y)

ydot = cos(t);

end

Ghi lại với tên file là tên
hàm eq1.m

Trong khoảng thời gian t = [0 2*pi]

>> [t, y] = ode23(‘eq1’, [0, 2*pi], 2)

Nguyen Quang Hoang

Department of Applied Mechanics

Ví dụ giải phương trình vi phân thường

7

• Vẽ kết quả và so sánh với nghiệm chính xác

>> f = sin(t) + 2;
>> plot(t, f,'k-'), hold on
>> axis([0 2*pi 0 4])

>> plot(t,y,'ko')

>> xlabel('t'),
>> ylabel('y(t)')

0

1

2

3

4

5

6

0

1

2

3

4

t

y(

t)

Nguyen Quang Hoang

Department of Applied Mechanics

Giải số bằng lệnh ode45

8

Cú pháp lệnh ode45

[t, y] = ode45(

‘funct_name’, [t0, t_end], y0)

Giá trị điều kiện đầu

Khoảng thời gian cần giải

t từ t0 đến t_end

Tên m-file chứa phương trình vi
phân cần giải

Kết quả tính được ghi vào hai véctơ
t và y chứa các cặp [t(i), y(ti)]

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.