武汉理工大学matlab课设.docx

上传人:叶*** 文档编号:35631228 上传时间:2022-08-22 格式:DOCX 页数:13 大小:46.45KB
返回 下载 相关 举报
武汉理工大学matlab课设.docx_第1页
第1页 / 共13页
武汉理工大学matlab课设.docx_第2页
第2页 / 共13页
点击查看更多>>
资源描述

《武汉理工大学matlab课设.docx》由会员分享,可在线阅读,更多相关《武汉理工大学matlab课设.docx(13页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、课程设计任务书学生姓名: 李立 专业班级: 电信1005班 指导教师:祝立华 阙大顺 工作单位:信息工程学院 题目: MATLAB运算与应用设计5 初始条件:1. MATLAB6.5以上版本软件;2. 课程设计辅导资料:“MATLAB语言基础及使用入门”、“MATLAB及在电子信息课程中的应用”等;3. 先修课程:信号与系统、数字信号处理、MATLAB应用实践及信号处理类课程等。要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1. 课程设计时间:1周;2. 课程设计内容:根据指导老师给定的7套题目,按规定选择其中1套完成;3. 本课程设计统一技术要求:研读辅导

2、资料对应章节,对选定的设计题目进行理论分析,针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表),并对实验结果进行分析和总结。具体设计要求包括: 初步了解MATLAB、熟悉MATLAB界面、进行简单操作; MATLAB的数值计算:创建矩阵、矩阵运算、多项式运算、线性方程组、数值统计; 基本绘图函数:plot, plot3, mesh, surf等,要求掌握以上绘图函数的用法、简单图形标注、简单颜色设定等; 使用文本编辑器编辑m文件,函数调用; 能进行简单的信号处理MATLAB编程; 按要求参加课程

3、设计实验演示和答辩等。4. 课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,具体包括: 目录; 与设计题目相关的理论分析、归纳和总结; 与设计内容相关的原理分析、建模、推导、可行性分析; 程序设计框图、程序代码(含注释)、程序运行结果和图表、实验结果分析和总结; 课程设计的心得体会(至少500字); 参考文献(不少于5篇); 其它必要内容等。时间安排:1.5周(分散进行)参考文献:1 (美)穆尔,高会生,刘童娜,李聪聪MATLAB实用教程(第二版) . 电子工业出版社,2010.2 王正林,刘明精通MATLAB(升级版) .电子工业出版社,2011.3 陈杰 . MATLAB

4、宝典(第3版) . 电子工业出版社,2011.4 刘保柱,苏彦华,张宏林 . MATLAB 7.0从入门到精通(修订版) . 人民邮电出版社,2010.指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日目录 1MATLAB概述.21.1MATLAB简介 .21.2 MATLAB的功能 .21.3MATLAB 的典型应用 .42设计题目:MATLAB运算与应用设计 套题五 .43设计内容 .63.1 题一 .63.2 题二 .63.3 题三 .83.4 题四 .93.5 题五 .133.6 题六 .143.7题七 .163.8 题八 .173.9 题九 .183.10题十 .194

5、 课程设计心得 .215参考文献 .226 本科生课程设计成绩评定表 .231 MATLAB概述1.1MATLAB简介MATLAB软件由美国Math Works公司于1984年推出,经过不断的发展和完善,如今己成为覆盖多个学科的国际公认的最优秀的数值计算仿真软件。MATLAB具备强大的数值计算能力,许多复杂的计算问题只需短短几行代码就可在MATLAB中实现。作为一个跨平台的软件,MATLAB已推出Unix、Windows、Linux和Mac等十多种操作系统下的版本,大大方便了在不同操作系统平台下的研究工作。MATLAB软件具有很强的开放性和适应性。在保持内核不变的情况下,MATLAB可以针对不

6、同的应用学科推出相应的工具箱(toolbox),目前己经推出了图象处理工具箱、信号处理工具箱、小波工具箱、神经网络工具箱以及通信工具箱等多个学科的专用工具箱,极大地方便了不同学科的研究工作。国内已有越来越多的科研和技术人员认识到MATLAB的强大作用,并在不同的领域内使用MATLAB来快速实现科研构想和提高工作效率。MATLAB提供了20类图像处理函数,涵盖了图像处理的包括近期研究成果在内的几乎所有的技术方法,是学习和研究图像处理的人员难得的宝贵资料和加工工具箱。这些函数按其功能可分为:图像显示;图像文件I/O;图像算术运算;几何变换;图像登记;像素值与统计;图像分析;图像增强;线性滤波;线性

7、二元滤波设计;图像去模糊;图像变换;邻域与块处理;灰度与二值图像的形态学运算;结构元素创建与处理;基于边缘的处理;色彩映射表操作;色彩空间变换;图像类型与类型转换。1.2MATLAB的功能 (1)强大的科学计算机数据处理能力MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C+ 。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数

8、到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。(2)出色的图形处理功能图形处理功能MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可

9、视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),MATLAB同样表现了出色的处理能力。同时对一些特殊的可视化要求,例如图形对话等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。另外新版本的MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。(3)应用广泛的模块集合工具箱MATLAB对许多专门的领域都开发了功能强大的模块集和工具箱。一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法

10、而不需要自己编写代码。目前,MATLAB已经把工具箱延伸到了科学研究和工程应用的诸多领域,诸如数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、LMI控制、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、DSP与通讯、电力系统仿真等,都在工具箱(Toolbox)家族中有了自己的一席之地。(4)实用的程序接口和发布平台新版本的MATLAB可以利用MATLAB编译器和C/C+数学库以及图形库,将自己的MATLAB程序自动转换为独立于MATLAB运行

11、的C和C+的代码。允许用户编写可以和MATLAB进行交互的C或C+语言程序。另外,MATLAB网页服务程序还容许在Web应用中使用自己的MATLAB数学和图形程序。MATLAB的一个重要特色就是具有一套程序扩展系统和一组称之为工具箱的特殊应用子程序。工具箱是MATLAB函数的子程序库,每一个工具箱都是为某一类学科专业和应用而定制的,主要包括信号处理、控制系统、神经网络、模糊逻辑、小波分析和系统仿真等方面的应用。(5)应用软件开发(包括用户界面)在开发环境中,使用户更方便地控制多个文件和图形窗口;在编程方面支持了函数嵌套,有条件中断等;在图形化方面,有了更强大的图形标注和处理功能,包括对性对起连

12、接注释等;在输入输出方面,可以直接向Excel和HDF5进行连接。1.3MATLAB的典型应用MATLAB的应用领域十分广阔,典型的应用举例如下:(1) 数据分析(2) 数值与符号计算;(3) 工程与科学绘图;(4) 控制系统设计;(5) 航天工业;(6) 汽车工业;(7) 生物医学工程;(8) 语音处理;(9) 图像与数字信号处理;(10) 财务、金融分析;(11) 建模、仿真及样机开发;(12) 新算法研究开发;(13) 图形用户界面设计。2设计题目: Matlab运算与应用设计51 已知t=linspace(0,2*pi,6),求t的正弦和正弦的绝对值。2 绘制函数在时的曲线。3 已知a

13、=1,3,0;2,0,1;4,6,5, a1=logical(1 0 1),a2= logical(1 1 0),b=a1,求a(a1,a2)和a(b)。4 分析下面每条指令的功能并运行,观察执行结果。a) X=0:0.25:3;Y=X.*exp(-X);plot(X,Y),xlabel(x), ylabel(y),title(y=x*exp(-x);(2) A=zeros(2,5)A(:)=-4:5L=abs(A)4islogical(L)X=A(L)(3) A=1:5;6:10pow2(A)(4) A=zeros(3,2)A(:)=1:6A=A*(1+i)A1=A.;B1=A;(5) A=

14、ones(2,3)B=ones(2)C=eye(4)D=diag(C)E=repmat(C,1,3)5 计算在x=0.1与10处的值。6 求函数, n=100的值。7 求1500个元素的随机数向量A中大于0.5的元素个数。8. 用图形表示连续调制波形,运行下面的程序,观察结果,并简单说明。t1=(0:11)/11*pi;y1=sin(t1).*sin(9*t1);t2=(0:100)/100*pi;y2=sin(t2).*sin(9*t2);subplot(2,2,1),plot(t1,y1,r.),axis(0,pi,-1,1),title(子图 (1)subplot(2,2,2),plot

15、(t2,y2,r.),axis(0,pi,-1,1),title(子图 (2)subplot(2,2,3),plot(t1,y1,t1,y1,r.)axis(0,pi,-1,1),title(子图 (3)subplot(2,2,4),plot(t2,y2)axis(0,pi,-1,1),title(子图 (4)9. 已知方程组,用矩阵除法来解线性方程组。10已知,其中t的范围是0 10,计算y的微分和积分并给出曲线图。3设计内容3.1 题一1. 已知t=linspace(0,2*pi,6),求t的正弦和正弦的绝对值。 分析:linspace 是用来生成一个等差数列的,形如x=linspace(

16、a,b,n)作用就是将生成一个以a和b为断点 共划分为n个区间的向量。并且需要用到正弦、余弦以及绝对值函数,他们都存在matlab的基本函数库matlab elfun里,直接调用就可以了。我们可以直接在Command window命令行输入程序,运行即可,如图:图3.1-13.2题二2.绘制函数在时的曲线。分析:这道题目需要我们在0,1范围内绘制曲线,查书可知使用plot函数可以在Matlab中画出二维图形。在MATLAB中常用的二维图形绘制及相关操作如下所示。(1)二维图形绘制plot函数格式:plot(x,y)功能:输入两个数组的情况。绘出以x数组中的元素作为横坐标,y数组中的元素作为纵坐

17、标的曲线。还可以使用plot(x,y1,y2,.)的命令格式,以x为向量(即横轴),以y=y1,y2,为数据矩阵,且其中的y1,y2,为横向量还是列向量都可以得出多条基于相同横轴的曲(折)线。y的个数即为曲线的条数。此命令可以在同一张图中绘制多条曲线。(2)subplot函数格式:subplot(m,n,p)功能:将图形窗口分成nm个子图形窗口,并选择第p个窗口作为当前的图形窗口,供绘制函数图形使用。(3)添加图形标题吗命令title格式:title(string)功能:在当前坐标系的顶部加一个文本串string,作为该图形的标题。(4)添加坐标轴标志函数xlabel,ylable,zlabl

18、e格式:xlabel(text)或ylable(text)或zlable(text)功能:给当前的X轴或Y轴或Z轴标注文本标注(5)图形标注函数legend格式:legend(string1,string2,string3,)功能:在当前图中添加图例(6)文本注释函数text格式:text(X,Y,string)功能:二维图形(X,Y)位置处标注文本注释string根据这些函数的作用,我们可以选择plot函数。程序运行代码如图3.2-1所示 图3.2-1程序运行结果如图3.2-2所示图3.2-23.3题三3.已知a=1,3,0;2,0,1;4,6,5, a1=logical(1 0 1),a2

19、= logical(1 1 0),b=a1,求a(a1,a2)和a(b)分析:logical(a)以一个数组的形式返回,可以用于逻辑索引或逻辑测试。因此题中:a1= 1 0 1,a2=1 1 0.b=a1为逻辑运算,矩阵a中,大于1的元素取1,不大于1的元素取0,则有b=.对于这个题目,可以建立一个M文件我们可以新建一个M文件来计算这道题,命名为th.M,程序输入窗口如图3.2-1 图3.2-1最后,运行出来的结果如图3.2-2图3.2-23.4题四4.分析下面每条指令的功能并运行,观察执行结果。 (1)X=0:0.25:3;Y=X.*exp(-X);plot(X,Y),xlabel(x),

20、ylabel(y),title(y=x*exp(-x);(2) A=zeros(2,5)A(:)=-4:5L=abs(A)4islogical(L)X=A(L)(3) A=1:5;6:10pow2(A)(4) A=zeros(3,2)A(:)=1:6A=A*(1+i)A1=A.;B1=A;(5) A=ones(2,3)B=ones(2)C=eye(4)D=diag(C)E=repmat(C,1,3)分析:(1)此题中需要用到绘制二维图形的基本函数polt,常用形式为plot(x,y1,x,y2)。并用title(y=x*exp(-x)为他加上图形标题;以及用xlabel(x)为他加上x轴说明;

21、和用ylabel(y)为他加上y轴说明。执行结果:如图3-4-1图3.4-1图(2) 1)分析:先用函数产生一个2行5列的零矩阵,然后给A从-4到5(步长为1)赋值,并判断其绝对值是否大于4,若是值为1,否则为0。后面为判断L是否为逻辑数组,若是值为1,否则为0。X为逻辑数组L对应为1的位置的数据是列向量。 2)执行结果如图3.4-2图3.4-2(3) 1)分析:A=1:5;6:10创建一个25的矩阵,其值大小从1至10依次递增1;pow2(A) 将矩阵A中的每个值都变为2x,x为矩阵中的每个值。 2)程序运行结果如图3.4-3图3.4-3(4) 1)分析:A=zeros(3,2);A(:)=

22、1:6;A=A*(1+i) 先创建一个32的矩阵,依次赋值1 至6,再将A2*(1+i)的值赋给A;A1=A.将A行列转置后赋给A1; B1=A将A转置后再取其共轭复数将其赋给B1。 2)程序运行结果如图4.1-5所示。 图3.4-4(5) 1)A=ones(2,3)产生一个23的全1矩阵;B=ones(2)产生一个二阶的全1方阵;C=eye(4)产生一个四阶的单位矩阵;D=diag(C)取C矩阵主对角线上的元素构成向量D。E=repmat(C,1,3) 将矩阵复制13块,构成新的矩阵E。 2)程序的运行结果如图4.1-6所示。图3.4-53.5题五1 计算在x=0.1与10处的值。分析:该题

23、是求多项式在某一点的值。我们知道,在MATLAB中为我们提供了许多的关于多项式计算的函数。常见的及其作和用法如下所示。(1)多项式的表示n在MATLAB中,对多项式p(x)=+.+.用其系数的行向量p=来表示。(2)多项式求值函数polyval格式:y=polyval(p,x)功能:返回多项式p在x处的值。其中x可以是复数,也可以使数组(当p为矩阵多项式时,使用polyvalm函数)。(3)向量转换为多项式函数poly2sym格式:y=poly2sym(p)功能:将向量p转换为多项式显然,此题我们要用的是polyval函数。其程序代码及运行结果如图3.5-1所示。图3.5-13.6题六2 求函

24、数, n=100的值。分析:由题可得,该数值的就算需要我们编写M文件,利用循环机结构while语句或者for语句,n的值由自己确定,本题中我们取n=100。输出时我们可以使用格式输出函数fprintf。程序流程图如下所示。开始s=0,i=1i=n?s=s+ ,i=i +1 结束NOYES程序代码如图3.6-1所示。图3.6-1点击,得到程序运行结果如图3.6-2所示图3.6-23.7题七7. 求1500个元素的随机数向量A中大于0.5的元素个数。1)分析:首先我们因该利用rand函数产生1500个元素的随机向量,我们可以将其定义为15010的矩阵。统计其中大于0.5的元素个数时,我们可以借助于

25、for循环语句将矩阵中的每一个元素与0.5一一比较而统计个数。若其大于0.5,则N的值加一。最后输出N的值即为我们所需要的结果。2)M文件程序代码如图3.7-1所示。图3.7-1点击,得到程序的运行结果如图3.7-2所示。图3.7-23.8题八8.用图形表示连续调制波形,运行下面的程序,观察结果,并简单说明。t1=(0:11)/11*pi;y1=sin(t1).*sin(9*t1);t2=(0:100)/100*pi;y2=sin(t2).*sin(9*t2);subplot(2,2,1),plot(t1,y1,r.),axis(0,pi,-1,1),title(子图(1)subplot(2,

26、2,2),plot(t2,y2,r.),axis(0,pi,-1,1),title(子图 (2)subplot(2,2,3),plot(t1,y1,t1,y1,r.)axis(0,pi,-1,1),title(子图 (3)subplot(2,2,4),plot(t2,y2)axis(0,pi,-1,1),title(子图 (4)1) 输入M文件代码程序,如图3.8-1 图3.8-12)点击,程序运行结果如图3.8-2所示3) 分析:t1是pi等分11份的一个矩阵,y1是将pi等分100份的矩阵,subplot意思是将函数图分为四个子图,plot(x,y,r.)中的r表示以红色线输出,小数点表示

27、会以描点形式输出。Axis()函数是表示绘图时x与y的取值区间。Title函数表示子图的标题。3.9题九9 已知方程组,用矩阵除法来解线性方程组。分析:用矩阵的除法来解线性方程组时,可以把方程组的系数用矩阵A表示,未知数X常数用矩阵表示,则有A*X=B,X=A/B1) 程序输入如图3.9-1 图3.9-1 程序运行结果如图3.9-2所示。图3.9-23.10题十10 已知,其中t的范围是0 10,计算y的微分和积分并给出曲线图1) 分析:学习使用积分与微分函数int(f,a,b)表示在a到b积分;diff(f,a,b)表示在a到b的微分。并利用ezplot函数绘图。建立一个M文件,命名为jif

28、enten.m,输入程序,如图3.10-1 图3.10-12) 点击,程序运行结果如图3.10-2所示 图3.10-2 4 课程设计心得在学习Matlab的过程中,我明白到了“实践出真知”这句话的真谛了,在书上看到的内容,如果不懂得话,我们可以把程序输入代码窗口,运行之后,看得出的结果,然后再加上书本上的讲解,就很好理解了,相反,如果我们只是在那想着这个程序或者这个函数有什么功能,肯能想很长时间都不明白。另外,即使我们能够看懂的程序或者是函数,不应该只局限于纸上谈兵,也应该在Matlab软件去运行,观察结果,并且有可能发现新的问题,获取更多的知识。最开始学的时候,我只是啃着书本不放,不去电脑上

29、去用Matlab软件(即使装的时候可是费了很多时间啊,老出错),不仅很多看的不是很懂,而且没有兴趣没看着看着就要睡觉。后来,我回到寝室,打开电脑,然后学习了一下Matlab软件的一些操作和它的界面后,对Matlab如何使用有了初步的了解。于是,我便在上面开始输入程序了,并且逐渐体会到Matlab那强大的功能。Matlab强大功能之一在于它对矩阵的操作能力上。它为我们提供了大量的关于矩阵运算的函数及某些特殊矩阵的生成函数,十分方便。其中有单位矩阵生成eyes函数,对角矩阵生成diag函数,行列式求值det函数,矩阵求逆inv函数等。有了这些函数及矩阵,我们可以轻松的解一些方程及线性方程组。MAT

30、LAB中另一强大的功能即是它为我们提供了一套功能强大的绘图命令,这些命令可以根据输入的数据自动完成图形的绘制,为计算过程和结果的可视化提供了极佳的手段。在图形的绘制过程中,我们自己课选择多种类型的绘图,可以完成对图形加标号,加标题或画上网格标线等操作。MATLAB所提供的绘图命令可大致分为四类:二维图形的绘图命令,三维图形的绘图命令,特殊绘图命令,图形管理命令。绘图时,我们应选择我们自己所需要的图形绘制命令。比如,假设我们要绘制某一函数的三维曲线图,则选择plot3命令就可以了,但是如果我们要绘制的是三维曲面图,那么我们则要使用surf或surfc命令。其次,我发现help命令对我们学习Mat

31、lab 中的函数有着很大的帮助,比如说在第3题中,我不明白logical函数有什么用,最开始使用百度搜的,结果只搜到了islogical函数。于是,我想到了Matlab的help选项,就在上面搜索,然后就搜到了,看着英文和举得例子也知道它的用处了。通过这次课程设计,我体会到了Matlab的强大功能,其次就是它在我们专业中的用处也是很大的,比如说在信号处理和自动控制上的应用等等,以后我还得深入学习Matlab,并在以后的专业学习中去应用它。 5 参考文献1.唐向宏,岳恒立,郑雪峰,MATLAB及在电子信息类课程中的应用,电子工业出版社,2006.2.(美)穆尔,高会生,刘童娜,李聪聪,MATLA

32、B实用教程(第二版),电子工业出版社,2010.3.陈杰,MATLAB宝典(第3版),电子工业出版社,2011.4.刘保柱,苏彦华,张宏林.MATLAB 7.0从入门到精通(修订版),人民邮电出版社,2010.5.陈怀琛,吴大正,高西全,MATLAB及在电子信息课程中的应用,电子工业出版社,2006.6.张琨.MATLAB 2010从入门到精通,电子工业出版社,2011.7.MATLAB基础教程/薛山编著,清华大学出版社.2011.38.MATLAB7.0使用教程/张圣勤编著,机械工业出版社.2006.7本科生课程设计成绩评定表姓 名李立性 别男专业、班级电信1005班课程设计题目:MATLAB运算与应用设计5课程设计答辩或质疑记录:成绩评定依据:最终评定成绩(以优、良、中、及格、不及格评定)指导教师签字: 年 月 日

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 初中资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com