




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
matlab课程设计课程设计任务书学生姓名: 刘冬 专业班级: 电信1005班 指导教师:祝立华 阙大顺 工作单位:信息工程学院 题 目: matlab运算与应用设计 初始条件:1. matlab6.5以上版本软件;2. 课程设计辅导资料:“matlab语言基础及使用入门”、“matlab及在电子信息课程中的应用”等;3. 先修课程:信号与系统、数字信号处理、matlab应用实践及信号处理类课程等。要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1. 课程设计时间:1周;2. 课程设计内容:根据指导老师给定的7套题目,按规定选择其中1套完成;3. 本课程设计统一技术要求:研读辅导资料对应章节,对选定的设计题目进行理论分析,针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表),并对实验结果进行分析和总结。具体设计要求包括: 初步了解matlab、熟悉matlab界面、进行简单操作; matlab的数值计算:创建矩阵、矩阵运算、多项式运算、线性方程组、数值统计; 基本绘图函数:plot, plot3, mesh, surf等,要求掌握以上绘图函数的用法、简单图形标注、简单颜色设定等; 使用文本编辑器编辑m文件,函数调用; 能进行简单的信号处理matlab编程; 按要求参加课程设计实验演示和答辩等。4. 课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,具体包括: 目录; 与设计题目相关的理论分析、归纳和总结; 与设计内容相关的原理分析、建模、推导、可行性分析; 程序设计框图、程序代码(含注释)、程序运行结果和图表、实验结果分析和总结; 课程设计的心得体会(至少500字); 参考文献(不少于5篇); 其它必要内容等。指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日目录 1matlab概述.21.1matlab简介 .21.2 matlab的功能 .31.3matlab 的典型应用 .42设计题目:matlab运算与应用设计 套题二 .43设计内容 .53.1 题一 .53.2 题二 .53.3 题三 .73.4 题四 .83.5 题五 .123.6 题六 .133.7题七 .143.8 题八 .153.9 题九 .163.10题十 .174 课程设计心得 .195参考文献 .206 本科生课程设计成绩评定表 .211 matlab概述1.1matlab简介matlab软件由美国math works公司于1984年推出,经过不断的发展和完善,如今己成为覆盖多个学科的国际公认的最优秀的数值计算仿真软件。matlab具备强大的数值计算能力,许多复杂的计算问题只需短短几行代码就可在matlab中实现。作为一个跨平台的软件,matlab已推出unix、windows、linux和mac等十多种操作系统下的版本,大大方便了在不同操作系统平台下的研究工作。matlab软件具有很强的开放性和适应性。在保持内核不变的情况下,matlab可以针对不同的应用学科推出相应的工具箱(toolbox),目前己经推出了图象处理工具箱、信号处理工具箱、小波工具箱、神经网络工具箱以及通信工具箱等多个学科的专用工具箱,极大地方便了不同学科的研究工作。国内已有越来越多的科研和技术人员认识到matlab的强大作用,并在不同的领域内使用matlab来快速实现科研构想和提高工作效率。matlab提供了20类图像处理函数,涵盖了图像处理的包括近期研究成果在内的几乎所有的技术方法,是学习和研究图像处理的人员难得的宝贵资料和加工工具箱。这些函数按其功能可分为:图像显示;图像文件i/o;图像算术运算;几何变换;图像登记;像素值与统计;图像分析;图像增强;线性滤波;线性二元滤波设计;图像去模糊;图像变换;邻域与块处理;灰度与二值图像的形态学运算;结构元素创建与处理;基于边缘的处理;色彩映射表操作;色彩空间变换;图像类型与类型转换。1.2matlab的功能 (1)强大的科学计算机数据处理能力matlab是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如c和c+ 。在计算要求相同的情况下,使用matlab的编程工作量会大大减少。matlab的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。(2)出色的图形处理功能图形处理功能matlab自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的matlab对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),matlab同样表现了出色的处理能力。同时对一些特殊的可视化要求,例如图形对话等,matlab也有相应的功能函数,保证了用户不同层次的要求。另外新版本的matlab还着重在图形用户界面(gui)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。(3)应用广泛的模块集合工具箱matlab对许多专门的领域都开发了功能强大的模块集和工具箱。一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。目前,matlab已经把工具箱延伸到了科学研究和工程应用的诸多领域,诸如数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、lmi控制、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、dsp与通讯、电力系统仿真等,都在工具箱(toolbox)家族中有了自己的一席之地。(4)实用的程序接口和发布平台新版本的matlab可以利用matlab编译器和c/c+数学库以及图形库,将自己的matlab程序自动转换为独立于matlab运行的c和c+的代码。允许用户编写可以和matlab进行交互的c或c+语言程序。另外,matlab网页服务程序还容许在web应用中使用自己的matlab数学和图形程序。matlab的一个重要特色就是具有一套程序扩展系统和一组称之为工具箱的特殊应用子程序。工具箱是matlab函数的子程序库,每一个工具箱都是为某一类学科专业和应用而定制的,主要包括信号处理、控制系统、神经网络、模糊逻辑、小波分析和系统仿真等方面的应用。(5)应用软件开发(包括用户界面)在开发环境中,使用户更方便地控制多个文件和图形窗口;在编程方面支持了函数嵌套,有条件中断等;在图形化方面,有了更强大的图形标注和处理功能,包括对性对起连接注释等;在输入输出方面,可以直接向excel和hdf5进行连接。1.3matlab的典型应用matlab的应用领域十分广阔,典型的应用举例如下:(1) 数据分析(2) 数值与符号计算;(3) 工程与科学绘图;(4) 控制系统设计;(5) 航天工业;(6) 汽车工业;(7) 生物医学工程;(8) 语音处理;(9) 图像与数字信号处理;(10) 财务、金融分析;(11) 建模、仿真及样机开发;(12) 新算法研究开发;(13) 图形用户界面设计。3设计内容3.1 题一1 计算y1=和y2=;分析:这题中我们要用到的时正弦、余弦函数以及求平方根函数。正弦和余弦函数中所有角度需用弧度表示。平方根函数为sqrt(x)。在command window中输入代码得到的程序结果如图3.1-1所示。图3.1-13.2题二2 画出衰减震荡曲线及其他的包络线,t的取值范围是0,6.分析:该题要求我们在给定的范围内画出它们的曲线图。在matlab中常用的二维图形绘制及相关操作如下所示。(1)二维图形绘制plot函数格式:plot(x,y)功能:输入两个数组的情况。绘出以x元素为横坐标,y元素为纵坐标的曲线。另有plot(t,y1,y2,.)命令,其中t是向量,y=y1,y2,是矩阵。y的个数即为曲线的条数。此命令可以在同一张图中绘制多条曲线。(2)subplot函数格式:subplot(m,n,p)功能:将图形窗口分成nm个子图形窗口,并选择第p个窗口作为当前的图形窗口,供绘制函数图形使用。(3)添加图形标题吗命令title格式:title(string)功能:在当前坐标系的顶部加一个文本串string,作为该图形的标题。(4)添加坐标轴标志函数xlabel,ylable,zlable格式:xlabel(text)或ylable(text)或zlable(text)功能:给当前的x轴或y轴或z轴标注文本标注(5)图形标注函数legend格式:legend(string1,string2,string3,)功能:在当前图中添加图例(6)文本注释函数text格式:text(x,y,string)功能:二维图形(x,y)位置处标注文本注释string根据这些函数的作用,我们可以选择subplot函数。程序运行代码如图3.2-1所示,程序运行结果如图3.2-2所示。图3.2-1图3.2-23.3题三3 画出所表示的三维曲面。x,y的取值范围是-9,9。分析:matlab为我们提供了很多绘制三维图形的图形。常用的有mesh函数,plot函数,surf函数。此题中我们应使用surf函数。它的具体功能及用法如下所示。格式一:surf(x,y,z,c)功能:绘制由四个矩阵所指定的带色参数的网状表面图。视角是由view所指定的。轴的刻度决定于x,y,z的范围或当期对轴的设定;颜色范围由c决定,或者使用当前的设定。格式二:surf(x,y,z)功能:将c设为与z相等,则颜色与网的高度成正比。其中plot函数是用来绘制空间曲线,mesh函数是用来绘制三维网线图的。此题的程序代码如图3.2-1所示,程序运行结果如图3.2-2所示。图3.2-1图3.2-23.4题四4 分析下面每条指令的功能并运行,观察执行结果。(1) x=0:0.2:2;y=x.*exp(-x);plot(x,y),xlabel(x), ylabel(y),title(y=x*exp(-x);(2) a=zeros(3,4)a(:)=-4:7l=abs(a)3islogical(l)x=a(l)(3) a=1:5;6:10pow2(a)(4) a=zeros(3,5)a(:)=1:15a=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)该程序的功能是绘制二维曲线y=x.*exp(-x)的图形。其中自变量x的取值范围为0,2,绘图是每隔0.2取一个点。最后绘出的图形图题为y=x*exp(-x),横坐标和纵坐标分别为x和y。程序运行的结果如图3.4-1所示。图3.4-1(2)a=zeros(3,4) 产生一个34的零矩阵;a(:)=-4:7 给矩阵a中的每个元素按列的顺序依次赋值,从-4到7,每次增加1;l=abs(a)3 给矩阵l赋值,判断a的每个元素的绝对值与3的大小关系,若大于3,则给l矩阵中对应元素赋值1,反之赋值0;islogical(l) 判断矩阵l是否为逻辑类型,若是,返回1,反之,返回0;x=a(l) 取出a中绝对值大于3的元素组成一个新的矩阵。程序运行结果如图4.1-3所示。 图3.4-2(3)a=1:5;6:10 创建一个25的矩阵,其值大小从1至10依次递增1;pow2(a) 将矩阵a中的每个值都变为2x,x为矩阵中的每个值。程序运行结果如图4.1-4所示。图3.4-3(4)a=zeros(3,5);a(:)=1:15;a=a*(1+i) 先创建一个35的矩阵,依次赋值1至15,再将a2*(1+i)的值赋给a;a1=a. 将a行列转置后赋给a1; b1=a 将a转置后再取其共轭复数将其赋给b1。程序运行结果如图4.1-5所示。 图3.4-4(5)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。程序的运行结果如图4.1-6所示。图3.4-53.5题五5 计算在x=0.1与10处的值。分析:该题是求多项式在某一点的值。我们知道,在matlab中为我们提供了许多的关于多项式计算的函数。常见的及其作和用法如下所示。(1)多项式的表示n在matlab中,对多项式p(x)= anxn+an-1xn-1+.+ a1x1+a0.用其系数的行向量p=an, an-1,a1,a0,来表示。(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题六6 求函数, n=100的值。开始s=0,i=1i=n?s=s+(1i)2 ,i=i +1 结束分析:由题可得,该数值的就算需要我们编写m文件,利用循环机结构while语句或者for语句,n的值由自己确定,本题中我们取n=100。输出时我们可以使用格式输出函数fprintf。程序流程图如下所示。noyes程序代码如图3.6-1所示。图3.6-1在command window窗口输入qiuhe(100),得到程序运行结果如图3.6-2所示。图3.6-23.7题七7.求1000个元素的随机数向量a中大于0.5的元素个数。分析:首先我们因该利用rand函数产生1000个元素的随机向量,我们可以将其定义为10010的矩阵。统计其中大于0.5的元素个数时,我们可以借助于for循环语句将矩阵中的每一个元素与0.5一一比较而统计个数。若其大于0.5,则n的值加一。最后输出n的值即为我们所需要的结果。m文件程序代码如图3.7-1所示。图3.7-1在command window中输入文件名tongji,得到程序的运行结果如图3.7-2所示。图3.7-23.8题八8.求线性方程组ax=b的根。分析:由ax=b可得,x=a-1*b。所以,我们需要用到求逆函数inv。解题的基本思路为 创建矩阵a创建矩阵b求矩阵a的逆矩阵a-1x=a-1*b程序代码及运行结果如图3.8-1所示。图3.8-13.9题九9.画出y=|1000sin(4x)|+1的y轴为对数图。 分析:matlab为我们提供了多种绘制二维图形的方法,其中还包含对数坐标轴命令semilogx,semilogy,loglog。它们的具体用法及功能如下所示。格式:semilogx()功能:在x轴上采用常用对数来进行标定。该命令的调用格式与plot函数的调用格式相同。其中semilogy是在y轴上采用常用对数来标定,loglog是在x,y轴上分别采用常用对数来进行标定。显然,在这题中我们需要的是semilogy函数。程序代码如图3.9-1所示。图3.9-1程序运行结果如图3.9-2所示。图3.9-23.10题十10用fft直接计算x=sin(2*pi*40*t)+2cos(2*pi*120*t)+w(t)的功率谱。分析:fft的意思为一维快速证傅里叶变换函数,其在matlab中的用法及功能如下所示。格式:x=fft(x,n)功能:采用fft算法计算序列向量x的n点的dft变换,当n为默认是,fft自动按x的长度计算dft。当n为2的整数次幂时,fft按基2算法计算,否则用混合算法。此题我们采用周期图法的傅里叶变换求取信号的功率谱。程序设计代码如图3.10-1所示。图3.10-1该m文件以gonglvpu保存。在command window窗口中输入gonglvpu,得到程序的运行结果如图3.10-2所示。图3.10-2此题中,我选取了两组不同的n值及nfft值。从图中我们可以清晰的观测到两种情况下功率谱的差异。4 课程设计心得我们都知道,matlab的功能十分强大。在做课设之前,我并没有接触过matlab,通过这次学习,让我对matlab有了新的看法,同时也让我获益匪浅。首先,最重要的一点就是要学会使用help命令。其实matlab中的函数实在是太多了,我们根本不可能面面俱到,因此对你不理解的命令,你就help 再加上你的命令,你就可以看到相应的命令信息了。即使英语不怎么好,也没有关系,就主要看看下面的例子,然后跑一下例子,是很容易理解函数定义的。比如我们绘制二维图形时要用到plot函数,但是我们却不知道怎么使用它,这时我们就可以使用help函数来获得相关的帮助了。我们在command window窗口中输入help plot,屏幕将显示它的具体信息。这时我们可以挑选出对我们有用的信息:plot(x,y) plots vector y versus vector x. if x or y is a matrix,then the vector is plotted versus the rows or columns of the matrix,whichever line up. if x is a scalar and y is a vector, length(y).disconnected points are plotted.这样我们就明白plot(x,y)的使用方法及功能了。利用help函数极大的提高了我们学习的速度,同时也在无形中提高了我们阅读英文文献的能力。matlab的强大功能之一在于它对矩阵的操作能力上。它为我们提供了大量的关于矩阵运算的函数及某些特殊矩阵的生成函数,十分方便。其中有单位矩阵生成eyes函数,对角矩阵生成diag函数,行列式求值det函数,矩阵求逆inv函数等。有了这些函数及矩阵,我们可以轻松的解一些方程及线性方程组。matlab中另一强大的功能即是它为我们提供了一套功能强大的绘图命令,这些命令可以根据输入的数据自动完成图形的绘制,为计算过程和结果的可视化提供了极
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年尾矿资源化利用与生态修复技术产业发展报告
- 2025海南省中级档案职称考试(档案基础理论知识)强化训练试题及答案
- 2025年公共文化场馆运营合同变更解除流程规范合同
- 2025年医疗废弃物处置中心建设项目及年度服务人员聘用合同
- 2025年特色农产品保险合同助力乡村振兴战略实施
- 2025年度药品零售企业营销专员劳动合同与业绩奖金制度
- 2025年城市校车租赁服务合同(含车辆维护及事故赔偿细则)
- 2025年度新能源车辆购置合同隐私保护及数据安全协议
- 2025年新能源汽车指标租赁及全险种车辆租赁保险服务合同
- 2025年度集装箱堆场安全监管与应急处理服务合同
- (2025年标准)合作办厂简单协议书
- 2025-2026学年人教版(2024)初中信息科技七年级(全一册)教学计划及进度表(第一学期)
- 2025年公安局招聘警务辅助人员考试笔试试题(含答案)
- 中学物理教学技能课件
- 工厂车间设备维修维护管理手册
- 2025年小学体育教师招聘教材教法考试试题及答案
- 开学食品安全知识培训课件
- 小学学生课外阅读兴趣调查问卷
- 基孔肯雅热防控知识宣讲课件
- 2024年陕西华山旅游集团有限公司招聘真题
- 肥胖儿童的运动干预 4
评论
0/150
提交评论