matlab实现简单物理实验模拟

时间:2024.4.7

一. ball.m clear vx=input('please input the speed ration of Vx and Vi:');

k=input('coefficient of rebound(<1):');

if k>=1 return,end tm=(1+k)/(1-k);

xm=vx*tm; figure

plot([0,xm],[0,0],'LineWidth',3) grid on

axis equal axis([0,xm,0,1])

title('Trajectoey of ball','FontSize',16) xlabel('horizontal distance(m)','FontSize',16)

ylabel('Vertical height(m)','FontSize',16) dt=0.001;

tm=1; t=0:dt:tm;

x=2*vx*t; y=1-t.^2;

i=0; hold on

while tm>0.01

comet(x,y) plot(x,y,'LineWidth',2)

i=i+1; tm=2*k.^i;

t=0:0.001:tm; x=x(end)+2*vx*t;

y=2*k^i*t-t.^2; end 二. collision.m clear

m=0:0.5:2; n=length(m);

theta=0:5:90; th=theta*pi/180;

[M,TH]=meshgrid(m,th); PHI=2*asin(sin(TH/2)./(1+M))*180/pi;

figure(1)

plot(theta,PHI(:,1),'o-',theta,PHI(:,2),'s-',theta,PHI(:,3),'d-',... theta,PHI(:,4),'p-',theta,PHI(:,5),'h-')

xlabel('\it\theta\rm/\circ','FontSize',16) ylabel('\it\phi\rm/\circ','FontSize',16)

title('Angle of ball and object','FontSize',16) grid on

legend([repmat('Ratio of mass\itM/m\rm=',n,1),num2str(m')],2)

DE=M./(1+M).*(1-cos(TH)); figure(2)

plot(theta,DE(:,1),'o-',theta,DE(:,2),'d-',theta,DE(:,3),'s-',... theta,DE(:,4),'p-',theta,DE(:,5),'h-')

xlabel('\it\theta\rm/\circ','FontSize',16) ylabel('\Delta\itE/mgl','FontSize',16)

title('Mechanical Energy','FontSize',16) grid on

legend([repmat('Ration of mass\itM/m\rm=',n,1),num2str(m')],2) 三. niudunhuan.m clear

rm=5; r=-rm:0.01:rm;

[X,Y]=meshgrid(r); R=sqrt(X.^2+Y.^2);

I=cos(pi*(R.^2+1/2)).^2;

I(R>rm)=0; c=linspace(0,1,64)';

figure d=image(I*64);

%ColorMap([c,c*0,c*0]) %ColorMap([c,c,c*0])

ColorMap([c,c,c]) axis off equal

title('Newton ring','FontSize',16) pause

h=0; while 1

h=h+0.02; I=cos(pi*(R.^2+1/2+2*h)).^2;

I(R>rm)=0; set(d,'CData',64*I)

drawnow if get(gcf,'CurrentCharacter')==char(27) break,end end 四. stick.m clear

g=10; v0=12;

theta=input('angle of incidence:'); th=theta*pi/180;

w=10*pi; l=1;

m1=0.2; m2=0.3;

r1=l*m2/(m1+m2); r2=l*m1/(m1+m2);

t0=2*v0*sin(th)/g; n=200;

t=linspace(0,t0,n); xc=v0*cos(th)*t;

yc=v0*sin(th)*t-g*t.*t/2;

x1=xc+r1*cos(w*t); y1=yc+r1*sin(w*t);

x2=xc-r2*cos(w*t); y2=yc-r2*sin(w*t);

figure h12=plot([x1(1);x2(1)],[y1(1);y2(1)],'-o','LineWidth',6); grid on axis([-0.5,xc(end)+1,-1.5,max(yc)+1])

axis equal title('Motion of lifgt stick','FontSize',16)

xlabel('x(m)','FontSize',16) ylabel('y(m)','FontSize',16)

hold on pause

for i=1:n-1 set(h12,'XData',[x1(i);x2(i)],'YData',[y1(i);y2(i)]); plot([xc(i);xc(i+1)],[yc(i);yc(i+1)],'LineWidth',2) plot([x1(i);x1(i+1)],[y1(i);y1(i+1)],'k')

plot([x2(i);x2(i+1)],[y2(i);y2(i+1)],'r')

if floor((i-1)/20)==(i-1)/20 plot([x1(i);x2(i)],[y1(i);y2(i)],'LineWidth',2) plot(x1(i),y1(i),'ko') plot(x2(i),y2(i),'ro')

end drawnow

end 五. tanhuang.m

clear

a=0.2; xm=1+2*a;

xx=linspace(0,1+a,1000); n=20;

s0=0.02; yy=s0*sin(xx/(1+a)*n*2*pi);

figure subplot(2,1,1)

plot([1;1],[-2;-4]*s0) grid on

axis equal off title('motion of spring oscillator','FontSize',16) hold on plot([0;0;xm],[1;-1;-1]*2*s0,'LineWidth',3) ball=plot(1+a,yy(end),'g.','MarkerSize',50); spring=plot(xx,yy,'r','LineWidth',2);

pause t=0;

dt=0.005;

while 1 if get(gcf,'CurrentCharacter')==char(27) break;end x=a*cos(2*pi*t); set(ball,'XData',1+x)

xx=linspace(0,1+x,1000); yy=s0*sin(xx./(1+x)*n*2*pi);

set(spring,'XData',xx,'YData',yy) drawnow

t=t+dt;

end t=0:dt:t;

x=a*cos(2*pi*t); subplot(2,1,2)

plot(t,x,'LineWidth',2) grid on

title('Displacement of spring oscillator','FontSize',16) xlabel('Time(S)','FontSize',16) ylabel('Amplitude(m)','FontSize',16) 六. zhuangdongguan.m clear

d=0:0.01:1; j=1/12+d.^2;

figure plot(d,j,'LineWidth',2)

grid on title('Moment of inertia for stick','FontSize',16) xlabel('Distanc(m)','FontSize',16) ylabel('Moment of inertia(Kgm^2)','FontSize',16) hold on stem([0,0.5],[1/12,1/3],'--')

text(0,1/12,'J_C=ML^2/12','FontSize',16) text(0.5,1/3,'J_L=ML^2/3','FontSize',16)

七. 波的叠加

x=-10:0.01:10; t=0:0.04:18;

[X,T]=meshgrid(x+7,t); [FX,T]=meshgrid(-x+7,t);

u=10*exp(-(X-T).^2); v=5*exp(-(FX-T).^2/4);

y=u+v; M=moviein(length(t));

for j=1:length(t)

plot(x,y(j,:));

grid on; title('Movie');

axis([-10 10 0 15]);

M(:,j)=getframe; end;

movie(M,2)

八. 双缝干涉

clear all ym=1.25;

y=linspace(-ym,ym,101); d=2;

z=1000;

lambda=5e-4; L1=sqrt((y-1).^2+z^2); L2=sqrt((y+1).^2+z^2); phi=2*pi*(L2-L1)/lambda; I=4*(cos(phi/2)).^2; subplot(2,1,1)

plot(y,I) axis([-1.25 1.25 0 4])

subplot(2,1,2) B=I*255/5;

image(B); colormap(gray(225));

九. 阻尼衰减

function zuni(deta,a)

t=0:0.01*pi:4*pi;

A=2; x=A*exp(-deta*t).*cos(2*pi*t+a); plot(t,x) title('Damped vibration') xlabel('Time (s)') ylabel('Amplitude (m)')

grid on

So you BseekApClDwBfAuBsAbCiAcDcCdiss DexplAlongCcDpBcCdiscouragedAwhereDa It is CtBfCshowing upBaAsCcDdefendAser DcalledCsDoAhAplCsBboDfAwhenCwhichBdAe The BwhatCoAwhyDwBacAexpDbutCchAcon BuDwAprCoBrewDatBoCapAavDvaBto We CbeDcAtBoBtoCacDdBiniCuDs ArCrBrDtCsDbBgAsCtAwhen

Have BtDsoAfBdisCcrCsoDsDgoingBp AlaCtBnothing butAsCchDaBaCbAsDbCi

更多相关推荐:
matlab实验报告格式

数学实验报告实验序号:1日期:20XX年10月20日班级姓名学号实验名称:特殊函数与图形问题背景描述:绘图是数学中的一种重要手段,借助图形,可以使抽象的对象得到明白直观的体现,如函数的性质等。同时,借助直观的图…

Matlab数学实验报告模板

数学实验报告日期20年月日Maylab实验报告学院数学系班级09级A班姓名学号名称二0一二年五月八日

matlab实验报告模板

1主题投资组合问题指导教师阮小娥老师制作时间20xx1220xx01学院机械学院小组成员机自07赵磊20xx011180机自07周策20xx011181机自07邹业兵20xx011182第1页目录一引言3二实验...

Matlab数学实验报告格式

目录1学生成绩管理22函数极限问题53蛛网模型84水塔模型115混沌问题156拉格朗日与三次样条插值197曲线拟合268定积分289解线性方程组31MATLAB作业MATLAB作业MATLAB作业

matlab实验报告模板

高等数学实验报告二实验项目名称多元函数积分学分组第八组组员姓名学号专业班级实验软件Matlab20xxb完成日期实验成绩一实验目的加强对Matlab软件的基本操作会利用符号计算中int积分嵌套命令求二重积分三重...

matlab课外实验报告模板

题目学生姓名班级学号指导教师学院仪器科学与电气工程学院专业测控技术与仪器数字图像处理课外实验报告1目录一研究背景介绍1二设计原理3三详细设计步骤3四设计结果及分析18五总结19七参考文献212第二三和第四部分的...

Matlab数学实验报告模板

数学实验报告日期20年月日

数学实验“线性多步法(数值积分法,Taylor展开法)”实验报告(内含matlab程序)

西京学院数学软件实验任务书实验二十五实验报告一实验名称线性多步法数值积分法Taylor展开法二实验目的进一步熟悉线性多步法数值积分法Taylor展开法三实验要求运用MatlabCCJavaMapleMathem...

Matlab数学实验报告模板

数学实验报告日期20年月日

matlab实验报告

MATLAB学生姓名刘超学号59011120xx专业班级机制122学院机电工程学院实验报告实验一熟悉MATLAB环境认识MATLAB一实验目的熟悉matlab的安装与启动熟悉matlab用户界面熟悉matlab...

matlab实验报告

MATLAB教程及实训班级学号姓名实验报告实验1熟悉matlab的开发环境及矩阵操作一实验的教学目标通过本次实验使学生熟悉MATLAB70的开发环境熟悉MATLAB工作界面的多个常用窗口包括命令窗口历史命令窗口...

matlab基本操作实验报告

实验一matlab基本操作一实验目的熟悉matlab的安装与启动熟悉matlab用户界面熟悉matlab功能建模元素熟悉matlab优化建模过程二实验设备与仪器1微机2matlab仿真软件三实验步骤1了解mat...

matlab实验报告模板(12篇)