MATLAB LECTURE - Trang 43

16/09/2015

6

Nguyen Quang Hoang

Department of Applied Mechanics

Giải hệ phương trình vi phân cấp 1

21

16

sin(4.3 )

y

y

t

(0)

0, (0)

0

y

y

1

2

,

x

y x

y

1

2

2

1

sin(4.3 ) 16

x

x

x

t

x


Ví dụ dưới đây trình bày việc giải phương trình vi phân bậc hai. Hãy tìm
nghiệm của phương trình vi phân sau

điều kiện đầu

Bằng cách đặt

ta nhận được hệ hai ptvp cấp một

Vế phải của hệ trên được thể hiện trong một m-file như sau:

( , )

t

x

f

x

function

xdot = eqx2(t,x);

xdot = zeros(2,1);

xdot(1) = x(2);

xdot(2) = sin(4.3*t)–16*x(1);

end

% save with file name eqx2.m

Nguyen Quang Hoang

Department of Applied Mechanics

Giải hệ phương trình vi phân cấp 1

22

>> [t,x] = ode45('eqx2',[0 2*pi],[0,0]);
>> plot(t,x(:,1),t,x(:,2),'--'), xlabel('t'),
>> axis([0 2*pi

–3 3])

0

1

2

3

4

5

6

-3

-2

-1

0

1

2

3

t

x

1

x

2

- 0.6

- 0.4

- 0.2

0

0.2

0.4

0.6

- 3

- 2

- 1

0

1

2

3

x

1

x

2

>> plot(x(:,1), x(:,2),'k-'),
>> xlabel('x_1'), ylabel('x_2‘)

Nguyen Quang Hoang

Department of Applied Mechanics

Giải hệ phương trình vi phân cấp 1

23

>> [t,x] = ode45('eqx2',[4*pi 20*pi],[0,0]);
>> plot(t,x(:,1)),xlabel('t')

10

20

30

40

50

60

70

- 1

- 0.5

0

0.5

1

t

Nguyen Quang Hoang

Department of Applied Mechanics

Giải hệ phương trình vi phân cấp 1

24

TT

Lệnh

solver

Dạng bài

toán

Độ chính

xác

Trường hợp áp dụng

1

ode45

không cứng
(nonstiff)

trung bình Hay được sử dụng, là sự lựa chọn

đầu tiên (sử dụng công thức R-K45)

2

ode23

không cứng
(nonstiff)

thấp

Sử dụng khi không cần độ chính xác

cao, hoặc khi giải bài toán cứng vừa
phải. (sdụng công thức R-K23)

3

ode113

không cứng
(nonstiff)

thấp

đến

cao

(sử dụng công thức Adams-

Bashforth-Moulton)

4

ode15

s

cứng
(stiff)

thấp

đến

trung bình

sử dụng khi ode45 cho độ chính xác

không cao do bài toán cứng

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.