1.2 Nội dung bài tập và nhận xét của sinh viên 1.2.1 Nội dung bài tập Sử dụng Matlab để giải bài toán sau: Chất điểm chuyển động với phương trình:... 1.2.2 Nhận xét của sinh viên Dạng bà
Trang 1ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINHI
TRƯỜNG ĐẠI HỌC BÁCH KHOA
Tên thành viên Mã số sinh viên KhoaNguyễn Ngọc Nghiêm 2111834 Khoa Ứng Dụng
Dương Vũ Linh Nga 2114140 Khoa Ứng Dụng
Nguyễn Thị Mỹ Ngân 2114155 Khoa Xây Dựng
Lê Chánh Nghĩa 2111839 Khoa Cơ Khí
Võ Hiếu Nghĩa 2114191 Khoa Xây Dựng
Trang 2Lời cảm ơn
Trong quá trình viết báo cáo, nhóm em gặp không ít khó khắn (không biết càiđặt Matlab, code Matlab, code Latex, ), nhưng nhờ có sự trợ giúp của các anh chịkhóa trên đã giúp cho bài báo cáo của nhóm trở nên hoàn chỉnh và chuyên nghiệphơn Nhóm muốn gửi lời cảm ơn đến:
Anh Trần Gia Văn (K20 ngành Năng Lượng P.F.I.EV,trường Đại Học BáchKhoa TPHCM) đã chỉ cho nhóm một số code Matlab thông dụng
Chị Nguyễn Phương Thùy(K20 Ngành Dệt-May trường Đại Học Bách KhoaTPHCM) đã cho nhóm tham khỏa BTL và mượn một vài định nghĩa cơ bản
ở phần Cơ sở Lý Thuyết
Anh Trần Nguyễn Quy(K20 ngành Công nghệ thông tin, trường Đại HọcKHTN TPHCM) đã hướng dẫn các bạn viết báo cáo sử dụng Latex một cáchhiệu quả và chuyên nghiệp
Nhóm 9-Vât lý 1 lớp L24
Trang 4Mục lục
1.1 Tóm tắt nội dung 5
1.2 Nội dung bài tập và nhận xét của sinh viên 5
1.2.1 Nội dung bài tập 5
1.2.2 Nhận xét của sinh viên 6
2 Cơ sở lý thuyết 7 2.1 Một vài khái niệm cơ bản 7
2.2 Vị trí chất điểm 7
2.2.1 Phương trình chuyển động 7
2.2.2 Quỹ đạo và phương trình quỹ đạo 8
2.3 Vector vận tốc,gia tốc tức thời 8
2.3.1 Vector vận tốc tức thời 8
2.3.2 Vector gia tốc 8
2.4 Gia tốc pháp tuyến, gia tốc tiếp tuyến và bán kính cong của quỹ đạo 9 3 Sử dụng Matlab để giải toán 11 3.1 Tìm hiểu về Matlab 11
3.1.1 Matlab là gì ? 11
3.1.2 Cách lệnh được sử dụng để giải quyết bài toán 12
3.2 Tiến hành giải bài tập bằng Matlab 13
3.2.1 Vẽ Phương trình quỹ đạo của vật 14
3.2.2 Giải quyết các yêu cầu còn lại của bài báo cáo 17
3.3 Chương trình Matlab được sử dụng để viết báo cáo 19
Trang 53.4 Mở rộng 223.5 Lời kết 22
Trang 6Chương 1
Giới thiệu
1.1 Tóm tắt nội dung
Vât lý 1 là một môn học đại cương quan trọng đối với sinh viên ngành kỹ thuật
Do đó, sinh viên cần dành thời gian học tập và thực hành để có một cơ sở vữngchắc về Vật Lý giúp sinh viên có có một nền tảng để học tốt các môn chuyênngành
Sự phát triển của toán tin đóng một vai trò quan trọng trọng việc phát triển kĩthuật và các môn khoa học như Vật lý ,Toán học,Hóa học và Sinh học Phần mềmứng dụng Matlab đã chứng minh được vai trò hỗ trợ đắc lực trong việc áp dụngtin học để rút ngắn thời gian và nâng cao chất lượng của việc học Vì thế, nhữngbài tập lớn có sử dụng Matlab của giảng viên tạo điều kiện cho sinh viên có cơ hôităng khả năng tin học cũng như làm việc nhóm, viết báo cáo và thuyết trình củasinh viên
1.2 Nội dung bài tập và nhận xét của sinh viên
1.2.1 Nội dung bài tập
Sử dụng Matlab để giải bài toán sau:
Chất điểm chuyển động với phương trình:
Trang 7b) Xác định độ lớn vận tốc của chất điểm lúc t=1s.
c) Xác định độ lớn gia tốc của chất điểm lúc t = 1 s
d) Xác định bán kính cong của quỹ đạo lúc t = 1 s
1.2.2 Nhận xét của sinh viên
Dạng bài này thực đã được xuất hiện trong chương đầu tiên của năm học lớp
10 ,nhưng phần lớn học sinh tại thời điểm đó thiếu đi những công cụ toán học
đủ mạnh để giải quyết những bài toán có phương trình chuyển động phức tạp,nênchúng ta chỉ học xoay quanh với những trường hợp lý tưởng của chuyển động nhưchuyển động thẳng đều hay chuyển động nhanh(chậm) dần đều
Khi lên đại học sinh viên sẽ có cơ hội gặp lại dạng toán này nhưng chúng ta đãđược trang bị đầy đủ "vũ khí" toán học cần thiết để giúp ta hiểu rõ hơn bản chất
và có cái nhìn sâu rộng về những trường hợp không thực sự "lý tưởng" trong dạngbài này
Nắm chắc mối liên hệ chặt chẽ của vị trí, vận tốc, gia tốc và thời gian sẽ mởđường cho chúng ta có thể tiếp cận dễ dàng hơn các dạng bài liên quan đến độnglực học - những kiến thức cực kì quan trọng đối với các ngành liên quan đến kỹthuật
Trang 8Chương 2
Cơ sở lý thuyết
2.1 Một vài khái niệm cơ bản
Chất điểm: Là một vật hoặc hệ vật có kích thước rất nhỏ không đáng kể sovới những khoảng cách giữa chúng và độ lớn của các vật được xét tới
Chuyển động:là sư thay đổi vị trí của chất điểm(hệ chất điểm) trong khônggian theo thời gian
Hệ quy chiếu là một hệ tọa độ dựa vào đó ta có thể xác định vị trí của vật,đồng thời có một đồng hồ đo thời gian để xác định thời điểm của các sự kiện.[1]
2.2 Vị trí chất điểm
2.2.1 Phương trình chuyển động
Để có thể xác đinh được vị trí của vật M trong không gian, thì người ta thườnggắn vào hệ quy chiếu một trục tọa độ (Tọa độ Descartes, tọa độ trụ, tọa độ cực,tọa đồ cầu), với bài toán này chúng ta sẽ sử dụng hệ trục tọa độ Descartes với batrục tọa độ Ox, Oy, Oz vuông góc với nhau từng đôi một Vị trị của vật sẽ đượcxác định vector vị trí của vật
Xét vật M trong hệ trục tọa độ Oxy −−→OM = x⃗i + y⃗j + z⃗k = ⃗ r với x, y, z là các hàmtheo thời gian t
Trang 9Tọa độ điểm M: M( x(t), y(t), z(t))
2.2.2 Quỹ đạo và phương trình quỹ đạo
Quỹ đạo của một động điểm:là đường di chuyển của một vật thể chuyển độngtrong không gian như một hàm của thời gian [1]
Phương trình quỹ đạo: là phương trình biểu diễn mối liên hệ giữa các tọa độtrong không gian của chất điểm [1]
2.3 Vector vận tốc,gia tốc tức thời
2.3.1 Vector vận tốc tức thời
Vector vận tốc (vận tốc) là một đại lượng có phương, chiều và tốc độ trung bìnhtrong chuyển động của một chất điểm đặc trưng cho sự thay đổi của vector vị trítrong không gian giữa khoảng thời gian từ t1 đếnt2 Vận tốc tức thời chính là vậntốc trung bình của vât khi khoảng thời gian chênh lệch tiến đến 0 [1]
Trong hệ tọa độ Descartes:
2.3.2 Vector gia tốc
Vector vận tốc (vận tốc) là một đại lượng có phương, chiều và độ lớn gia tốctrung bình trong chuyển động của một chất điểm đặc trưng cho sự thay đổi của
Trang 10vector vị trí trong không gian giữa khoảng thời gian từ t1 đếnt2 Vận tốc tức thờichính là vận tốc trung bình của vât khi khoảng thời gian chênh lệch tiến đến 0.
Trong hệ tọa độ Descartes ta có:
2.4 Gia tốc pháp tuyến, gia tốc tiếp tuyến và bán
kính cong của quỹ đạo
Ta có: Vectơ gia tốc⃗a = d⃗v
dt đặc trưng cho sự thay đổi cả về phương, chiều và độlớn của vectơ vận tốc Vậy nó phải có hai thành phần: Một thành phần làm thayđổi độ lớn vận tốc, một thành phần làm thay đổi phương và chiều của vectơ vậntốc:
an : là gia tốc pháp tuyến có phương vuông góc với tiếp tuyến của quỹ đạo vật,chiều luôn hướng về tâm của quỹ đạo vật, đặc trưng cho sự thay đổi về phương
của vận tốc theo thời gian Độ lớn: an =
⃗
|v|2R
at : là gia tốc tiếp tuyến, có phương trùng với phương của tiếp tuyến quỹ đạovật (phương của vector vận tốc), đặc trưng cho sự thay đổi về độ lớn và hướng củavectơ theo thời gian Độ lớn:at= dv
Trang 12và điều khiển, tín hiệu kỹ thuật số, xử lý hình ảnh và video, mô hình hóa và môphỏng hệ thống, thống kê, Có thể nói, MATLAB được coi là một ngôn ngữ cấpcao và môi trường tương tác cho phép thực hiện các tác vụ tính toán nhanh hơnvới các ngôn ngữ lập trình truyền thống, chẳng hạn như C, C ++ và Fortran [2]Môi trường làm việc của Matlab:
Matlab có ba công cựụ làm việc chính:
Current folder: hiện địa chỉ tệp mà chúng ta đang làm việc
Command window: là nơi gõ lệnh, gọi hàm hoặc thực hiện các phép tính
Workspace: không gian biến, có thể hiểu là cửa sổ hiện các biến đang được sửdụng
Trang 133.1.2 Cách lệnh được sử dụng để giải quyết bài toán
Clc : Xóa của sổ lệnh
clear : Xóa cửu sổ lệnh
close : Xóa các biến khỏi bộ nhớ
disp : Hiển thị các nội dung của mảng hoặc chuỗi
syms: Khai báo biến biểu tượng( symbolic) Symbolic trong Matlab là mộtthư viện toán học kiểu kí tự, chứa các hàm thông dụng như diff, int, taylor,subs, Cú pháp khai báo biến symbolic n:
syms n;
Để khai báo nhiều biến symbolic, ví dụ để khai báo ba biếnx, y, z :
syms x y z ;
input( ): Hiển thị dấu nhắc lệnh và chờ biến đầu vào
diff( f, x, n): thực hiện đạo hàm cấp n của hàm f theo biến x(đạo hàm bậc 2
ta có thể viết đơn giản diff(f(x),t))
figure: Tạo cửa sổ vẽ đồ thị mới Ví dụ: để tạo cửa sổ vẽ đồ thị với tên là “Dothi quy dao chuyen dong” và không đánh số cửa sổ, ta nhập lệnh
f = figure(’Name’,’Do thi quy dao chuyen dong’, ’NumberTitle’,’off’);
plot (x,y): Phác thảo đồ thị hai chiều
subs( f, x, x0): tính giá trị của hàm f theo biếnx khix = x0.
xlabel/ ylabel : đặt tên cho trục hoành/ trục tung
;: Chặn màn hình in
r=[x y z] : ⃗ r = x⃗i + y⃗j + z⃗k
Trang 14 dot (x,y): Tính ma trận điểm (Tích vô hướng của hai vector).
cross(x,y): Tính ma trận chéo (Tích hữu hướng của hai vector)
simplify: Đơn gian phân thức
VD: simplify(cos x2+ sin x2)=1
legend : chú thích đối tượng
linspace: Tạo vector hàng không gian
Ví dụ: x=linspace(0,2*pi,30); Có nghĩa là lấy tập hợp các điểm x tổng cộng
30 điểm cách đều nhau trong khoảng từ 0 -> 2pi
title(’Tieu de’): lệnh đặt tên cho đồ thị hàm số
sprintf (formatSpec, A1, , An): Định dạng dữ liệu và trả về kết quả là mộtchuỗi hoặc vectơ ký tự
animatedline: Tạo ra một đồ thị động trống (chưa có dữ liệu sẵn) trên trục đồthị đã cho, lệnh animatedline thường đi chung với lệnh addpoints
addpoints( an , x , y ): điền thêm các điểm với tung độ y, hoàng độ x xác địnhlên một đồ thị động đã có
num2str (n): Chuyển đổi số n thành chuỗi
double(x): Lấy giá trị thực của biến symbolic x
set : Chỉ định thuộc tính của các đối tượng làm trục
3.2 Tiến hành giải bài tập bằng Matlab
Trong bài báo cáo này, mục đích của chúng ta là khảo sát chuyển động của vật
và tính vận tốc, gia tốc,bán kính cong của vật tại một thời điểm nhất định.Vớinhững kiến thức được học trên lớp cùng với sự trợ giúp của phần mềm Matlabgiúp ta mô phỏng và giải quyết bài toán một cách chân thực hơn
Trang 15Để thuận tiện trong quá trình khảo sát, hàm input của phân mềm giúp họ cóthể nhập vào các giá trị mà họ mong muốn Ngoài ra, nó còn giúp chúng ta có thểkhảo sát thêm một vài trường hợp theo y cầu của người sử dụng.
Định nghĩa các hàm số
% Dinh nghia cua cac ham so x(t),y(t) va bien t
syms x y t
% Phuong trinh chuyen dong cua vat tren truc Ox:
x = input ( ’Nhap phuong trinh x(t) = ’ );
% Phuong trinh chuyen dong cua vat tren truc Ox:
y = input ( ’Nhap phuong trinh y(t) = ’ );
% Toc do cua vat theo truc Ox
% Cau a:) Phac hoa do thi chuyen dong cua vat
disp ([ ’Cau a: Ve quy dao cua vat ’
’trong khoang thoi gian [t0;t1]’ ]);
t0 = input ( ’Thoi diem bat dau khao sat:’ );
while t0<0
t0= input ( ’Error :t0 la gia tri khong am! Nhap lai t0=:’ );
Trang 16t1 = input ( ’Thoi gian ket thuc khao sat:’ );
% Tao chat diem
chatdiem= plot (0,10, ’go’ , ’MarkerSize’ ,7, ’markerfacecolor’ , ’k’ );
% Quy dao cua vat
h=animatedline( ’color’ , ’r’ , ’Linestyle’ , ’-’ );
t2 = linspace (t0,t1,101);
ymax= max (double(subs(y,t2)));
ymin= min (double(subs(y,t2)));
xmax= max (double(subs(x,t2)));
xmin= min (double(subs(x,t2)));
axis ([xmin-5 xmax+5 ymin-5 ymax+5])
% Dat tieu de
s= sprintf ([ ’Quy Dao Chuyen Dong Cua Chat Diem ’
’Khoang Thoi Gian [%gs;%gs]’ ],t0,t1);
tt= title ({s, sprintf ( ’t = %gs’ ,t0)}, ’color’ , ’#77AC30’ );
% Dat ten cho hai truc
xlabel ( ’x(SI)’ );
ylabel ( ’y(SI)’ );
% Dat dan nhan cho cac doi tuong
legend ( ’Chat diem’ , ’Quy dao’ ,"Location", ’best’ );
% Ve chat diem chuyen dong trong do thi
dt=(t1-t0)/100;
for i= linspace (t0,t1,101) % Chia thoi gian thanh 100 khoang
t2= linspace (i,i+dt,100); % Moi khoang co 100 diem
% Dat dieu kien cho t2
if t2<=t1
X=double(subs(x,t,t2));
Y=double(subs(y,t,t2));
Trang 17% Dat lai toa do chat diem
set (chatdiem, ’xdata’ ,X(100), ’ydata’ ,Y(100));
% Ve quy dao
addpoints(h,X,Y);
% Dat lai thoi gian hien thi
set (tt, ’string’ ,{s,[ ’\fontsize{10}\color{black}’
’t = ’ , num2str (i), ’s’ ]})
pause (0.000000000000000000000001);
end
Trang 18Đồ thị ta thu được khi nhập phương trình chuyển dộng và khoảng thời giankhảo sát được cho trong bài báo cáo:
Hình 3.1: Đồ thị quỹ đạo chuyển động của vật từ 0s->5s
3.2.2 Giải quyết các yêu cầu còn lại của bài báo cáo
%% Cau b:) Tinh toc do cua vat tai thoi diem t=1s
disp ( ’Cau b: Tinh toc do tai thoi diem t xac dinh’ );
t3 = input ( ’Nhap t:’ );
while t3<t0
t3 = input ( ’Error: Gia tri cua t>=t0! Nhap lai t=’ );
end
Trang 19% Toc do V cua vat chinh la modun cua vecto van toc
V = double(subs(simplify( norm (v)),t3));
disp ( ’Toc do cua vat tai thoi diem can tim la:’ );
disp (V);
%%Cau c) Tinh do lon gia toc cua chat diem tai t=1s
disp ( ’Cau c:Tinh gia toc cua chat diem tai thoi diem t’ );
t4 = input ( ’Nhap t:’ );
while t4<t0
t4 = input ( ’Error: Gia tri cua t>=t0! Nhap lai t=’ );
end
% Do lon gia toc A cua vat chinh la Mo-dun cua vector gia toc
A = double(subs(simplify( norm (a)),t4));
disp ( ’Do lon gia toc cua vat tai mot thoi diem t xac dinh la:’ );
disp (A);
%% Cau d:) Xac dinh ban kinh quy dao tai t=1
disp ( ’Cau d: Tinh ban kinh quy dao cua vat tai thoi diem t’ );
alpha = norm ( cross (v,a));
% Ap dung cong thuc da chung minh o phan 2 ta co ban kinh cong cua quy dao
R= double(subs(simplify( norm (v)^3/alpha),t5));
disp ( ’Ban kinh cong cua quy dao tai thoi dien t la: ’ );
disp (R);
Trang 20% Phuong trinh chuyen dong cua vat tren truc Ox:
x = input ( ’Nhap phuong trinh x(t) = ’ );
% Phuong trinh chuyen dong cua vat tren truc Ox:
y = input ( ’Nhap phuong trinh y(t) = ’ );
% Toc do cua vat theo truc Ox
vx = diff (x);
% Toc do cua vat theo truc Oy
vy = diff (y);
Trang 21% Van toc cua chat diem
%% Cau a:) Phac hoa do thi chuyen dong cua vat
disp ([ ’Cau a: Ve quy dao cua vat ’
’trong khoang thoi gian [t0;t1]’ ]);
t0 = input ( ’Thoi diem bat dau khao sat:’ );
% Tao chat diem
chatdiem= plot (0,10, ’go’ , ’MarkerSize’ ,7, ’markerfacecolor’ , ’k’ );
% Quy dao cua vat
h=animatedline( ’color’ , ’r’ , ’Linestyle’ , ’-’ );
t2 = linspace (t0,t1,101);
% Gioi han do thi
ymax= max (double(subs(y,t2)));
ymin= min (double(subs(y,t2)));
xmax= max (double(subs(x,t2)));
xmin= min (double(subs(x,t2)));
axis ([xmin-5 xmax+5 ymin-5 ymax+5])
Trang 22s= sprintf ([ ’Quy Dao Chuyen Dong Cua Chat Diem ’
’Khoang Thoi Gian [%gs;%gs]’ ],t0,t1);
tt= title ({s, sprintf ( ’t = %gs’ ,t0)}, ’color’ , ’#77AC30’ );
% Dat ten cho hai truc
xlabel ( ’x(SI)’ );
ylabel ( ’y(SI)’ );
% Dat dan nhan cho cac doi tuong
legend ( ’Chat diem’ , ’Quy dao’ ,"Location", ’best’ );
% Ve chat diem chuyen dong trong do thi
dt=(t1-t0)/100;
for i= linspace (t0,t1,101) % Chia thoi gian thanh 100 khoang
t2= linspace (i,i+dt,100); % Moi khoang co 100 diem
% Dat dieu kien cho t2
if t2<=t1
X=double(subs(x,t,t2));
Y=double(subs(y,t,t2));
end
% Dat lai toa do chat diem
set (chatdiem, ’xdata’ ,X(100), ’ydata’ ,Y(100));
% Ve quy dao
addpoints(h,X,Y);
% Dat lai thoi gian hien thi
set (tt, ’string’ ,{s,[ ’\fontsize{10}\color{black}’
’t = ’ , num2str (i), ’s’ ]})
pause (0.000000000000000000000001);
end
%% Cau b:) Tinh toc do cua vat tai thoi diem t=1s
disp ( ’Cau b: Tinh toc do tai thoi diem t xac dinh’ );
Trang 23disp (V);
%%Cau c) Tinh do lon gia toc cua chat diem tai t=1s
disp ( ’Cau c:Tinh gia toc cua chat diem tai thoi diem t’ );
t4 = input ( ’Nhap t:’ );
while t4<t0
t4 = input ( ’Error: Gia tri cua t>=t0! Nhap lai t=’ );
end
A = subs(simplify( norm (a)),t4);
disp ( ’Do lon gia toc cua vat tai mot thoi diem t xac dinh la:’ );
disp (A);
%% Cau d:) Xac dinh ban kinh quy dao tai t=1
disp ( ’Cau d: Tinh ban kinh quy dao cua vat tai thoi diem t’ );
alpha = norm ( cross (v,a));
% Ban kinh cong cua quy dao
R= subs(simplify( norm (v)^3/alpha),t5);
disp ( ’Ban kinh cong cua quy dao tai thoi dien t la: ’ );