《matlab使用》课件_第1页
《matlab使用》课件_第2页
《matlab使用》课件_第3页
《matlab使用》课件_第4页
《matlab使用》课件_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、matlab使用,李 杨 新技术楼807 Tel:86418052-830 哈尔滨工业大学电子工程系,数字信号处理课程实验(一) Matlab使用入门,matlab使用,学习内容一、概述发展、用途二、基本定义与基础操作三、基本矩阵操作四、MATLAB程序设计五、MATLAB中的数字信号处理,matlab使用,MATLAB语言的发展,始于20世纪70年代设计者的初衷是为解决“线性代数”课程的矩阵运算问题 调用库程序的接口,Fortran编写 1984年成立MathWorksC编写 现已成为国际控制界公认的标准计算软件 在30多个数学类计算软件中,在数值计算上独占鳌头,matlab使用,什么是MA

2、TLAB,一种交互式的以矩阵为基础的系统计算平台,它用于科学和工程的计算与可视化。,matlab使用,优点: MATLAB是一种直译式的高级语言,比其它程序设计语言容易 快速开发 丰富的图形功能和界面开发,MATLAB在美国已经作为大学工科学生必修的计算机语言之一 (C, FORTRAN, ASSEMBLER, MATLAB),matlab使用,MATLAB语言与其它语言的关系仿佛和C语言与汇编语言的关系一样,计算机语言的发展,标志着计算机语言向“智能化”方向发展,被称为第四代编程语言。,matlab使用,应用领域 工业研究与开发 数学教学,特别是线性代数 数值分析和科学计算方面的教学与研究

3、电子学、控制理论和物理学等工程和科学 学科方面的教学与研究 经济学、化学和生物学等计算问题的所有其他领域中的教学与研究,matlab使用,特点:开放式可扩充结构,matlab 所有函数都是开放的 用户可按自己意愿随意更改 正因为此功能,使得matlab的应用越来越广泛,matlab使用,我们做什么?,大量的工具箱需要强大的联机检索帮助系统,matlab使用,matlab联机帮助命令,help 功能提供matlab大部分主题的在线帮助信息 help 显示help 主题一览表 help plotxyz 显示有关三维做图指令帮助信息 help 显示特殊字符与符号帮助信息 help help 显示he

4、lp 的帮助信息,matlab使用,虽然help可以随时提供帮助,但必须知道准确的函数名称。当不能确定函数名称时,help就无能为力了。,Lookfor函数 它可提供通过一般的关键词,搜索出一组与之相关的命令 lookfor fourier 寻找含有傅立叶变换的相关指令:如 FFT Discrete Fourier transform,matlab使用,网络资源,USENET新闻组 MATLAB的新闻组是comp.soft-sys.MATLAB。浏览器指向 网络上的工具箱 ,matlab使用,网络资源(2),BBS 哈尔滨工业大学bbs: telnet:/ 上海交通大学bbs: telnet:

5、/ 清华大学bbs mathtools www服务 Matlab 大观园: http:/www.matlab-,matlab使用,概述桌面,matlab使用,元素间,行间,亦可分行输入,matlab使用,数值和变量,数值十进制表示:1.3e-3 对大小写敏感:如sin,Sin,SIN 变量名首字符必须是英文(无空格、标点,可使用下划线) 总字符64 预定义变量(右表),matlab使用,运算符和表达式,除法:a/b=b/a 幂运算:ab 注:所有运算定义在复数域 方根运算只返回第一象限解 将复数作为整体处理 允许矩阵元素是复数,matlab使用,矩阵、数组运算,转置 矩阵用符号A来表示和实现

6、数组非共轭转置A . 四则运算 矩阵+-*/ 数组点乘A.* 右除: A./ 左除: A. 乘方 A.数组各元素分别自乘 A 矩阵为方阵时自乘,matlab使用,数组乘除(,./,.),ab a,b两数组必须有相同的行和列两数组相应元素相乘。 a=1 2 3;4 5 6;7 8 9; b=2 4 6;1 3 5;7 9 10; a.*b ans = 2 8 18 4 15 30 49 72 90,matlab使用,inv 矩阵求逆 det 行列式的值 eig 矩阵的特征值 diag 对角矩阵 sqrt 矩阵开方,矩阵的其它运算,matlab使用,矩阵的超越函数,matlab使用,关系运算,常用

7、的关系操作符:、=、 = =、 != 用来比较两个大小相同的数组 比较一个数组和一个标量,matlab使用,matlab使用,matlab使用,逻辑运算,常用的逻辑操作符:b=reshape(a,3,4) c=zeros(3,4);c(:)=a(:) 矩阵的变向 rot90:旋转; fliplr:上翻; flipud:下翻 矩阵的抽取 diag:抽取主对角线;tril: 抽取主下三角; triu:抽取主上三角,matlab使用,矩阵查找和排序,子矩阵的查找使用find命令完成,它返回关系表达式为真的下标。例如: a=10:20; find(a15) ans = 7 8 9 10 11 矩阵的排

8、序使用sort函数,它将矩阵按照升序排列。,matlab使用,计算结果的图形表达, x=1:40; y1=sin(pi*x/4); y2=cos(pi*x/8); plot(x,y1,c,x,y2,r),matlab使用,MATLAB的程序设计,一、 matlab的工作模式指令驱动模式 通常matlab以指令驱动模式工作,即matlab命令行方式。 命令行操作时,matlab窗口只允许一次执行一行上的一个或几个语句。,matlab使用,命令行方式程序可读性差,而且不能存储,对于复杂的问题,应编写成能存储的程序文件。 在matlab窗口输入数据和命令进行计算时,当处理复杂问题和大量数据时是不方便

9、的。因此应编辑m文件。,matlab使用,matlab的工作模式 m文件模式 将matlab语句构成的程序存储成以m为扩展名的文件,然后再执行该程序文件,这种工作模式称为程序文件模式。 程序文件不能在指令窗口下建立,因为指令窗口只允许一次执行一行上的一个或几个语句。,matlab使用,二、m文件的创建,m文件的类型是普通的文本文件,我们可以使用系统认可的文本文件编辑器来建立m文件。如dos下的edit,windows的记事本和word等。 具体的创建方法: 在matlab命令窗 口点击file 菜单 new m-file,matlab使用,三、matlab文件的类型,数据文件 .mat mat

10、文件是matlab以标准二进制格式保存的数据文件,可将工作空间中有用的数据变量保存下来。 mat文件的生成和调用是由函数save和load完成的。 例如:load gatlin image(X),matlab使用,2. m文件 m文件的语法类似于c语言,但又有其自身特点。它只是一个简单的ASCII码文本文件,执行程序时逐行解释运行程序,matlab是解释性的编程语言。 m文件有两类独立的m文件 称命令文件 可调用m文件 称函数文件 (1). 命令文件 简单的m文件 命令文件实际上是一串指令的集合,与在命令窗口逐行执行文件中的所有指令,其结果是一样的。没有输入输出参数。,matlab使用,命令文

11、件包括两部分:注释文件和程序文件 %RANKNumber of linearly independent rows or columns. %K = RANK(X) is the number of singular values of X %that are larger than MAX(SIZE(X) * NORM(X) * EPS. %K = RANK(X,tol) is the number of singular values of X that %are larger than tol. %Copyright (c) 1984-94 by The MathWorks, Inc.

12、s = svd(x); if (nargin = 1) tol = max(size(x) * max(s) * eps; end r = sum(s tol);,程序部分,matlab使用,(2).matlab内置函数文件 matlab自定义的函数文件称内置函数文件 调用内置函数的方法:使用函数名并给出相应的入口、出口参数即可。 例如:sin.m函数用type sin查不到。 调用格式:y=sin(2*x) 实际应用中: x=0:2*pi/180:2*pi; y=sin(2*x) plot(x,y),matlab使用,又如 sqrt(x) 求x的平方根 abs(x) 求x的绝对值 det(a

13、) 求行列式的值 等等。matlab拥有大量的内置数学函数,供我们在数值运算和符号运算中调用。 (3). 函数m文件 需要输入变量,返回输出变量 matlab用户可以根据需要编辑自己的m文件,它们可以像库函数一样方便的调用,从而极大地扩展了matlab 的能力。,matlab使用,对于某一类特殊问题,如创建了许多m函数文件,则可形成新的工具箱。 这种用matlab语言创建定义新的matlab函数的功能,正体现了matlab语言强大的扩展功能。,matlab使用,函数m文件的格式: function 返回变量=函数名(输入变量) 注释说明语句段 程序语句段 特定规则: 函数m文件第一行必须以单词

14、function作为引导词,必须遵循如下形式: function =() m文件的文件名必须是 .m。 程序中的变量均为局部变量,不保存在工作空间中。 其变量只在函数运行期间有效。,matlab使用,四、matlab的程序结构,matlab语言的程序结构与其它高级语言是一致的,分为顺序结构,循环结构,分支结构。 (1).顺序结构 依次顺序执行程序的各条语句 (2).循环结构 被重复执行的一组语句,循环是计算机解决问题的主要手段。 循环语句主要有: for end,matlab使用,语法为: for i = 表达式 (表达式为一个向量) 可执行语句 end 例:利用for循环求1!+2!+3!+

15、 +5!的值 sum=0; for i=1:5 pdr=1; for k=1:i pdr=pdr*k; end sum=sum+pdr; end,sum = 153,matlab使用, while end 循环 while循环将循环体中的语句循环执行不定次数。 语法为:while 表达式 循环体语句 end 表达式一般是由逻辑运算和关系运算以及一般运算组成的,以判断循环的进行和停止;只要表达式的值 非0,继续循环;直到表达式值为0,循环停止。,matlab使用,例:用while循环求1100间整数的和 sum=0; i=1; while i=100 sum=sum+i; i=i+1; end sum sum = 5050,matlab使用,(3). 分支结构 根据一定条件来执行的各条语句。 if else end语句有3种形式 if 表达式 执行语句 end if 表达式 是 语句1 else 否 语句2 end,matlab使用, if 表达式1 多分支 语句1 elseif 表达式2 语句2 elseif 表达式3 语句3 else 语句n end,这种结构实现了一种多路选择,比较复杂。可替代一般高级语言中的switch-case-end语句,ma

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论