弹簧压缩 时间 matlab,用matlab解决弹簧振子摆动与时间的关系
用matlab解決彈簧振子擺動與時間的關(guān)系
用 matlab 解決彈簧振子擺動與時間的關(guān)系 學(xué) 院:光電信息 班 級:應(yīng)用物理(111160102) 姓 名:王梅 學(xué) 號:111160102242013 年 5 月 20 日 摘要:用 matlab 解決彈簧振子的振動和時間的關(guān)系,通過這個軟件可以清晰的計算和 繪畫出它的關(guān)系圖。這里我們借助于 matlab,在研究物理系統(tǒng)的運(yùn)動的同時,也用動畫 模擬他們的運(yùn)動。由于這些運(yùn)動模擬式采用真實(shí)的從求解運(yùn)動方程得到的數(shù)據(jù)。所以 利用 matlab 的數(shù)據(jù)擬合可以畫出精確的圖形。 題目:設(shè)質(zhì)量為 m 的擺錘掛在勁度系數(shù)為 k ,原廠為 l0 的輕彈簧上,彈簧的另一端懸 掛于固定點(diǎn) o,系統(tǒng)靜止自然下垂時彈簧長度為 l=l0+m*g/k, 系統(tǒng)可在過 0 點(diǎn)的豎直平 面內(nèi)自由擺動,試研究擺錘的運(yùn)動。 解:以 o 為極點(diǎn),豎直向下的 ox 軸為極軸,建立坐標(biāo)系。R 為質(zhì)點(diǎn) m 到 o 點(diǎn)距離,a 為 ox 軸與彈簧間的夾角。則系統(tǒng)的拉格朗日函數(shù)為 L=T-V=(1/2)m[(dr/dt)^2+r^2*(da/dt)^2]-[-mgrcosa+1/2*k(r-l0)^2] Matlab程序:function thb global L m k g theta0=pi/10 m=1;k=80;g=9.8; L0=1; L=L0+m*g/k; [t,u1]=ode45(@thbfun,[0:0.005:15],[L0 0 theta0 0]); [y1,x1]=pol2cart(u1(:,3),u1(:,1)); y1=-y1; figure ymax=max(abs(y1)) axis([-1.2 1.2 -1.2*ymax 0.2]); axis off title( μˉ?é°ú??£? fontsize ,14) hold on; r=0.055; yy=-L0:0.01:0; xx=R*sin(yy./L0*30*pi); [a,r]=cart2pol(xx,yy); a=a+theta0; (xx,yy)=pol2cart[a,r]; line([-1,1],[0,0], color , r ,linewidth ,2ball1=line(xx(1),yy(1), color , r , marker , . ,. markersize ,70, e rasemode , xor );ball2=line(xx(1),yy(1), color ,[0.5 0.51 0.6], linestyle , - ,. linewidth ,1.3, erasemode , none );spring=line(xx,yy, color , g , linewidth ,2,. erasemode xor );pause(0.5) for i=1:length(t)yy=-u1(i,1):0.01:0;xx=R*sin(yy./u1(i,1)*30*pi);[a,r]=cart2pol(xx,yy);a=a+u1(i,3);[xx,yy]=pol2cart(a,r);set(ball, XData ,x1(i), YData ,y1(i));set(ball2,x1(i), YData ,y1(i));set(spring, XData ,xx, YData ,yy);drawnow; endfunction F=thbfun(t,u)global L m k gF=[u(2);u(1)*u(4)^2+g*cos(u(3))-k/m*(u(1)-L+m*g/k);u(4);-2*u(2)*u(4)/u(1)-g*sin(u(3))/u(1)]; 運(yùn)行結(jié)果:function F=thbfun(t,u)global L m k gF=[u(2);u(1)*u(4)^2+g*cos(u(3))-k/m*(u(1)-L+m*g/k);u(4);-2*u(2)*u(4)/u(1)-g*sin(u(3))/u(1)]; theta0 =0.3142結(jié)果分析: 通過本次綜合實(shí)踐讓我們在學(xué)習(xí)計算物理基礎(chǔ)課程的同時,掌握 MATLAB 的應(yīng)用, 對 MATLAB 語言在中的推廣應(yīng)用起到促進(jìn)作用。從而將便多的時間留于對 matlab 的基本 分析方法和應(yīng)用的理解與思考學(xué)會應(yīng)用 MATLAB 的數(shù)值計算功能,將學(xué)生從繁瑣的數(shù)學(xué)運(yùn) 算中解脫出來,從而將便多的時間留于對 matlab 系統(tǒng)的基本分析方法和應(yīng)用的理解與思考。 讓我們將課程中的重點(diǎn)、難點(diǎn)及部分課后練習(xí)用 MATLAB 進(jìn)行形象、直觀的可視化計算機(jī) 模擬與仿真實(shí)現(xiàn),從而加深對 matlab 系統(tǒng)基本原理、方法及應(yīng)用的理解,以培養(yǎng)學(xué)生主動 獲取知識和獨(dú)立解決問題的能力,為學(xué)習(xí)后繼專業(yè)課打下堅實(shí)的基礎(chǔ)。
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的弹簧压缩 时间 matlab,用matlab解决弹簧振子摆动与时间的关系的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php有意思知识分享,分享几个有意思的数
- 下一篇: matlab apfc,APFC-Boo