《matlab运算与应用设计》课程设计说明书-Matlab运算与应用设计.doc
《《matlab运算与应用设计》课程设计说明书-Matlab运算与应用设计.doc》由会员分享,可在线阅读,更多相关《《matlab运算与应用设计》课程设计说明书-Matlab运算与应用设计.doc(19页珍藏版)》请在三一文库上搜索。
1、武汉理工大学matlab运算与应用设计课程设计说明书 课程设计任务书学生姓名: 专业班级: 电信1002 指导教师: 工作单位: 信息工程学院 题 目: Matlab运算与应用设计 初始条件:1.Matlab7.0版本软件;2.课程设计辅导资料:“Matlab语言基础及使用入门”、“Matlab及在电子信息课程中的应用”等;3.先修课程:高等数学、线性代数,电路分析基础、复变函数等。要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书 撰写等具体要求) 1.课程设计时间:一周;2.课程设计内容:从指导老师所给的七套题目中,选择其中的一套来完成;3. .本课程设计统一技术要求:研读
2、辅导资料对应章节,对选定的设计题目进行理论分析,针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表),并对实验结果进行分析总结。具体设计要求包括:初步了解Matlab、熟悉Matlab界面、进行简单操作;MATLAB的数值计算:创建矩阵、矩阵运算、多项式运算、线性方程组、数值统计;基本绘图函数:plot, plot3, mesh, surf等,要求掌握以上绘图函数的用法、简单图形标注、简单颜色设定等;使用文本编辑器编辑m文件,函数调用;能进行简单的信号处理Matlab编程;时间安排:指导教师签名:
3、 年 月 日系主任(或责任教师)签名: 年 月 日目录1. MATLAB简介(1)2.具体题目分析(2)2.1试题1(2)2.2试题2(2)2.3试题3(3)2.4试题4(4)2.5试题5(9)2.6试题6(9)2.7试题7(10)2.8试题8(10)2.9试题9(11)2.10试题10(12)3.课程设计心得(15)4.参考文献(16)5.本科生课程设计成绩评表(15)1. MATLAB软件功能简介MATLAB的名称源自Matrix Laboratory,1984年由美国Mathworks公司推向市场。它是一种科学计算软件,专门以矩阵的形式处理数据。MATLAB将高性能的数值计算和可视化集成
4、在一起,并提供了大量的内置函数,从而被广泛的应用于科学计算、控制系统和信息处理等领域的分析、仿真和设计工作。MATLAB软件包括五大通用功能,数值计算功能(Nemeric)、符号运算功能(Symbolic)、数据可视化功能(Graphic)、数字图形文字统一处理功能(Notebook)和建模仿真可视化功能(Simulink)。其中,符号运算功能的实现是通过请求MAPLE内核计算并将结果返回到MATLAB命令窗口。该软件有三大特点,一是功能强大;二是界面友善、语言自然;三是开放性强。目前,Mathworks公司已推出30多个应用工具箱。MATLAB在线性代数、矩阵分析、数值及优化、数值统计和随机
5、信号分析、电路与系统、系统动力学、图像处理、控制理论分析和系统设计、过程控制、建模和仿真、通信系统以及财政金融等众多领域的理论研究和工程设计中得到了广泛应用。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多,并且math work也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C+ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写
6、了一些经典的程序,用户可以直接进行下载就可以用。MATLAB应用:MATLAB 产品族可以用来进行以下各种工作:数值分析 数值和符号计算 工程与科学绘图 控制系统的设计与仿真 数字图像处理 数字信号处理 通讯系统设计与仿真 财务与金融工程 MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。2.具体题目分析2.1已知t=linspace(0,2*pi,6),求t的正弦和正弦的绝对值。理论分析 这是利用ma
7、tlab处理数值运算的题目。这其中要用到linspace()等函数。程序代码 t=sin(linspace(0,2*pi,6) %求t的正弦值t = %运行结果 Columns 1 through 5 0 0.9511 0.5878 -0.5878 -0.9511 Column 6 -0.0000 t=abs(sin(linspace(0,2*pi,6) %求t的绝对值t =%运行结果 Columns 1 through 5 0 0.9511 0.5878 0.5878 0.9511 Column 6 0.0000总结我们注意到matlab中的pi与真正的有差距,而且数字与因式相乘要使用乘法符
8、号*.通过这个计算,我了解到matlab有处理数据计算的功能。2.2绘制函数在时的曲线。理论分析 利用MATLAB软件绘制曲线图。在这里用到的是funtool命令。熟悉使用funtool命令。程序代码 funtool %调出函数图像框在Figure3框中f= 处填入表达式x*exp(-x) 在x=处填入0,1最后按回车,在Figure1的窗口中出现所需的函数图像。如下图:总结funtool命令是很好使用的命令。他可以很方便的画出所需区域的函数图像。甚至可以很轻松的描绘处函数运算之后以及符合函数的图像。2.3 已知a=1,3,0;2,0,1;4,6,5, a1=logical(1 0 1),a2
9、= logical(1 1 0),b=a1,求a(a1,a2)和a(b)。理论分析这道题目中还是要用到logical()函数,关键是要理解logical函数的功能。程序代码 a=1,3,0;2,0,1;4,6,5; %定义一个矩阵 a1=logical(1 0 1); %返回一组逻辑值 a2= logical(1 1 0);%返回一组逻辑值 b=a1; 执行结果: a(b) %取出矩阵a中大于1的元素ans = 2 4 3 6 5执行结果: a(a1,a2) %求满足条件a(a1,a2)的矩阵ans = 1 3 4 62.4.分析下面每条指令的功能并运行,观察执行结果。分析指令X=0:0.25
10、:3; %产生一组自变量数据Y=X.*exp(-X); %数组的乘法plot(X,Y),xlabel(x), ylabel(y),title(y=x*exp(-x); %将函数视图划并表明x,y轴和标题执行结果:指令分析A=zeros(3,5) %定义一个3*5的全零矩阵A(:)=-4:10 %将元素-4到10按列取出生成3行5列数组L=abs(A)4 %绝对值大于4的值变为1,小于等于4的为0islogical(L) %判断L是不是逻辑数X=A(L) %取出A中大于1的元素组成一个新矩阵执行结果: A(:)=-4:10A = -4 -1 2 5 8 -3 0 3 6 9-2 1 4 7 10
11、 L=abs(A)4 L = 0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 islogical(L) ans = 1 X=A(L) X = 5 6 7 8 9 10指令分析 A=1:5;6:10 %生成一个矩阵 pow2(A) %矩阵相应位子的值变成原来的平方执行结果: A=1:5;6:10A = 1 2 3 4 5 6 7 8 9 10 pow2(A)ans = 2 4 8 16 32 64 128 256 512 1024指令分析A=zeros(3,2) %生成一个3*2的全零矩阵A(:)=1:6 %将1到6分别赋给矩阵的各元素A=A*(1+i) %给A矩阵的元素从新赋值A1
12、=A.; %A的转置矩阵B1=A; %A的共轭转置矩阵执行结果: A=zeros(3,2) A = 0 0 0 0 0 0 A(:)=1:6A = 1 4 2 5 3 6 A=A*(1+i) A = 1.0000 + 1.0000i 4.0000 + 4.0000i 2.0000 + 2.0000i 5.0000 + 5.0000i 3.0000 + 3.0000i 6.0000 + 6.0000i A1=A.; B1=A; A1A1 = 1.0000 + 1.0000i 2.0000 + 2.0000i 3.0000 + 3.0000i 4.0000 + 4.0000i 5.0000 + 5
13、.0000i 6.0000 + 6.0000i B1B1 = 1.0000 - 1.0000i 2.0000 - 2.0000i 3.0000 - 3.0000i 4.0000 - 4.0000i 5.0000 - 5.0000i 6.0000 - 6.0000i 指令分析 A=ones(2,3) %定义一个2*3的全一矩阵 B=ones(2) %定义一个2*2的全一矩阵 C=eye(4) %生成四行四列的单位矩阵 D=diag(C) %生成C的对角矩阵E=repmat(C,1,3) %将C矩阵作为一个元素生成一个1行3列的矩执行结果: A=ones(2,3) A = 1 1 1 1 1 1
14、B=ones(2) B = 1 1 1 1 C=eye(4) C = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 D=diag(C) D = 1 1 1 1 E=repmat(C,1,3)E = 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 12.5.计算在x=0.1与10处的值。理论分析这道题目是运用MATLAB计算多项式。这里运用到的是polyval()命令。通过polyval()命令可以很快的计算出在相应值下的多项式的值。程序代
15、码 a=2 0 0.1 0 0 -10; %列写多项式系数x=0.1; %给x赋值p=polyval(a,x) %求多项式在x处的值p = -9.9999 a=2 0 0.1 0 0 -10; %列写多项式系数x=(-10); %给x赋值p=polyval(a,x) %求多项式在x处的值p = -200110 2.6求函数, n=100的值理论分析在matlab中,有专门计算级数和的函数。这个函数就是symsum()。例如symsum(s,x,a,b)计算表达式s的级数和,其中x为自变量,x省略则默认为对自由变量求和;s为符号表达式;a,b为参数x的取值范围。程序代码 syms n s; %定
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab运算与应用设计 matlab 运算 应用 设计 课程设计 说明书
链接地址:https://www.31doc.com/p-3259355.html