Khóa luận tốt nghiệp vật lý ứng dụng matlab khảo sát một số hiện tượng cơ học

Khóa luận tốt nghiệp vật lý ứng dụng MATLAB khảo sát các hiện tượng cơ học, cung cấp kiến thức và ứng dụng thực tiễn trong nghiên cứu.

Chuyên ngành

Vật Lý

Người đăng

Ẩn danh

Thể loại

luận văn tốt nghiệp

2004

211
3
0

Phí lưu trữ

55 Point

Mục lục chi tiết

LỜI NÓI ĐẦU

1. CHƯƠNG 1: CÁC HIỆN TƯỢNG RƠI

1.1. Sự rơi tự do

1.2. Chương trình trong Matlab

2. CHƯƠNG 2: DAO ĐỘNG CON LẮC

2.1. Dao động điều hòa của con lắc lò xo

2.2. Dao động tự do của con lắc đơn với biên độ bất kỳ

2.3. Dao động tắt dần và cưỡng bức của con lắc lò xo và con lắc đơn

3. CHƯƠNG 3: KIỂM CHỨNG BA ĐỊNH LUẬT KEPLER

3.1. Kiểm nghiệm lại ba định luật Kepler - Bài toán hai vật

3.2. Áp dụng tìm quỹ đạo Trái Đất

3.3. Định luật I và II Kepler

3.4. Mô phỏng chuyển động các hành tinh

4. CHƯƠNG 4: KHẢO SÁT CÁC NHÂN HÚT TRONG HIỆN TƯỢNG CHAOS

4.1. Hàm mô tả sự tăng dân số

4.2. Khảo sát sự nhân đôi chu kỳ và sự nhạy cảm của điều kiện ban đầu

4.3. Tạo giao diện để khảo sát

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về Ứng Dụng Matlab Trong Nghiên Cứu Cơ Học

Matlab (Matrix Laboratory) là một công cụ mạnh mẽ trong nghiên cứu và giảng dạy vật lý, đặc biệt trong lĩnh vực cơ học. Với khả năng tính toán và mô phỏng, Matlab giúp sinh viên và nhà nghiên cứu giải quyết các bài toán phức tạp một cách nhanh chóng và hiệu quả. Việc sử dụng Matlab không chỉ giúp tiết kiệm thời gian mà còn nâng cao độ chính xác trong các phép tính. Nghiên cứu hiện tượng cơ học thông qua Matlab đã trở thành một xu hướng phổ biến trong các trường đại học.

1.1. Khái niệm về Matlab và Mô Phỏng Cơ Học

Matlab là một môi trường lập trình mạnh mẽ, cho phép người dùng thực hiện các phép toán phức tạp và mô phỏng các hiện tượng vật lý. Mô phỏng cơ học trong Matlab giúp người dùng hình dung rõ hơn về các hiện tượng vật lý thông qua các mô hình trực quan.

1.2. Lợi ích của Việc Sử Dụng Matlab Trong Nghiên Cứu

Việc sử dụng Matlab trong nghiên cứu cơ học mang lại nhiều lợi ích như khả năng xử lý dữ liệu nhanh chóng, tính chính xác cao và khả năng mô phỏng các hiện tượng phức tạp. Điều này giúp sinh viên và nhà nghiên cứu có thể tập trung vào việc phân tích và giải quyết vấn đề thay vì lo lắng về các phép toán.

II. Thách Thức Trong Nghiên Cứu Hiện Tượng Cơ Học

Nghiên cứu hiện tượng cơ học không chỉ đơn thuần là việc áp dụng lý thuyết mà còn phải đối mặt với nhiều thách thức. Các vấn đề như độ chính xác của mô hình, sự phức tạp của các phương trình vi phân và khả năng tính toán của máy tính đều ảnh hưởng đến kết quả nghiên cứu. Việc tìm ra giải pháp cho những thách thức này là rất quan trọng để nâng cao chất lượng nghiên cứu.

2.1. Độ Chính Xác Của Mô Hình Mô Phỏng

Một trong những thách thức lớn nhất trong mô phỏng cơ học là đảm bảo độ chính xác của mô hình. Các mô hình không chính xác có thể dẫn đến kết quả sai lệch, ảnh hưởng đến việc phân tích và đưa ra kết luận.

2.2. Khả Năng Tính Toán Của Máy Tính

Khả năng tính toán của máy tính cũng là một yếu tố quan trọng. Các bài toán phức tạp yêu cầu nhiều tài nguyên tính toán, và việc tối ưu hóa mã lệnh trong Matlab là cần thiết để đạt được kết quả nhanh chóng và hiệu quả.

III. Phương Pháp Giải Quyết Vấn Đề Trong Nghiên Cứu Cơ Học

Để giải quyết các vấn đề trong nghiên cứu cơ học, nhiều phương pháp đã được phát triển. Sử dụng Matlab, các nhà nghiên cứu có thể áp dụng các phương pháp số để giải các phương trình vi phân, từ đó mô phỏng các hiện tượng vật lý một cách chính xác. Các phương pháp này không chỉ giúp tiết kiệm thời gian mà còn nâng cao độ tin cậy của kết quả.

3.1. Phương Pháp Số Trong Matlab

Phương pháp số là một trong những cách hiệu quả nhất để giải quyết các bài toán cơ học phức tạp. Matlab cung cấp nhiều hàm và công cụ hỗ trợ cho việc thực hiện các phương pháp này, giúp người dùng dễ dàng áp dụng vào nghiên cứu.

3.2. Mô Phỏng Các Hiện Tượng Cơ Học

Mô phỏng các hiện tượng cơ học thông qua Matlab cho phép người dùng quan sát và phân tích các quá trình vật lý một cách trực quan. Điều này không chỉ giúp nâng cao hiểu biết mà còn hỗ trợ trong việc giảng dạy và học tập.

IV. Ứng Dụng Thực Tiễn Của Matlab Trong Nghiên Cứu Cơ Học

Matlab đã được ứng dụng rộng rãi trong nhiều lĩnh vực nghiên cứu cơ học, từ khảo sát chuyển động của vật rơi đến mô phỏng dao động của con lắc. Những ứng dụng này không chỉ giúp sinh viên nắm vững lý thuyết mà còn phát triển kỹ năng thực hành cần thiết cho công việc sau này.

4.1. Khảo Sát Chuyển Động Của Vật Rơi

Khảo sát chuyển động của vật rơi là một trong những ứng dụng cơ bản của Matlab trong nghiên cứu cơ học. Việc mô phỏng này giúp sinh viên hiểu rõ hơn về các định luật vật lý liên quan đến chuyển động.

4.2. Mô Phỏng Dao Động Của Con Lắc

Mô phỏng dao động của con lắc là một ứng dụng thú vị khác của Matlab. Qua đó, sinh viên có thể quan sát các yếu tố ảnh hưởng đến dao động và cách thức hoạt động của con lắc trong thực tế.

V. Kết Luận Về Ứng Dụng Matlab Trong Nghiên Cứu Cơ Học

Matlab đã chứng minh được giá trị của mình trong nghiên cứu cơ học thông qua khả năng mô phỏng và tính toán mạnh mẽ. Việc áp dụng Matlab không chỉ giúp nâng cao hiệu quả nghiên cứu mà còn tạo điều kiện cho sinh viên phát triển kỹ năng cần thiết cho tương lai. Với sự phát triển không ngừng của công nghệ, việc sử dụng Matlab trong nghiên cứu cơ học sẽ ngày càng trở nên phổ biến.

5.1. Tương Lai Của Matlab Trong Nghiên Cứu

Tương lai của Matlab trong nghiên cứu cơ học hứa hẹn sẽ tiếp tục phát triển với nhiều tính năng mới. Điều này sẽ giúp người dùng có thêm nhiều công cụ hỗ trợ trong việc giải quyết các bài toán phức tạp.

5.2. Khuyến Khích Sử Dụng Matlab Trong Giảng Dạy

Khuyến khích việc sử dụng Matlab trong giảng dạy sẽ giúp sinh viên nắm vững kiến thức và kỹ năng cần thiết. Điều này không chỉ nâng cao chất lượng giáo dục mà còn chuẩn bị cho sinh viên những kỹ năng cần thiết cho công việc trong tương lai.

09/07/2025

Trích đoạn nội dung tài liệu

CHƯƠNG 1. CÁC HIEN TƯỢNG ROI Trong chương đầu tiên này, chúng ta sẽ khảo sát các chuyển động rơi không cố lực cin không khí và có lực cẩn không khí tỷ lệ với bình phương độ lớn vận tốc của vật Để giải quyết chuyển động có lực cin, những phương pháp số đơn giản nhất để giải phương trình vi phân được đưa vào. Ngoài ra, chương này cũng sẽ giới thiệu những câu lệnh đơn giản, thường gặp của Matlab. Ohitong 1: ©iíe kiệm ligng rơi ° Ung dựng Matlab khảo sát mbt 16 hign lrigng cứ hge A.

SỰ ROLTY DO I. LY THUYẾT Theo định nghĩa, sự rơi của các vật trong chân không chỉ dưới tác dụng của trọng lực gọt là sự rơi tự do. Trong quá trình rơi tự do vật chuyển động nhanh din đều với gia tốc a=g (gia tốc trọng trường). Theo đó vận tốc của vật tại một thời điểm bất kỳ và quãng đường mà vật đi được sau khoảng thời gian t là: v= Vvạ + gl Pe ge? = @ với W là vectơ vận tốc của vật tại thời điểm t= 0.

Hình vẽ trên mính họa cho hai công thức bên dưới. Theo đó 46 thị v(t) là một nhánh của đường thẳng, s(t) là một cung của parabol. Outong 1: Giác kiệm tetgng rot 10 Ung dụng Matlab khio sit một vế kiện tung eđ lige Il. CHƯƠNG TRÌNH TRONG MATLAB Khảo sắt sự rơi tự do rất đơn giản, ở đây chỉ đưa ra chương trình mà không cắn giới thiệu một thuật toán nào cả.

Chương trình này xem như để làm quen với các câu lệnh cơ bản của Matlab. Các giải thuật sẽ được trình bày ở những đoạn sau, khi khảo sắt các hiện tượng rơi khác tổng quát hơn. Chương trình function roitudo; %⁄4Khao sat do thi s(t), v(t) cua mot vat roi tu do cle; %Nhap du lieu ban dau dispDO THI CUA SU ROI TU DO’) vũ=input(Nhap van toc ban dau (m/s):"); g“input(Nhap gia toc trong truong (m/s*2):'); dcltat=input(Khoang thoi gian giua hai lan do (s):"); tmax*input(Thoi gian khao sat ($):"); cle; x0=0;ts0; %Trong khi t<tmax, thuc hien cac phep tinh tim s va v while t©etmax t=t+deltat; if t<“tmax v=v0+g*t; s=v0*t+0.ts) %Ve cac diem (ts); (t,v) tren do thi s0=x; hold on end end -%Gan nhan va ten cho đo thi - title("Noa thd v(t), sít)';{ontname','vni-times','fontsize', 12) xlabel(‘Trulc thôøi gian t(s)','fontname'’,'vni-times','fontsize’,12) YLABEL('Tnuic vaän todc v(m/s) vaø quadng ñöôøng s(m)','fontname'’,. ‘vni-times’,'fontsize’, 12) gtext('v=v(t)') gtext('swa(t)') xả: i Chạy thử chương trình với các giá trị của v0, g, deltat, tmax ta sẽ thu được các đổ thị s(t) và v(t).

Chú ý rằng với khoảng thời gian giữa hai lin khảo sát deltat càng nhỏ thì đổ thị thu được càng chính xác. Với v0=0m/s; g=9,8n/s`; deltat=0,01s; tmax=5; ta có kết quả sau: ung 1: Ode kiện titgng rơi 7 11. MÔ PHONG CHUYỂN ĐỘNG CUA VAT RƠI TỰ DO 1. Phương pháp thứ nhất để tạo ảnh động 1.

Nguyêntắc Tưởng tượng rằng chúng ta có một số bức ảnh, có phong nên giống nhau, và có chứa cùng một vật; i |? ¿| Vị trí của vật không giống nhau trong mỗi bức ảnh. Nếu ta xếp khít Hn lượt các bức ảnh lên nhau một cách nhanh chóng. thì mất sẽ có cảm giác dường như vật đã chuyển động từ vị trí nầy sang vị trí kia, tương ứng với các vị trí của nó trên các bức ảnh. @ Vội dường như di chuyển theo đường chéo của bức ảnh khi 5 bức ảnh trên được chống lên nhau.

Chúng ta sẽ sử dụng nhận xét trên để tiến hành tạo hình ảnh của một vật rơi tự do, cũng như cho tất cả các mô phỏng khác trong các phần sau. Ohitong 1: Cae kiện tigng rot r2 tấn, Matlab khảo sit xổ hignt. Các lệnh sử dụng trong Matlab 1. Lệnh M=moviein(j); Tác đụng: Tạo ra một ma trận cój phần tử, mỗi phần tử xem như một bức ảnh.

Lệnh se((gca, 'nexfplot','replacechildren ') Tác dụng: Thay thế đối tượng trong lin vẽ tiếp theo, nghĩa là thay đổi vị trí của vật. Lệnh Ä#(:, j=getframe; Tác dung: Giữ lai nền đã được chọn, nghĩa là giữ lại “nền” của các bức ảnh. Phương pháp thứ hai để tạo ảnh động 2. Nguyên tắc Ở phương pháp này, chúng ta cũng giữ nguyễn nền của hình ảnh.

Tại thời điểm t, ta vẽ vật; tại thời điểm t+dt tiếp theo ta cũng vẽ vật và đồng thời trong lẳn vẽ này, vật được vẽ ở thời điểm t sẽ bị xóa đi nhờ một câu lệnh. Các lệnh sử dụng trong Matlab 2. Lệnh Aanlde=plot(x,y,’*') ; Lệnh này có tác dụng tạo một Aandle để vẽ vật tại tọa độ x, y. Về sau, để vẽ vật, ta không cắn dùng lệnh plot, chỉ cắn gọi lại handle.

Muốn thay đổi các thông số cần vẽ. ta thay đổi trực tiếp trên handle này. Lệnh sef(handle, 'erasemode ', 'xor ') Lệnh này gửi đến thuộc tính erasemode của handle giá trị là xor. Erasemode là thuộc tính vé chếđộ xóa; xor có ý nghĩa là xóa những hình ảnh trước đó.

Nếu ta thay “sor” bồi "none” thì các hình vẽ trước sẽ không được xóa. Lệnh set(handle, 'xdata’,x,"ydata’,y) Vật chuyển động, nghĩa là các tọa độ x, y sẻ thay đổi theo thời gian. Nên tại mỗi lin vẽ vật, chúng ta thay đổi các thông số xdata, ydata của handle dé thay đổi tương ứng vị trí của vật. Lệnh drawnow Lệnh này có tác dụng thực hiện động tác vẽ.

Nhận xét giữa hai phương pháp tạo ảnh động Với phương pháp thứ nhất, do có sự chdng chập giữa các bức ảnh với nhau, nên hình ảnh thu được sẽ không đẹp. Mà cụ thể là ta sẽ thấy phong nền liên tục “rung”, xuất hiện các sọc ngang chạy dài từ trên cao xuống trong quá trình vật chuyển động. Phương pháp thứ hai khắc phục hoàn toàn nhược điểm này, ta sẽ có hình ảnh vật chuyển động đẹp hơn, hình không còn bị rung. > Cho nên trong những chương trình mô phỏng về sau, phương pháp hai sẽ được vận dụng chủ yếu.

Cũng xin giới thiệu một chương trình đơn giản, được xử lý lin lượt bằng cả hai phương pháp; và ding lin lượt cả hai chế độ xóa xer và none trong phương pháp hai, Chương trình này mô phỏng chuyển động của vật có quỹ đạo hình xoấn ốc (chuyển động của electron trong điện từ trường chẳng hạn). Các chương trình như sau : Cho phương pháp thứ nhất : function xoanocÌ %e Tao hinh anh vat chuyen đong theo duong xoan oc theo phuong pháp | cle; N=1001; Me«movicin(N); =0; %eChon he truc toa do Oxyz axis([-II 11 -S 5-1 35]) %eTao các chuyen dong for j=1:N sel(gca,nextplot’,'replacechildren’) x=10*cos(pi*t); y=5*sin(pi*t); z“3*( plot3(x.g*') %Ve trong khong gian 3 chieu J“J*l; t=t+0.01; M(:,j)*getframe; end Cho phương pháp thứ hai : function xoanoc2 %Tao hinh anh vat chuyen dong theo duong xoan oc theo phuong phap 2 cle; x0=10; y0=0; 200; _% Tao handle de ve vat .01:10 x" 10*cos(pi*t); y=5*sin(pi*t); ze3*t; set(handle,'xdata',x,'ydata',y,'zdata'z) %Gan cac thong so moi cho handle drawnow end Nếu cho chạy hai chương trình này, ta sẽ thấy chương trình thứ hai chạy nhanh hơn rất nhiều. Nếu ta thay chế độ xor bằng none, ta sẽ thu được kết quả hình ảnh vật chuyển động như sau: Ohiteng f: Cade kiệm tung ret 14 lng dụng Matlab kde sát một id hiện tượng eo hee 4. Các bước thực hiện cho bài toán vật rơi tự do 4.

Tính số bức ảnh cần thiết Đối với bài toán này, ta nhận thấy sau một khoảng thời gian rơi vật sẽ chạm đất, do đó số bức ảnh cẩn thiết (từ nay về sau ra sẽ gọi tất là j) có giới hạn và cẩn phải được xác định. Khác với nhiều trường hợp khác, như dao động điều hòa, j có giá trị tùy ý, theo yêu cầu của người khảo sát. Ban đầu vật ở độ cao h, có vận tốc vạ (v,>0 nếu vạ hướng xuống, và ngược lại), Dễ dàng tính được khoảng thời gian cắn thiết để vật chạm đất là: (+ vệ +2gh) ———— = 2 Cứ sau 1 khoảng thời gian Ar thì chúng ta sẽ ghi số liệu một lan, do đó tam T thời giá trịj cẩn thiết là: j =—. Vì j không thể lẻ, nên phải làm tròn bằng cách sử đụng hàm round.

Nếu phẩn lẻ củaj vượt quá hay bằng 0,5 thì round(j)= (phần nguyên của j)+1. Ngược lại nếu phần lẻ củaj nhỏ hơn 0,5 thì round(j)= phần nguyên củaj. Đây là điều cẩn lưu ý nếu muốn tạo ảnh chính xác. hương 1: Cae kiện trgng roi 75 Ta còn có 2 ảnh đặc biệt: một ảnh ghi lại trạng thái ban đầu của vật, day là ảnh tĩnh, vật “bị treo lơ lửng", chỉ khi nào nhấn phím ENTER từ người diéu khiển thi quá trình rơi mới bất đầu.

Ảnh thứ hai cũng là ảnh tĩnh, ghi lại trạng thái của vật khi đã chạm đất. Tóm lại: j =round Lid 2 néu round LG oe a AO) Ai j= mm =) nếu round 5 my AI AI AI 4. Các handle cần thiết Ngoài handle chính dùng để vẽ vật, ta dùng thêm 5 handle phụ là các text. Các text này sẽ ghí lại thời điểm, độ cao, vận tốc của vật.

Chương trình function mophoagrtd %4Mo phong chuyen dong cua mot vat theo phuong thang dung cle %4'Nhap du lieu ban dau h“input(CDo cao ban đau (m):); đeltat=input('Khoang thoi gian gius hai lan khao sat (s):'); vOwinput(Van toc ban dau (m/s);’); g@input('Gia toc trong truong (m/s*2):'); NT aaaananaaananaaann. na ®%4Gan mau cho nen hinh ve (mau vang nhat) set(gef,'color’,[1 1 0.8]) ° T“=(-v0+sart(v0^2+2*°g*h)Vg; %———--—Thoi gian roi vmaxv0+g*T; if v0<0 - H=h+v0^2/2°g), 94———————-Do cao cuc dai else H=h; cnd 94-——————————Tinh so anh can thiết—S———————%% if (T/deltat)>round(T/deltat) _ §o@anh=round(T/deltat}+2; else soanh=round(T/deltat}+l; cnd %4-—-Tlnh truoc s„y, tai cac thoi diem t, cho vao các mang s(j), v()=——% for J=1:soanh ifj==I t()=0; 3(j)=0, v(J)=v0, y()=h, elseif j==soanh t)=T, s(j)eh; v()=vmax; y(j)*0; Ohitomy 1: Ode Áiệm (ugwg re 16 4 Miatlah &káo vit 4 oo else.^2: v(j}“v0+g®1()); y(j)=h-s(J); end Fl 8 ge %eTao he truc toa do thu nhat dung de ve vat trong khi no chuyen dong subplot(‘position’,[0.7}) handle chinh=plot(10,y(j),'0','erase’,'xor’,' markerfacecolor','m’); %handle de ve vat set(gca,'color(0.5 1 1],'fontsize',8)% Mau nen cua he trục toa do (mau xanh nhat) ylabel{'No& cao (m)’, ‘fontsize’,12,'color’,'m','fontname’,'vni-times’ ) axis({0 20 0 H]) %4 Tao he trục toa do thu hai de ve do thi van toc subplot('position’,[0.3]) handle_v~plot(t(j),v(j),’erase’,‘none’); set(gca,'color’,[0.5 1 1],'fontsize',8) xlabel("Théei gian (sỲ, ‘fontsize’,12,’color’,’m’,"fontname’,'vni-times' ) ylabel("Vaiin toác (m/s)', ‘fontsize’,12,'color’,'m’,'fontname',\vni-times' ) axis({0 T 0 vmax]) % Tao he truc toa do thu ba de ve do thi cua quang duong dịch chuyen subplot('position’,[0.3)) handle_x=plot(0,s(j),’erase’,'none',‘color’,’r’); set(gca,color [0. —=====—————-Tao các text thong bao——===========—— -%4Text thoi gian, do lon thoi gian, don vi thoi gian ‘Style’‘text’,/Units',‘normalized’,'Position’,[0,75 0.5 1 1],'foregroundcolor’,’r’,'string’,'t’,'fontsize’, 12); text_dvt=uicontrol(. ‘Style’ ‘text’, "Units', ‘normalized’ Position’ [0,88 0.5 1 1],'foregroundcolor’,’r’,'string’,'s’,'fontsize’,12); text_thoigians=ui Na “Style',text,"Units,'normalizcd''Position,[0.7] 'foregroundcolor','y','string 0); %4Text cho đo cao _text_docao=uicontrol(.

'Style ,texf,Unitx, ‘normalized’, Position’ [0.h); “eText cho van toc text_vantoc=uicontroi(. ‘Style’ ‘text’,/Units', ‘normalized’ 'Position’,[0.'forcgroundcolor''b','string',v0); _®Text cho quang duong dich chuyen Cua ng 1: Ode hign tượng rot text Ont ae text Unis: normalized’ Position: {0,68 0.7],'foregroundcolor’,d’,'string’,0); Mo phong chỉnh————— %4Trong khi j<=soanh while j<=soanh %4Neu j“1, ta cho may 6 trang thai cho ifJ=Il text thonagbao=uicontrol( ‘Style',‘text’,"Units’, ‘normalized. ‘foregroundcolor’,y',String’,/Nhadn ENTER fied baet haau’,.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu có tiêu đề "Ứng Dụng Matlab Trong Nghiên Cứu Hiện Tượng Cơ Học" cung cấp cái nhìn sâu sắc về cách sử dụng phần mềm Matlab trong việc phân tích và mô phỏng các hiện tượng cơ học. Tài liệu này không chỉ giúp người đọc hiểu rõ hơn về các phương pháp mô phỏng mà còn chỉ ra những lợi ích của việc áp dụng Matlab trong nghiên cứu khoa học, từ việc tiết kiệm thời gian đến việc nâng cao độ chính xác trong các phép tính.

Để mở rộng kiến thức của bạn về ứng dụng của Matlab trong các lĩnh vực khác, bạn có thể tham khảo tài liệu Luận văn thạc sĩ vật lý kỹ thuật ứng dụng matlab thiết kế mô hình buồng ứng dụng trong y sinh học, nơi bạn sẽ tìm thấy những ứng dụng thú vị trong y sinh học. Ngoài ra, tài liệu Luận văn thạc sĩ kỹ thuật trắc địa bản đồ xây dựng chương trình tính hiệu chỉnh trọng lực cũng sẽ giúp bạn hiểu rõ hơn về cách Matlab được sử dụng trong lĩnh vực trắc địa và bản đồ.

Những tài liệu này không chỉ bổ sung cho kiến thức của bạn về Matlab mà còn mở ra nhiều hướng nghiên cứu mới trong các lĩnh vực liên quan.