您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > Matlab实验报告
实验一:MATLAB语言平台与SIMULINK工具箱一、实验目的:1.学习了解MATLAB语言环境;2.练习MATLAB命令;4.掌握SIMULINK工具箱的应用。二、实验要求:1.实验内容(1)学习了解MATLAB语言环境;(2)练习MATLAB命令的基本操作;(3)掌握SIMULINK仿真环境的使用方法;(4)掌握线性系统仿真常用基本模块的用法2.要求按照实验文档的要求与步骤完成实验,撰写实验报告。三、实验基本知识:1.熟悉MATLAB环境:MATLAB桌面和命令窗口、命令历史窗口、帮助信息浏览器、工作空间浏览器、文件和搜索路径浏览器。2.掌握MATLAB常用命令3.了解SIMULINK模块库中各子模块基本功能四、实验内容:1.学习使用help命令,例如在命令窗口输入helpeye,然后根据帮助说明,学习使用指令eye(其它不会用的指令,依照此方法类推)helpeyeEYEIdentitymatrix.EYE(N)istheN-by-Nidentitymatrix.EYE(M,N)orEYE([M,N])isanM-by-Nmatrixwith1'sonthediagonalandzeroselsewhere.EYE(SIZE(A))isthesamesizeasA.EYEwithnoargumentsisthescalar1.EYE(M,N,CLASSNAME)orEYE([M,N],CLASSNAME)isanM-by-Nmatrixwith1'sofclassCLASSNAMEonthediagonalandzeroselsewhere.Example:x=eye(2,3,'int8');Seealsospeye,ones,zeros,rand,randn.ReferencepageinHelpbrowserdoceyeA=eye(3)A=1000100012.任意创建3个变量,分别为数值、矩阵、字符串,保存到mydat.mat文件,再把my_data.mat文件中的变量读取到MatLab工作空间内;查找已创建变量的信息,删除变量;学习使用clc、clear,观察commandwindow、commandhistory和workspace等窗口的变化结果。a=sym(2)a=2b=[2,3;4,5]b=2345c=sym('Kate')c=Katesavemydateabcloadmydateabcclearafind(a)???Undefinedfunctionorvariable'a'.find(c)???Function'find'isnotdefinedforvaluesofclass'sym'.Errorin==findat37builtin('find',varargin{:});find(b)ans=12343.请找出能进行“2维离散傅立叶变换”的指令(或称函数)名称,说出该函数有几种调用格式,并指出该函数文件的所在文件夹。运用help帮助系统查阅fft函数指令可以进行二维离散傅里叶变换,调用格式:Y=fft(X),Y=fft(X,n),Y=fft(X,[],dim),Y=fft(X,n,dim)。helpfftFFTDiscreteFouriertransform.FFT(X)isthediscreteFouriertransform(DFT)ofvectorX.Formatrices,theFFToperationisappliedtoeachcolumn.ForN-Darrays,theFFToperationoperatesonthefirstnon-singletondimension.FFT(X,N)istheN-pointFFT,paddedwithzerosifXhaslessthanNpointsandtruncatedifithasmore.FFT(X,[],DIM)orFFT(X,N,DIM)appliestheFFToperationacrossthedimensionDIM.ForlengthNinputvectorx,theDFTisalengthNvectorX,withelementsNX(k)=sumx(n)*exp(-j*2*pi*(k-1)*(n-1)/N),1=k=N.n=1TheinverseDFT(computedbyIFFT)isgivenbyNx(n)=(1/N)sumX(k)*exp(j*2*pi*(k-1)*(n-1)/N),1=n=N.k=1Seealsofft2,fftn,fftshift,fftw,ifft,ifft2,ifftn.Overloadedfunctionsormethods(oneswiththesamenameinotherdirectories)helpuint8/fft.mhelpuint16/fft.mhelpgf/fft.mhelpqfft/fft.mhelpiddata/fft.mReferencepageinHelpbrowserdocfft4.在MATLAB指令窗中运行指令(-32)^(1/5)后,会得到–2吗?532的全部方根有几个,并写出计算532全部方根的M脚本文件f=(-32)^(1/5)f=1.6180+1.1756i共有5个根p=[1,0,0,0,0,32];R=roots(p)R=-2.0000-0.6180+1.9021i-0.6180-1.9021i1.6180+1.1756i1.6180-1.1756i在历史指令窗中找到上述指令并选中点亮,单击鼠标右键选中{createM-file},并以exer0108为文件名保存,就得到了exer0108.m文件7.SIMULINK仿真实际应用1)利用SIMULINK求微分方程0)1(222xdtdxxdtxd在初始条件0)0(,1)0(dtdxx情况下的解(mu=2,mu=100)。2)完成教材[例7.2-1]的simulink仿真。012345678910-2.5-2-1.5-1-0.500.511.522.5012345678910-2.5-2-1.5-1-0.500.51五、实验讨论:通过本次实验我们熟悉了matlab的一些基本知识、操作和一些基本指令。这些操作对以后的学习起到一个铺垫的作用,需要熟练地掌握,和多加练习。实验二MATLAB的符号运算符号计算的特点:一,运算以推理解析的方式进行,因此不受计算误差积累问题困扰;二,符号计算,或给出完全正确的封闭解,或给出任意精度的数值解(当封闭解不存在时);三,符号计算指令的调用比较简单;四,计算所需时间较长。在MATLAB中,符号计算虽以数值计算的补充身份出现,但涉及符号计算的指令使用、运算符操作、计算结果可视化、程序编制以及在线帮助系统都是十分完整、便捷的。一、实验目的1、熟悉符号对象和符号表达式;2、掌握符号表达式和符号函数的操作;3、学习利用符号代数方程的求解。二、实验基本知识1、基本运算指令;2.掌握符号运算的应用。三、上机练习1.(1)通过符号计算求ttysin)(的导数dtdy。(2)然后根据此结果,求0tdtdy和2tdtdy。clearallsymsty=abs(sin(t))df=diff(y),ac=class(df)df1=limit(df,t,0,'left')df2=subs(df,'t',sym(pi/2))y=abs(sin(t))df=sign(sin(t))*cos(t)ac=Symdf1=-1df2=02.计算二重积分211222)(xdydxyx。clearallsymsxyf=x.^2+y.^2;eq=(int(int(f,y,1,x.^2),x,1,2)),a=double(eq)f=x^2+y^2eq=1006/105a=9.58103.已知22yxf(1)求22dyfd;(2)求11fdx.clearallsymsxyf=x.^2+y.^2dfdy2=diff(f,y,2)eq=int(f,x,-1,1)f=x^2+y^2dfdy2=2eq=2*y^2+2/34.解方程:06432xxclearallsymsxf=solve('3*x^2+4*x-6')f=-22^(1/2)/3-2/322^(1/2)/3-2/35.已知方程:62333ydxdydxyd(1)求通解;(2)求满足3)0(,2)0(,1)0(yyy的特解.clearallsymsxy=dsolve('D3y+3*Dy+2*y=6','x')eq=dsolve('D3y+3*Dy+2*y=6','Dy(0)=2','y(0)=3','x')结果:y=C2/exp(x*(1/(2^(1/2)-1)^(1/3)-(2^(1/2)-1)^(1/3)))+C3*cos((3^(1/2)*x*(1/(2^(1/2)-1)^(1/3)+(2^(1/2)-1)^(1/3)))/2)*exp(x*(1/(2*(2^(1/2)-1)^(1/3))-(2^(1/2)-1)^(1/3)/2))+C4*sin((3^(1/2)*x*(1/(2^(1/2)-1)^(1/3)+(2^(1/2)-1)^(1/3)))/2)*exp(x*(1/(2*(2^(1/2)-1)^(1/3))-(2^(1/2)-1)^(1/3)/2))+3eq=C9*sin((3^(1/2)*x*(1/(2^(1/2)-1)^(1/3)+(2^(1/2)-1)^(1/3)))/2)*exp(x*(1/(2*(2^(1/2)-1)^(1/3))-(2^(1/2)-1)^(1/3)/2))+((3^(1/2)*C9)/(2^(1/2)-1)^(1/3)+3^(1/2)*C9*(2^(1/2)-1)^(1/3)-4)/(exp(x*(1/(2^(1/2)-1)^(1/3)-(2^(1/2)-1)^(1/3)))*(3/(2^(1/2)-1)^(1/3)-3*(2^(1/2)-1)^(1/3)))-(cos((3^(1/2)*x*(1/(2^(1/2)-1)^(1/3)+(2^(1/2)-1)^(1/3)))/2)*exp(x*(1/(2*(2^(1/2)-1)^(1/3))-(2^(1/2)-1)^(1/3)/2))*((3^(1/2)*C9)/(2^(1/2)-1)^(1/3)+3^(1/2)*C9*(2^(1/2)-1)^(1/3)-4))/(3/(2^(1/2)-1)^(1/3)-3*(2^(1/2)-1)^(1/3))+36.求方程221,2xyxy的解。clearallf=solve('x^2+y^2-1=0','x*y-2=0','x','y'),S.x,S.y结果:f=x:[4x1sym]y:[4x1sym]ans=(1/2+(15^(1/2)*i)/2)^(1/2)/2-(1/2+(15^(1/2)*i)/2)^(3/2)/2-(1/2+(15^(1/2)*i)/2)^(1/2)/2+(1/2+(15^(1/2)*i)/2)^(3/2)/2(1/2-(15^(1/2)*i)/2)^(1/2)/2-(1/2-(15^(1/2)*i)/2)^(3/2)/2-(1/2-(15^(1/2)*i)/2)^(1/2)/2+(1/2-(15^(1/2)*i)/2)^(3/2)/2ans=(1/2+(15^(1/2)*i)/2)^(1/2)-((15^(1/2)*i)/2+1/2)^(1/2)(1/2-(15^(1/2)*i)/2)^(1/2)-(1/2-(15^(1/2)*i)/2)^(1/2)四、实验讨论本次实验使主要练习符号运算及指令,让我对其有使用方法有了更深入的理解,通过和数值运算比较,也更加明白了符号运算的优点和不足,对matlab有了进一步了解。实验三MATLAB的数值运算一、实验目的1.学习MATLAB的基本矩阵运算;2.学习MATLAB的点
本文标题:Matlab实验报告
链接地址:https://www.777doc.com/doc-4976758 .html