BÀI GIẢNG MATLAB - Trang 202

200

2

2

2

2

(

)

c

q

q

F

c v

c x

y

=

=

+

ɺ

ɺ

2

2

2

2

2

2

2

2

/

,

/

c x

n

n

c y

n

n

F

c v x v

c x x

y

F

c v y v

c y x

y

=

=

+

=

=

+

ɺ

ɺ ɺ

ɺ

ɺ

ɺ ɺ

ɺ

Hạ bậc nhận ñược phương trình vi phân như sau

2

2

2

2

1

(

)

1

(

)

x

x

l

n

y

y

l

n

x

v

v

c x

c x x

y

m

y

v

v

mg

c y

c y x

y

m

=

= −

+

+

=

= −

+

+

+

ɺ

ɺ

ɺ

ɺ ɺ

ɺ

ɺ

ɺ

ɺ

ɺ ɺ

ɺ

Trước hết viết một m-file mô tả phương trình vi phân trên, trong ñó các thông số
khối lượng và các hệ số cản ñược khai báo là biến toàn cục.


function ydot = dandao(t,y)
% ptvp cd cua vien dan: m khoi luong, cl he so can tuyen tinh,
% cn he so can ty le binh phuong. vector y = [y1, y2, y3, y4]';
% y1 la toa do x, y2 la van toc vx
% y3 la toa do y, y4 la van toc vy

global m cl cn
g = 9.81; % gia toc trong truong
v = (y(2)^2 + y(4)^2)^0.5; ydot = zeros(4,1);
ydot(1) = y(2);
ydot(2) = -1/m*(cl*y(2) + cn*v*y(2));
ydot(3) = y(4);
ydot(4) = -1/m*(m*g + cl*y(4) + cn*v*y(4));

Lệnh ode45 ñược sử dụng ñể giải phương trình vi phân với các ñiều kiện ñầu

(0)

(0)

0, (0)

cos , (0)

sin

o

o

x

y

x

v

y

v

α

α

=

=

=

=

ɺ

ɺ

Ở ñây ta sẽ khảo sát quĩ ñạo chuyển ñộng của viên ñạn có khối lượng

25

m

=

kg,

vận tốc tại nòng súng

300

o

v

=

m/s, với các góc bắn khác nhau từ 10 ñến 90 ñộ.

Từ kết quả này ta có thể chỉ ra ñược tầm xa và ñộ cao của viên ñạn.

a) Trường hợp bỏ qua lực cản không khí, ta cho các hệ số cản

0

l

n

c

c

=

=

global m cl cn
m = 25; cl = 0.0; cn = 0.0;
t_start = 0; t_end = 100.0;
vo = 300; alpha = [10 : 10 : 90];
N = length(alpha); ymax = zeros(1,N);

for i = 1:length(alpha)
y1 = 0; y2 = vo*cosd(alpha(i));

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.