您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > MATLAB课程设计
MATLAB语言及仿真课程上机报告学院:年级专业:学生:学号:完成日期:实验一MATLAB在“高等数学”中的应用【实验目的】对大学基础物理课程中所涉及的“高等数学”问题,使用MATLAB7.0软件进行MATLAB解法的实践。【实验内容】1、微积分与级数的基本运算2、代数方程和常微分方程的解法3、数据统计和曲线拟合【实验步骤】:1.1微积分与级数的基本运算1、函数的极限与极值(1)函数的极限调用函数:limit(Fun,x,a)计算符号表达式Fun的极值,当x→a时;limit(Fun,x,a,'right')计算符号表达式Fun的右极值,当x→a+时;limit(Fun,x,a,'left')计算符号表达式Fun的左极值,当x→a-时;计算下列函数的极限值:①xxf1cos1在x→a时的极值;②321xf在x→0+时的极值;③xf13在x→0时的极值;④hxhxfloglog4在x→0时的极值;⑤xxafexp,125在x→∞时的极值;⑥nnf3621在n→∞时的极值。在命令窗口中输入如下指令:Symsxathn;f1=limit((cos(x)-1)/x),%缺省状态下,计算x→0时的极限值f2=limit(1/x^3,x,0,'right'),f3=limit(1/x,x,0,'left'),f4=limit((log(x+h)-log(x))/h,h,0);f5=[(1+a/x)^2,exp(-x)];ff5=limit(f5,x,inf,'left'),f6=limit((1+2/n)^(3*n),n,inf)(2)求函数的极值调用函数:[x,fval]=fminbnd(F,x1,x2)求一元函数F在区间(x1,x2)中的最小值fval和对应的x值;[x,fval]=fminsearch(F,x0)求多元函数F的极值点。向量x0为极值点位置初始猜测值。求函数)cos(xxf在区间(3,4)的极小值。在命令窗口中键入如下指令:[x,fval]=fminbnd(@(x)cos(x),3,4)y=@(x)cos(x);fplot(y,[3,3.4])(2)微分调用函数:Y=diff(F,’V’,N)求F对指定变量V的N阶导数,N的默认值为1;V的默认变量为x。已知z=y2sinx2,求yxz22、xyz22和yxz2。在命令窗口中键入:symsxy;z=y.^2.*sin(x.^2);d1=diff(z,2)d2=diff(z,y,2)d3=diff(diff(z,x),y)2、代数方程和常微分方程的解法2.1、线性代数方程组调用函数:X=linsolve(A,B’)求解下列方程组:2x1-5x2+6x3-x4+9=0-5x1-3x2+16x3-9x4+13=07x1-5x2-x4+7=04x1+5x2-6x3+x4+2=o在命令窗口中键入如下指令:a=[2-56-1;-5-316-9;7-50-1;45-61];b=[-9;-13;-7;-2];x=linsolve(a,b)2.2、常微分方程组的数值解法调用函数:[T,Y]=ode45(‘odefun’,tspan,y0)[T,Y]=ode45(‘odefun’,tspan,y0,options)[T,Y]=ode45(‘odefun’,tspan,y0,options,P1,P2,。。。)求解微分方程dxdy=-2y+2x2-ex,05.0x.,y0=1在命令窗口中输入如下命令:h=inline('-2.*y+2.*x.^2-exp(x)');[x,y]=ode45(h,[0,0.5],1);[x,y]'plot(x,y,'-o')3、数据统计和曲线拟合3.1概率分布及函数调用函数:p=mormpdf(x,mu,sigma)P=tcdf(x,n)[m,v]=chi2sta(n)x=finv(p,n1,n2)计算正态分布自由度为0、0.5的0.9分位数、均值和方差;并绘制概率及分位数的关系图。在命令窗口中输入如下指令:x=norminv(0.9,0,0.5)p=normcdf(0.6408,0,0.5)[m,v]=normstat(0,0.5)x=norminv(0.9,0,0.5);y=normpdf(x,0,0.5);t=-5:0.1:5;z=normpdf(t,0,.5);plot(t,z,[x,x],[0,y])text(x,0,'0.6408')gtext('p=0.9')3.2曲线拟合调用函数:p=polyfit(x,y,n)设实验中得到下列两组数据:x:0.5,1.0,1.5,2.0,2.5,3.0y:1.75,2.45,3.81,4.80,7.00,8.60求拟合多项式fx,画出拟合曲线并与实验数据点比较。在命令窗口中输入如下指令:x=[0.5,1.0,1.5,2.0,2.5,3.0];y=[1.75,2.45,3.81,4.80,7.00,8.60];p=polyfit(x,y,2)x1=0.5:0.05:3.0;y1=polyval(p,x1);plot(x,y,'*b',x1,y1,'-r')拟合多项式为:f(x)=0.5614x2+0.8287x+1.1560【验思考与练习】求下列极限:1、xxxsinlim0调用函数limit(Fun,x,a)在命令窗口中输入如下指令:symsxyf=sin(x)/x;y=limit(f,x,0)实验二MATLAB在“力学”中的应用【实验目的】对大学基础物理课程中所涉及的“力学”问题,使用MATLAB7.0软件进行MATLAB解法的实践。【实验内容】1、运动学与动力学2、运动的守恒定律3、机械振动4、波动5、用拉格朗日方程求解力学问题【实验步骤】1、运动学与动力学设一物体以抛射角,速度v0抛出,落点与射点在同一水平面,且不计空气阻力。求物体在空中飞行时间、落点距离和飞行的最大高度。在命令窗口中输入如下指令:clearally0=0;x0=5;v0=input('v0=');theta=input('theta=');v0=30theta=35v0x=v0*cosd(theta);v0y=v0*sind(theta);ay=-9.18;ax=0;tf=roots([ay/2,v0y,y0]);tf=max(tf);t=0:0.1:tf;y=y0+v0y*t+ay*t.^2/2;x=x0+v0x*t+ax*t.^2/2;xf=max(x),yf=max(y),gridon,holdonplot(x,y),xlabel('x'),ylabel('y')holdoff质量为m1的物体A在具有倾斜的物体B(质量为m2)上靠重力下滑,设斜面和地面都很光滑。求A沿斜面的相对加速度a1和B的加速度a2,并求斜面和地面的支持力N1和N2。在命令窗口中输入如下指令:symsa1a2N1N2m1m2gtheta;[N1N2a1a2]=solve('m1*a1*cosd(theta)-m1*a2=N1*sind(theta),m1*a1*sind(theta)=m1*g-N1*cosd(theta),m2*a2=N1*sind(theta),N2-N1*g=0','a1,a2,N1,N2')m1=2;m2=6;g=9.81;theta=35;X=subs([a1a2N1N2])返回结果为:X=6.76101.384614.4835142.08272、运动的守恒定律通过水平气垫导轨上两个滑块的相对碰撞来测量碰撞前后动能传递和滑块质量比的关系,并验证动量守恒定律。设滑块质量分别为M1和M2,碰撞钱的速度分别为v10和v20,碰撞后速度分别为v1和v2。忽略滑块与导轨的摩擦力,碰撞前后总动量不变。为方便起见,实验中取v20=0,即保持静止,用另一滑块去碰撞。在命令窗口中输入如下指令:clearallM1=input('M1=');M2=input('M2=');V10=input('V10=');V20=0;V1=input('V1=');V2=input('V2=');M1=[189.94189.94189.94189.94189.94199.29199.29199.29199.29249.37269.67299.36343.96397.42447.73497.82547.59647.49];M2=[647.49547.59497.82447.73397.42299.36249.37219.59199.29199.29199.29199.29189.94189.94189.94189.94189.94189.94];V10=[79.0546.3663.6561.3985.9161.7761.8060.8362.3896.0670.5768.8753.2255.9859.8459.4850.7636.84];V1=[42.8823.1737.1522.7430.5911.265.862.0509.1410.2311.1114.9717.5023.7926.2724.2519.40];V2=[34.9322.9334.5735.7154.2349.1654.8257.5764.27106.6180.6281.8768.6875.0883.8286.9676.2858.28];x=0:0.01:4;y=4*x./(1+x).^2;A=M1./M2;B=(M2.*V2.*V2)./(M1.*V10.*V10);k=polyfit(A,B,5);disp(k(1));y1=polyval(k,A);plot(A,B,'ko',A,y1,'k-',x,y,'k-')xlabel('M1/M2'),ylabel('△Ek/Ek1'),axis([0,4,0.4,1.1])legend('试验点','拟合曲线','理论曲线')3、机械振动设弹簧振子系统有质量为m的滑块和劲度系数为k的弹簧所组成。已知t=0时,m在A处,即x0=A,并由静止开始释放。试研究滑块的运动规律。在命令窗口中输入如下指令:clearx=dsolve('D2x=-w^2*x','Dx(0)=0,x(0)=A','t')k=400;m=2;w=sqrt(k/m);A=0.1;t=0:0.01:0.9;x=eval(x);v=eval(v);a=eval(a);subplot(3,1,1),plot(t,x);subplot(3,1,2),plot(x,v);subplot(3,1,3),plot(x,a)4、波动设一列波沿x轴正方向传播,另一列沿x轴负方向传播,取公共的坐标原点和计时起点,求两列波相遇处各质点的合位移,绘出t=0:9秒共10个时刻的运动图像。在命令窗口中输入如下指令:clearallA=8;k=2*pi;w=2;fort=0:9;x=0:0.01:2;y1=cos(w.*t-k.*x);y2=A.*cos(w.*t+k.*x);y=y1+y2;plot(x,y),holdonend5、用拉格朗日方程求解力学问题两滑轮及三个砝码组成一滑轮组,如图所示。略去摩擦及滑轮本身的重量,求每一砝码的及速度。解:三个砝码的质量和加速度可分别表示为砝码m1:1q,1q;砝码m2:21qq,21qq;砝码m3:21qq,21qq;故动能T为在不计摩擦情况下,重力式唯一的外力,故势能V可表示其中,g为重力加速度。拉格朗日函数L为L=T-V将L代入拉格朗日方程可求出体系的微分方程组,连解方程组就可算出砝码1m和2m和3m的加速度。在命令窗口中输入如下指令:clearallsymsm1m2m3vq1vq2rl1l2q1q2g;T=((m1+m2+m3).*vq1.^2+(m2+m3).*vq2.^2+2.*(m3-m2).*vq1.*vq2)./2;V=-(m1.*(l1-pi.*r-q1)+m2.
本文标题:MATLAB课程设计
链接地址:https://www.777doc.com/doc-6339413 .html