版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目 录 前言前言第第 1 章章 MATLAB 概述概述 第第 2 章章 MATLAB 基本语法基本语法第第 3 章章 MATLAB 基本绘图基本绘图 第第 4 章章 MATLAB 数值计算数值计算 第第 5 章章 MATLAB 基本程序设计基本程序设计 第第 6 章章 MATLAB 图形用户界面设计图形用户界面设计 第第 7 章章 MATLAB 符号数学工具箱符号数学工具箱第1页/共319页第一页,编辑于星期六:六点 四十六分。前 言 (一)为什么开设本课程(一)为什么开设本课程 由于由于MATLAB的独特优势,开设本课程:的独特优势,开设本课程:2、简单易用的程序语言、简单易用的程序语言 3
2、、强大的科学计算及数据处理能力、强大的科学计算及数据处理能力4、出色的图形处理功能、出色的图形处理功能1、友好的工作平台和编程环境、友好的工作平台和编程环境5、工程师必备的工具、工程师必备的工具第2页/共319页第二页,编辑于星期六:六点 四十六分。前 言 (二)课程特点(二)课程特点 1、是一门计算机语言课、是一门计算机语言课 2、是一门实践性很强的课、是一门实践性很强的课 第3页/共319页第三页,编辑于星期六:六点 四十六分。前 言 (三)课程内容(三)课程内容 1、MATLAB 概述概述 2、MATLAB 基本语法基本语法 4、MATLAB 数值计算数值计算 3、MATLAB 基本绘图
3、基本绘图 5、MATLAB 基本程序设计基本程序设计 7、MATLAB 工具箱(符号数学)工具箱(符号数学) 6、MATLAB 图形用户界面设计图形用户界面设计 第4页/共319页第四页,编辑于星期六:六点 四十六分。前 言 (四四)要求要求 勤学习、勤实践。勤学习、勤实践。 多沟通、共提高。多沟通、共提高。第5页/共319页第五页,编辑于星期六:六点 四十六分。第第 1 1 章章 MATLAB MATLAB概述概述 MATLAB简介 MATLAB的特点 MATLAB的组成 MATLAB的工作环境 MATLAB的通用命令主要内容第6页/共319页第六页,编辑于星期六:六点 四十六分。1.1 M
4、ATLAB简介-发展1970年代中期年代中期 ,Cleve Moler博士开发了博士开发了 : EISPACK(特征值求解的程序库) LINPACK(解线性方程的程序库 ) 1970年代后期年代后期, Cleve Moler编写接口程序编写接口程序 :MATLAB,即即MATrix和和LABoratory前前3个字母的组合,是个字母的组合,是“矩阵实验室矩阵实验室”的缩写,它是的缩写,它是一种以矩阵运算为基础的交互式程序语言。一种以矩阵运算为基础的交互式程序语言。 1983年春年春,Cleve Moler和和John Little用用C语言开发了第二代专语言开发了第二代专业版业版 84年年,两
5、人成立了,两人成立了Mathworks公司公司,正式把正式把MATLAB推向市场。推向市场。 第7页/共319页第七页,编辑于星期六:六点 四十六分。1.1 MATLAB简介-发展1988年年,推出,推出MATLAB3.x版本版本(DOS版版)。 1993年年,推出,推出MATLAB4.0版本版本(Win3.x)。 1997年年,推出,推出MATLAB5.0版版(Windows95)。 1999年年,推出,推出MATLAB5.3版本版本R11(流行较广流行较广)。 2000年年,推出,推出MATLAB6.0版本版本R12 (Win98/Win2000) 2001年年,推出,推出MATLAB6.
6、1 (克服克服6.0不支持不支持P4,Win me,汉字等汉字等)。 2002年年,推出,推出MATLAB6.5R13(速度更快、性能更优越等速度更快、性能更优越等)。2004年年,推出,推出MATLAB7版本版本R142017年年,9月月14日正式日正式推出推出MATLAB R2017b版本版本2006年年,推出,推出MATLAB R2006a、 R2006b版本版本, 每年每年2个版本个版本第8页/共319页第八页,编辑于星期六:六点 四十六分。1.1 MATLAB简介-特点 1、运算功能强大、运算功能强大2、人机界面友好,编程效率高、人机界面友好,编程效率高 3 3、强大而简易的作图功能
7、、强大而简易的作图功能 4 4、强劲的工具箱强劲的工具箱 5 5、动态仿真功能、动态仿真功能 是一个强大的功能演算性草稿纸 难点:函数较多,仅基本部分就有难点:函数较多,仅基本部分就有700700多个。多个。 第9页/共319页第九页,编辑于星期六:六点 四十六分。1.1 MATLAB简介-组成 MATLAB 软件由四部分组成:软件由四部分组成: 1、基本部分(核心)、基本部分(核心): 程序主体和基本函数(约程序主体和基本函数(约700多个)。多个)。 2、专业扩展部分(工具箱)、专业扩展部分(工具箱) :有有30多个工具箱,由大量专业函数组成(上千个函数)。多个工具箱,由大量专业函数组成(
8、上千个函数)。 3、符号数学工具箱、符号数学工具箱 : 基于基于Maple软件的符号数学引擎。软件的符号数学引擎。 4、仿真工具箱(、仿真工具箱(Simulink):): 用于建立系统的数学模型和仿真分析等。用于建立系统的数学模型和仿真分析等。 第10页/共319页第十页,编辑于星期六:六点 四十六分。1.2 MATLAB的工作环境 MATLAB的启动 方法一:点击快捷方式图标 方法二:点击文件matlab.exe MATLAB的退出 在MATLAB的命令窗口输入“exit”命令; 在MATLAB的命令窗口输入“quit”命令; 直接单击MATLAB命令窗口的 按钮。 界面简介第11页/共31
9、9页第十一页,编辑于星期六:六点 四十六分。1.2 MATLAB工作环境-界面 选项卡工具栏当前文件夹命令行窗口当前工作路径工作区第12页/共319页第十二页,编辑于星期六:六点 四十六分。MATLAB提供给用户使用的管理功能的人机界面,在命令窗口中输入MATLAB的命令和数据后按回车键,立即执行运算并显示结果。说明:命令窗口中的“”为命令提示符,表示MATLAB处于准备状态。当在提示符后输入一段程序或一段运算式后【Enter】键,MATLAB会给出计算结果,并再次进入准备状态(所得结果将被保存在工作空间窗口中)。第13页/共319页第十三页,编辑于星期六:六点 四十六分。在命令窗口内执行的M
10、ATLAB主要操作有:运行函数和输入变量;控制输入和输出;执行程序,包括M文件和外部程序。命令窗口中可直接运行MATLAB 函数,而这些函数往往又和MATLAB命令直接联系。MATLAB在命令窗口中的语句形式为:变量表达式;第14页/共319页第十四页,编辑于星期六:六点 四十六分。运行函数和键入变量 在命令窗口的提示符“”下 ,可以直接输入变量。例:计算A=256/41002128 A=256/4-100*2+128 %从键盘输入,并单击回车键 A = %屏幕显示的结果 -8 MATLAB语法规定,百分号“%”后面的语句为注释语句。 第15页/共319页第十五页,编辑于星期六:六点 四十六分
11、。例 在命令窗口中输入不同的命令和数值,并查看其显示方式。 a=0.5a = 0.5000 b=sinb =sin if a1 c=true%如果a a=sin(60*pi/180)a = 0.8660 format long aa = 0.86602540378444 format short e aa = 8.6603e-001程序分析:long格式为15位数字显示,short e为5位科学计数显示。第29页/共319页第二十九页,编辑于星期六:六点 四十六分。常见标点符号的作用 半角逗号“ , ” 和半角分号“; ”都可以用来分隔MATLAB的指令(函数)或变量。 MATLAB允许一行内
12、出现多条指令。 MATLAB的指令(函数)后使用半角分号“;” ,它的作用是用来避免在命令窗口显示程序运行的中间结果 。 注:可以使用shift+Enter(或shift+Return),表示要输入多行命令后再运行,待最后一行命令输入完毕,再回车,MATLAB才开始运行上述诸条命令。第30页/共319页第三十页,编辑于星期六:六点 四十六分。常见标点符号的作用 对于较长的命令行,可用符号“”来表示换行继续写入 。 冒号(一个重要的操作符)的作用: 用于生成默认间隔为1的等间隔向量; 用于选出矩阵指定行、列及元素; 用于循环语句。第31页/共319页第三十一页,编辑于星期六:六点 四十六分。指令
13、行中的标点符号名名 称称标标 点点作作 用用空格空格(为机器辨认)用作输入量与输入量之间的分隔符(为机器辨认)用作输入量与输入量之间的分隔符逗号逗号,用作要显示计算结果的指令与其后指令的分隔;用作输入量与输入量之间的用作要显示计算结果的指令与其后指令的分隔;用作输入量与输入量之间的分隔符;用作数组元素分隔符号分隔符;用作数组元素分隔符号黑点黑点.用作数值表示中的小数点用作数值表示中的小数点分号分号;用作不显示计算结果指令的用作不显示计算结果指令的“结尾结尾”标志;用作不显示计算结果指令与其后标志;用作不显示计算结果指令与其后指令的分隔;用作数组的行间分隔符;指令的分隔;用作数组的行间分隔符;冒
14、号冒号:用以生成一维数组;用作单下标援引时,表示全部元素构成的长列;用作多用以生成一维数组;用作单下标援引时,表示全部元素构成的长列;用作多下标援引时,表示那维上的全部下标援引时,表示那维上的全部注释号注释号%由它由它“启首启首”后的所有物理行部分被看作非执行的注释后的所有物理行部分被看作非执行的注释单引号对单引号对 字符串记述符字符串记述符圆括号圆括号( )在数组援引时用;函数指令输入宗量列表时用在数组援引时用;函数指令输入宗量列表时用方括号方括号 输入数组时用;函数指令输出宗量列表时用输入数组时用;函数指令输出宗量列表时用花括号花括号 元胞数组记述符元胞数组记述符下连符下连符_(为使人易读
15、)用作一个变量、函数或文件名中的连字符(为使人易读)用作一个变量、函数或文件名中的连字符续行号续行号由三个以上连续黑点构成。它把其下的物理行看作该行的由三个以上连续黑点构成。它把其下的物理行看作该行的“逻辑逻辑”继续,以继续,以构成一个构成一个“较长较长”的完整指令的完整指令“At”号号放在函数名前,形成函数句柄;放在目录名前,形成用户对象类目录放在函数名前,形成函数句柄;放在目录名前,形成用户对象类目录说明说明为保证指令正确执行,以上符号一定要在英文状态下输入。为保证指令正确执行,以上符号一定要在英文状态下输入。第32页/共319页第三十二页,编辑于星期六:六点 四十六分。例: a=10*2
16、;b=a+5,c=a*b;d=c+a, A=1 2 3;4 5 6;7 8 9 B=1,2 34,5,67 8 9 C=1;2;3第33页/共319页第三十三页,编辑于星期六:六点 四十六分。命令窗口中指令行的编辑 为方便操作,MATLAB允许用户对已经输入的指令进行回调、编辑和重运行。键键 名名作作 用用前寻式调回已输入过的指令行前寻式调回已输入过的指令行后寻式调回已输入过的指令行后寻式调回已输入过的指令行在当前行中左移光标在当前行中左移光标在当前行中右移光标在当前行中右移光标PageUp前寻式翻阅当前窗中的内容前寻式翻阅当前窗中的内容PageDown后寻式翻阅当前窗中的内容后寻式翻阅当前窗
17、中的内容Home使光标移到当前行的首端使光标移到当前行的首端End使光标移到当前行的尾端使光标移到当前行的尾端Delete删去光标右边的字符删去光标右边的字符Backspace删去光标左边的字符删去光标左边的字符Esc清除当前行的全部内容清除当前行的全部内容第34页/共319页第三十四页,编辑于星期六:六点 四十六分。命令窗口的常用控制指令指指 令令含含 义义cd设置当前工作目录设置当前工作目录clf清除图形窗清除图形窗clc清除指令窗中显示内容清除指令窗中显示内容clear清除清除MATLAB工作空间中保存的变量和函数工作空间中保存的变量和函数dir列出指定目录下的文件和子目录清单列出指定目
18、录下的文件和子目录清单edit打开打开M文件编辑器,编辑程序文件编辑器,编辑程序exit关闭关闭/退出退出MATLABquit关闭关闭/退出退出MATLABmd创建目录创建目录more使其后的显示内容分页进行使其后的显示内容分页进行type显示指定显示指定M文件的内容文件的内容which指出其后文件所在的目录指出其后文件所在的目录!运行外部程序,如运行外部程序,如!dir ;!calc(计算器)(计算器) 第35页/共319页第三十五页,编辑于星期六:六点 四十六分。1.4 MATLAB 7.3 的其他管理 MATLAB文件格式 设置搜索路径 用户自己书写的函数有可能并没有保存在搜索路径下。要
19、解决这个问题,只需把程序所在的目录扩展成MATLAB的搜索路径即可。 第36页/共319页第三十六页,编辑于星期六:六点 四十六分。MATLAB文件格式 程序文件 程序文件即M文件(M-File),其文件的扩展名为.m。 图形文件 图形文件(Figure)的扩展名为.fig。 模型文件 模型文件(Model)扩展名为.mdl,可以在“File”菜单中创建Model时生成.mdl文件。 数据文件 数据文件即MAT文件,其文件的扩展名为.mat。第37页/共319页第三十七页,编辑于星期六:六点 四十六分。MATLAB文件格式 可执行文件 可执行文件即MEX文件,其文件的扩展名为.mex。 项目文
20、件 项目文件的扩展名为.prj。 P码文件 P码文件即伪代码文件,是M文件被调用后在内存中生成的内部伪代码。第38页/共319页第三十八页,编辑于星期六:六点 四十六分。设置搜索路径 在MATLAB内存中进行检查,检查“sin”和“x”是否为工作空间的变量或特殊变量; 检查“sin”和“x”是否为MATLAB的内部函数; 在当前目录上,检查是否有相应的“.m”或“.mex”文件存在; 在MATLAB搜索路径的所有其他目录中,依次检查是否有相应的“.m”或 “.mex”的文件存在; 如果都不是,则MATLAB发出错误信息。1. MATLAB的基本搜索过程第39页/共319页第三十九页,编辑于星期
21、六:六点 四十六分。2. 设置搜索路径窗口(Set Path) 打开设置搜索路径窗口的方法:在MATLAB在“主页”选项卡选择“设置路径”;在命令窗口中运行“pathtool”或“editpath”命令。设置路径添加保存第40页/共319页第四十页,编辑于星期六:六点 四十六分。3. 设置搜索路径的常用命令 path命令 path(path, 新目录) addpath命令 addpath 目录1 目录2 参数例 使用命令设置搜索路径addpath c:TEMP -begin path (path,c:TEMP) p=path附:在命令窗口中输入path或genpath可得到MATLAB的所有搜
22、索路径,第41页/共319页第四十一页,编辑于星期六:六点 四十六分。1.5 MATLAB的帮助系统 1使用帮助浏览器 2使用帮助命令 3联机演示第42页/共319页第四十二页,编辑于星期六:六点 四十六分。使用帮助浏览器 帮助主题(Contents)、索引(Index) 、搜索(Search)和演示(Demos)四个面板来查找帮助信息: Contents面板为可展开的树形结构,向用户提供全方位系统帮助的向导图; Index面板是MATLAB提供的术语索引表,可以查找命令、函数和专用术语等。 Search面板是通过关键词来查找全文中与之匹配的章节条目,Index只在专用术语表中查找而Searc
23、h的搜索是在整个HTML文件中进行的,因此其覆盖面更宽。 Demos面板为MATLAB提供了Demo演示。第43页/共319页第四十三页,编辑于星期六:六点 四十六分。第44页/共319页第四十四页,编辑于星期六:六点 四十六分。使用帮助命令1、help (帮助)(帮助)help (显示已安装的函数库和工具箱(显示已安装的函数库和工具箱 )help 子目录名子目录名/库名库名/工具箱工具箱 如:如:help general or elfun显示基本函数信息 help comm help 函数名函数名显示具体函数的帮助信息 如:如:help sin 注意:命令窗口显示的MATLAB帮助信息中,是
24、用大写字母来突出函数名的,但在使用这些函数时,应该用小写字母。第45页/共319页第四十五页,编辑于星期六:六点 四十六分。使用帮助命令 lookfor 关键字 (查找) lookfor命令是在所有的帮助条目中搜索关键字,常用来查找具有某种功能而不知道准确名字的命令。 如:lookfor sound 打开帮助窗口命令: helpwin:打开帮助窗口 helpdesk:打开帮助桌面 demo:打开演示窗口第46页/共319页第四十六页,编辑于星期六:六点 四十六分。内容回顾内容回顾1、介绍了本课程的特点内容和安排2、MATLAB的发展、特点和组成3、MATLAB操作界面4、MATLAB的搜索路径
25、扩展5、MATLAB的帮助系统第47页/共319页第四十七页,编辑于星期六:六点 四十六分。第第 2 2 章章 MATLAB MATLAB基本语法基本语法 变量矩阵的赋值矩阵的初等运算 矩阵的基本运算函数 矩阵的逻辑运算 主要内容第48页/共319页第四十八页,编辑于星期六:六点 四十六分。2.1 变量 1 1、标识符:标识符:表示变量名表示变量名,常量名常量名,函数名和文件名的字符串函数名和文件名的字符串 (1)由)由字母、数字、下划线字母、数字、下划线等符号组成,等符号组成,第第一个字母必须是英文字母一个字母必须是英文字母 。(2)变量和常量最长不要超过)变量和常量最长不要超过63个字符,
26、多余个字符,多余截取。截取。可用可用“namelengthmax”查看查看. (3)变量名)变量名大小写敏感大小写敏感。第49页/共319页第四十九页,编辑于星期六:六点 四十六分。2.1 变量 (5)MATLAB中的特殊变量名,应避免使用。中的特殊变量名,应避免使用。 例如:例如: ans -默认临时变量默认临时变量 pi - eps -计算机中的最小数计算机中的最小数 inf -无穷大无穷大 NaN-非数或不定数(如:非数或不定数(如:0/0) i或或j -虚数单位虚数单位第50页/共319页第五十页,编辑于星期六:六点 四十六分。2.1 变量 2 2、变量类型变量类型 :(1)数值:)数
27、值:内部只有一种类型为双精度(内部只有一种类型为双精度(8个字节,个字节,64位),位), 实数为实数为1个双精度数,复数为两个双精度数。个双精度数,复数为两个双精度数。 但输出显示格式有但输出显示格式有8种。种。 可用可用format命令来改变显示格式。命令来改变显示格式。 例如:例如: format short 显示显示5位数位数 (pi: 3.1416) format bank 显示货币格式显示货币格式(pi: 3.14)第51页/共319页第五十一页,编辑于星期六:六点 四十六分。2.1 变量 数字显示的8种格式Matlab命令命令显示形式显示形式说说 明明format long3.1
28、4159265358979316位十进制位十进制format short e3.1416e+0005位十进制数加指数位十进制数加指数format long e3.141592653589793e+00016位十进制数加指数位十进制数加指数format hex400921fb54442d1816位十六进制位十六进制format bank3.14两位小数两位小数format +正、负或零正、负或零format rat355/113分数近似分数近似format short(默认默认)3.14159二位整数,四二位整数,四位小数位小数第52页/共319页第五十二页,编辑于星期六:六点 四十六分。2.1
29、 变量 2 2、变量类型变量类型 :(2)字符)字符(串串):用单引号表示。:用单引号表示。 如:如:a=abc 实际上是一个单个字符的实际上是一个单个字符的ASCII码组成的行向量。码组成的行向量。第53页/共319页第五十三页,编辑于星期六:六点 四十六分。2.1 变量 3、矩阵、矩阵 MATLAB中的变量或常量都代表一个矩阵,中的变量或常量都代表一个矩阵, 所有的变量运算其实都是矩阵运算。所有的变量运算其实都是矩阵运算。 单个值实际上是单个值实际上是1*1阶矩阵。阶矩阵。 矩阵元素可以是数值矩阵元素可以是数值(实数或复数实数或复数)或字符串。或字符串。 一个由矩阵表示的变量可以是一个数、
30、一组一个由矩阵表示的变量可以是一个数、一组数、一个文件(如语音)、一幅图象等。数、一个文件(如语音)、一幅图象等。 第54页/共319页第五十四页,编辑于星期六:六点 四十六分。2.1 变量 3、矩阵、矩阵 矩阵(矩阵(Matrix)与数组)与数组(Array)的关系的关系 : 矩阵运算有着严格理论矩阵运算有着严格理论 数组运算一般指元素运算数组运算一般指元素运算第55页/共319页第五十五页,编辑于星期六:六点 四十六分。2.1 变量 4 4、变量的查看:变量的查看: who/whos5、变量的保存和恢复:、变量的保存和恢复: save 文件名文件名 (缺省后缀为(缺省后缀为.mat)例如:
31、例如:save myvarload 文件名文件名 例如:例如:load myvar第56页/共319页第五十六页,编辑于星期六:六点 四十六分。2.2 矩阵的赋值 1 1、矩阵的直接赋值矩阵的直接赋值 (1)基本赋值)基本赋值 1)使用)使用 2)同一行元素用空格或)同一行元素用空格或,隔开隔开 3)不同行用)不同行用;隔开隔开 例如:例如:a=1 2 3;4 5 6 (2)复数的赋值:)复数的赋值: 例如例如:z=1+2i或或1+2j z=1+2i 3+4i z=1 3+2 4*i 第57页/共319页第五十七页,编辑于星期六:六点 四十六分。2.2 矩阵的赋值 注意:注意: 赋值结尾为赋值
32、结尾为“;” 则不显示结果。则不显示结果。 一行不够时,可用一行不够时,可用“”换行。换行。 矩阵的阶数也可通过下列函数获得:矩阵的阶数也可通过下列函数获得: 对于一维,对于一维,m=length(a) 为矩阵为矩阵a的长度。的长度。 例如:例如: a=1 2 3 length(a)为为3第58页/共319页第五十八页,编辑于星期六:六点 四十六分。2.2 矩阵的赋值 注意:注意: 矩阵的阶数也可通过下列函数获得:矩阵的阶数也可通过下列函数获得: 对于二维,对于二维,m,n=size(a), m为行数,为行数,n为列数为列数 例如:例如: a=1 2 3; 4 5 6 size(a)为为2 3
33、第59页/共319页第五十九页,编辑于星期六:六点 四十六分。2.2 矩阵的赋值 2 2、矩阵元素的赋值矩阵元素的赋值 (1)元素用)元素用(m,n)的形式表示第的形式表示第m行行n列的元素值,列的元素值,可直接引用和赋值。可直接引用和赋值。 例如,例如,a(2,1)=4, 若将其改为若将其改为9, 则可用则可用a(2,1)=9。注意:如果元素下标超出原矩阵的维数,矩阵将注意:如果元素下标超出原矩阵的维数,矩阵将自动扩大,多出的元素自动为自动扩大,多出的元素自动为0 。 第60页/共319页第六十页,编辑于星期六:六点 四十六分。2.2 矩阵的赋值 2 2、矩阵元素的赋值矩阵元素的赋值 (2)
34、 给全行或全列赋值给全行或全列赋值 : 用用“:”代替行或列。代替行或列。 如:如:a(4 , :)=11 12 13 14 b(: , 5)=5; 8; 10; 12 注意:行数或列数必须与原矩阵相同。注意:行数或列数必须与原矩阵相同。 第61页/共319页第六十一页,编辑于星期六:六点 四十六分。2.2 矩阵的赋值 3、矩阵的变换、矩阵的变换 (1)抽取:由原矩阵中的部分元素)抽取:由原矩阵中的部分元素 构成新矩阵。构成新矩阵。 如:如:b=a(2,4,1,3) 表示第表示第2,4行与第行与第1、3列交叉元列交叉元素组成新矩阵。素组成新矩阵。 第62页/共319页第六十二页,编辑于星期六:
35、六点 四十六分。2.2 矩阵的赋值 3、矩阵的变换、矩阵的变换 (2)抽去:使用空矩阵)抽去:使用空矩阵(无元素),将矩阵整(无元素),将矩阵整行行/列删除。列删除。 如:如:a(2,4,:)= 将将2、4行删除行删除 a(:,2)= 将第将第2列删除列删除第63页/共319页第六十三页,编辑于星期六:六点 四十六分。2.2 矩阵的赋值 3、矩阵的变换、矩阵的变换 (3) 组合:由多个矩阵组成一个新矩阵,但行组合:由多个矩阵组成一个新矩阵,但行列应正好。列应正好。 如:如:a=1 2 3;4 5 6; b=7 8 9;10 11 12; c=a b; d=a;b; (4)转置:)转置:b=a
36、(行变列)(行变列) 例如:例如:a=1 2 3;4 5 6 ,则,则 a=1 4;2 5;3 6第64页/共319页第六十四页,编辑于星期六:六点 四十六分。2.2 矩阵的赋值 (5) 排列:排列:b=a(:) 将所有列排成一列。将所有列排成一列。 例如:例如:a=1 2 3;4 5 6; a(:)=1;4;2;5;3;6; 若先转置再排列,即实现按行排列。若先转置再排列,即实现按行排列。 (6) 变换函数:变换函数: fliplr(a) (矩阵左右翻转矩阵左右翻转) (flip翻翻left right) flipud(a) (矩阵上下翻转矩阵上下翻转) 3、矩阵的变换、矩阵的变换 第65页
37、/共319页第六十五页,编辑于星期六:六点 四十六分。2.2 矩阵的赋值 4、间隔赋值(适合批量数据)、间隔赋值(适合批量数据) (1) 变量变量=(first:increment:last)形式)形式 如:如:t=(0:0.1:1) 则则 t=0,0.1,0.2,1 (2) 线性间隔函数线性间隔函数 linspace(first,last,num) 从从first开始到开始到last结束共结束共num个元素,个元素, 间隔为(间隔为(last-first)/(num-1) 如:如:t= linspace (0,1,11),t=0,0.1,1 第66页/共319页第六十六页,编辑于星期六:六点
38、 四十六分。2.2 矩阵的赋值 4、间隔赋值(适合批量数据)、间隔赋值(适合批量数据) (3)对数间隔函数)对数间隔函数 logspace(first,last,num) 从从10first开始到开始到10last结束共结束共num个元素个元素 如:如:t= logspace (0,1,11),t=100,100.1,101 第67页/共319页第六十七页,编辑于星期六:六点 四十六分。2.2 矩阵的赋值 5、基本矩阵、基本矩阵 (1)空阵:)空阵: (当操作无结果时,返回空阵当操作无结果时,返回空阵) (2)全)全0矩阵:矩阵:zeros(m,n) 例如:例如:zeros(2,3)=0 0
39、0;0 0 0(3)全)全1矩阵:矩阵:ones(m,n) (4)单位矩阵:)单位矩阵:eye(n) (对角线为对角线为1的方阵的方阵) (4)随机矩阵:)随机矩阵:rand(m,n) 第68页/共319页第六十八页,编辑于星期六:六点 四十六分。2.2 矩阵的赋值 6、文件赋值、文件赋值 (1) 波形文件(波形文件(.wav):即音频文件):即音频文件 读波形文件读波形文件 :a=wavread(文件名文件名), 如:如:a=wavread(morse.wav) 写波形文件:写波形文件:wavwrite(a, 文件名文件名) 波形文件播放:用波形文件播放:用wavplay或或sound, 如
40、:如:wavplay(a); 第69页/共319页第六十九页,编辑于星期六:六点 四十六分。2.2 矩阵的赋值 6、文件赋值、文件赋值 (2) 图象文件(图象文件(.BMP/JPG 等)等) 读图象文件:读图象文件:a=imread(文件名文件名), 如:如:b=imread(sz.jpg) 写图象文件:写图象文件:imwrite(b,文件名文件名) 显示图象文件:显示图象文件:image(a) 第70页/共319页第七十页,编辑于星期六:六点 四十六分。2.3 矩阵的初等运算 1、加减法:、加减法: 矩阵的加减就是对应元素的加减矩阵的加减就是对应元素的加减 。如:如:a=1 2 3;b=4
41、5 6,则则a+b=5 7 8 , 如果矩阵与一常数(标量)相加减,如果矩阵与一常数(标量)相加减,则把该常数看成是同阶的矩阵。则把该常数看成是同阶的矩阵。例如:例如:a+5=6 7 8 第71页/共319页第七十一页,编辑于星期六:六点 四十六分。2.3 矩阵的初等运算 2、乘法、乘法 (1)矩阵相乘:)矩阵相乘:mp阶矩阵阶矩阵A与与pn阶矩阵阶矩阵B的乘积是一个的乘积是一个m*n阶矩阵。阶矩阵。例如:例如: a=1 2 3;b=4 5 6 则:则:a*b=20. (2)矩阵与常数相乘等于每个元素乘以该常数,)矩阵与常数相乘等于每个元素乘以该常数,例:例:2*a。 第72页/共319页第七
42、十二页,编辑于星期六:六点 四十六分。2.3 矩阵的初等运算 2、乘法、乘法 (3)矩阵元素相乘(数组相乘):使用)矩阵元素相乘(数组相乘):使用“.*” 相乘的两个矩阵阶数应相同相乘的两个矩阵阶数应相同 。例如:例如:a=1 2 3;b=4 5 6 则:则:a.*b=4 10 18 第73页/共319页第七十三页,编辑于星期六:六点 四十六分。2.3 矩阵的初等运算 3、除法、除法 (1)矩阵的除法)矩阵的除法 右除,右除,“/” :A/B=A*B-1 (B的逆矩阵的逆矩阵inv(B), B必须是方阵必须是方阵,A与与B列应相等。列应相等。左除,左除,“” :AB=A-1*B , A必须是方
43、阵,必须是方阵,A与与B行应相等。行应相等。 (2)矩阵除以常数,等于每个元素除以常数,)矩阵除以常数,等于每个元素除以常数,使用普通除法使用普通除法/ 。第74页/共319页第七十四页,编辑于星期六:六点 四十六分。2.3 矩阵的初等运算 3、除法、除法 (3)矩阵元素的除法)矩阵元素的除法(数组相除数组相除):“./” :A./B为为A各元素除以各元素除以B中各元素。中各元素。“.” :A.B=B./A 第75页/共319页第七十五页,编辑于星期六:六点 四十六分。2.3 矩阵的初等运算 4、乘方、乘方 (1)矩阵乘方)矩阵乘方 :(乘方是乘法的扩充,为保证合:(乘方是乘法的扩充,为保证合
44、法性,要求矩阵为方阵)法性,要求矩阵为方阵) A标量标量 :例:例 A2,A0.2 (2)元素的乘方:)元素的乘方: a) A.标量标量 : 例例 A=1 2 ,A.2=1 4 第76页/共319页第七十六页,编辑于星期六:六点 四十六分。2.3 矩阵的初等运算 4、乘方、乘方 b) 标量标量.A :例:例 3.A =3 9 c) A.B :A、B同阶同阶 例例 A=1 2 ,B=3 4 ,则,则A.B=1 16第77页/共319页第七十七页,编辑于星期六:六点 四十六分。2. 4 矩阵的基本运算函数 1、矩阵的运算函数、矩阵的运算函数 (见附录(见附录A) 指数函数指数函数 :expm( )
45、 %变量必须是方阵变量必须是方阵 对数函数对数函数 :logm( ) %变量必须是方阵变量必须是方阵 开方函数开方函数 :sqrtm( ) %变量必须是方阵变量必须是方阵 三角函数(三角函数(25个):例如:个):例如:t=1 2 3,y=sin(t) 指数指数/对数函数(对数函数(7个):个): 例如:例如:exp( ) 复数函数(复数函数(8个):例如:个):例如:abs( ) 取模取模 取整函数(取整函数(7个):例:个):例:round( ) 四舍五入四舍五入 第78页/共319页第七十八页,编辑于星期六:六点 四十六分。2. 4 矩阵的基本运算函数 2、矩阵元素的运算、矩阵元素的运算
46、 (基本函数库(基本函数库elfun) 1、关系运算:、关系运算: 共共6种种 : (大于)(大于) (小于)(小于) = (大于等于)(大于等于)= (小于等于)(小于等于) = = (等于)(等于) = (不等于)(不等于)比较是在元素间进行的。比较是在元素间进行的。 矩阵必须同阶矩阵必须同阶 比较结果仍为矩阵比较结果仍为矩阵,且元素值为且元素值为0(假假) 或或1(真真) 例如:例如:a=1 2,b=2 1, 则则ab 结果为结果为0 1,a=b 结结果为果为0 0 第79页/共319页第七十九页,编辑于星期六:六点 四十六分。2. 5 矩阵的逻辑运算 2、逻辑运算、逻辑运算 : 共有四
47、种运算符号:共有四种运算符号: & (与与)、|(或或)、 (非非)、xor(异或)(异或) 矩阵元素值必须为逻辑值(矩阵元素值必须为逻辑值(0、1) 运算是在元素间进行的。运算是在元素间进行的。比较结果仍为矩阵比较结果仍为矩阵 例如:例如:a=1 0,b=0 1,则,则:a&b =0 0 xor(a,b) =1 1第80页/共319页第八十页,编辑于星期六:六点 四十六分。2. 5 矩阵的逻辑运算 3、逻辑函数:、逻辑函数: (运算符库(运算符库ops ) 例如:例如: exist(a) -检查变量是否有定义,检查变量是否有定义, 返回返回1表示有表示有0表示无表示无 all
48、(a)-检查矩阵中元素是否全为非检查矩阵中元素是否全为非0, 1是是0否否 第81页/共319页第八十一页,编辑于星期六:六点 四十六分。内容回顾内容回顾MATLAB基本语法: 1、变量 2、矩阵的赋值 3、矩阵的初等运算 4、矩阵的基本运算函数 5、矩阵的逻辑运算第82页/共319页第八十二页,编辑于星期六:六点 四十六分。第第 3 3 章章 MATLAB MATLAB基本绘图基本绘图)基本二维绘图 特殊二维绘图基本三维绘图 特殊三维绘图 主要内容第83页/共319页第八十三页,编辑于星期六:六点 四十六分。3.1 3.1 基本二维绘图基本二维绘图 MATLAB提供了丰富的绘图函数和绘图工具
49、,一般需要5个步骤。1.曲线数据准备2.指定图形窗口和子图位置 可使用Figure命令指定图形窗口,默认时打开Figure 1窗口,或使用subplot 命令指定当前子图。3.调入绘图命令绘制图形4.设置坐标轴的图形注释5.按指定格式保存或导出图形第84页/共319页第八十四页,编辑于星期六:六点 四十六分。3.1 3.1 基本二维绘图基本二维绘图 一、一、plot-基本二维绘图函数基本二维绘图函数 1、格式、格式1: plot(y) 功能:功能:y是一向量,是一向量, 以以y中元素的下标为横坐标,中元素的下标为横坐标, 元素值作为纵坐标,各点以直线相连。元素值作为纵坐标,各点以直线相连。例如
50、:例如:y=1 2 3 2 1; plot(y) 第85页/共319页第八十五页,编辑于星期六:六点 四十六分。3.1 3.1 基本二维绘图基本二维绘图 如果格式如果格式1中的中的y为复数矩阵,为复数矩阵, 则相当于则相当于plot(real(y),imag(y)。 如果如果y为多行或多列矩阵,则绘制多条曲线。为多行或多列矩阵,则绘制多条曲线。例如:例如:y2=sin(2*pi*t) ;cos(2*pi*t);plot(t,y2); 2、格式、格式2: plot(x,y) 功能:功能:x,y具有相同的长度,绘图时以具有相同的长度,绘图时以x元素值为元素值为横坐标,横坐标,y元素值作为纵坐标,各
51、点以直线相连。元素值作为纵坐标,各点以直线相连。 例如:例如:t=(0:0.05:1);y=sin(2*pi*t); plot(t,y); 第86页/共319页第八十六页,编辑于星期六:六点 四十六分。3.1 3.1 基本二维绘图基本二维绘图 3、格式、格式3: plot(x1, y1,x2,y2,) 功能:相当于,功能:相当于,plot(x1,y1),plot(x2,y2),绘制多绘制多条曲线在一个图中。条曲线在一个图中。例如:例如:t1=(0.5:0.05:1.5); y1=2*sin(2*pi*2*t1); plot(t,y,t1,y1); 第87页/共319页第八十七页,编辑于星期六:
52、六点 四十六分。3.1 3.1 基本二维绘图基本二维绘图 4、格式、格式4: plot(y,s) plot(x,y,s) plot(x1,y1,s1,x2,y2,s2) s为一格式字符串为一格式字符串,用于设置绘图颜色用于设置绘图颜色、线型线型、点、点 例 如 ;例 如 ; p l o t ( t , y , * b ) ; p l o t ( t , y,xr,t1,y1,:k) 第88页/共319页第八十八页,编辑于星期六:六点 四十六分。3.1 3.1 基本二维绘图基本二维绘图 二、二、plotyy- 双坐标绘图双坐标绘图 格式:格式:plotyy(x1,y1,x2,y2) 功能:将功能
53、:将y1的坐标标在左边,的坐标标在左边,y2标在右边,标在右边, x1,x2 共用横坐标。共用横坐标。例如:例如:plotyy(t,y,t1,y1) 第89页/共319页第八十九页,编辑于星期六:六点 四十六分。3.1 3.1 基本二维绘图基本二维绘图 三、三、loglog / semilogx /semilogy-对数坐标绘图对数坐标绘图 功能:与功能:与plot用法相同,区别为坐标轴为对数用法相同,区别为坐标轴为对数 loglog( ):X-Y轴均为对数轴均为对数 semilogx( ):X轴为对数(半对数)轴为对数(半对数) semilogy( ):Y轴为对数(半对数)轴为对数(半对数)
54、 例如:例如:yl= (1:1:100);semilogy(yl); 第90页/共319页第九十页,编辑于星期六:六点 四十六分。3.1 3.1 基本二维绘图基本二维绘图 四、四、polar-极坐标极坐标 格式:格式:polar(,r) 功能:以功能:以为角度,为角度,r为半径绘图。为半径绘图。 例:例:x=(0:pi/100:2*pi); yp=abs(sin(x); polar(x,yp) 第91页/共319页第九十一页,编辑于星期六:六点 四十六分。3.1 3.1 基本二维绘图基本二维绘图 五、多曲线绘图控制五、多曲线绘图控制 1、图形保持、图形保持 格式:格式:hold on(off)
55、功能:用于保持当前绘图,以便在同一坐标上功能:用于保持当前绘图,以便在同一坐标上再绘制另外图形再绘制另外图形 。例如:例如:plot(t,y); hold on; plot(t1,y1) 第92页/共319页第九十二页,编辑于星期六:六点 四十六分。3.1 3.1 基本二维绘图基本二维绘图 2、子图控制、子图控制格式:格式:subplot(m,n,p) 功能:将窗口分成功能:将窗口分成m(行)(行)*n(列)个子图,(列)个子图, 并指定在第并指定在第p个子图中绘图个子图中绘图 例如:例如:subplot(3,2,2); plot(t,y); subplot(3,2,3); plot(t1,y
56、1); 第93页/共319页第九十三页,编辑于星期六:六点 四十六分。3.1 3.1 基本二维绘图基本二维绘图 3、窗口控制、窗口控制 格式:格式:figure(n)功能:打开一个新窗口用于当前绘图,功能:打开一个新窗口用于当前绘图,n为该为该窗口的句柄(唯一标识),用于在多个窗口中窗口的句柄(唯一标识),用于在多个窗口中绘图。绘图。 例如:例如:figure(1); plot(t,y); figure(2); plot(t1,y1); 第94页/共319页第九十四页,编辑于星期六:六点 四十六分。3.1 3.1 基本二维绘图基本二维绘图 1、 title(s) 给图形加标题给图形加标题 例如
57、:例如: plot(t,y); title(sine wave) 2、 xlabel (s) 给给x轴加标注轴加标注 例如:例如:xlabel(t(s) 3、 ylabel (s) 给给y轴加标注轴加标注 例如:例如:ylabel(V(mv) 六、图形控制六、图形控制 第95页/共319页第九十五页,编辑于星期六:六点 四十六分。3.1 3.1 基本二维绘图基本二维绘图 4、 text (x,y,s)在图形指定位置在图形指定位置(x,y)加标注加标注 例如:例如:text(0.5,0.8,t=0.5s v=0.8) 5、 legend (s1,s2,) 添加图例添加图例 例例如如: plot(
58、t,y,t1,y1);legend(sine,cosine) 6、 grid on(off) 打开、关闭坐标网格线打开、关闭坐标网格线 例如:例如:grid off 7、zoom on(off) -允许放大允许放大/缩小缩小 第96页/共319页第九十六页,编辑于星期六:六点 四十六分。3.1 3.1 基本二维绘图基本二维绘图 8、 axis 控制坐标轴的刻度控制坐标轴的刻度 axis(xmin,xmax,ymin,ymax) 设定坐标轴的最大最小值设定坐标轴的最大最小值 例如:例如:plot(t,y);axis(-1 2 2 2) axis(equal)将两轴设为相等。将两轴设为相等。 ax
59、is on(off) 显示或关闭坐标轴显示或关闭坐标轴 第97页/共319页第九十七页,编辑于星期六:六点 四十六分。3.2 3.2 特殊二维绘图特殊二维绘图二维特殊绘图函数使用方法基本同plot. 例如:例如:stem(t,y) 2、bar 绘制直方图绘制直方图 例如:例如:bar(t,y)1、stem 绘制火柴杆图绘制火柴杆图3、stairs 绘制阶梯图绘制阶梯图 例如:例如:stairs (t,y,r) 第98页/共319页第九十八页,编辑于星期六:六点 四十六分。3.2 3.2 特殊二维绘图特殊二维绘图 4、area 区域图区域图例如:例如:x=ones(1,5);area(x) 注意
60、同注意同 bar 的区别的区别5、 pie 饼图饼图 例如:例如:x=1 2 3 2 1 1 ; y=0 0 1 0 0 0; pie(x,y) 还有其它特殊函数。还有其它特殊函数。第99页/共319页第九十九页,编辑于星期六:六点 四十六分。回顾回顾 PLOT PLOT 命令的格式命令的格式格式格式1: plot(y) 格式格式2: plot(x,y) 格式格式3: plot(x1, y1,x2,y2,) 格式格式4: plot(y,s) plot(x,y,s) plot(x1,y1,s1,x2,y2,s2) figure subplot 第100页/共319页第一百页,编辑于星期六:六点 四十六分。3.3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 商场保安合同2024年
- 商场租赁合作协议样本
- 全面战略合作协议撰写要点
- 交流活动具体安排表
- 2024物业服务委托协议
- 建行个人住房装修贷款合同
- 合作经营协议书范本样本
- 四川省攀枝花市(2024年-2025年小学五年级语文)统编版期末考试(下学期)试卷及答案
- 历史课程设计
- 个人劳务分包合同简本2024年
- 黑色素瘤诊断与治疗演示课件(PPT 38页)
- 高中数学奥赛辅导:第四讲不定方程
- T∕CSRME 001-2019 岩石动力特性试验规程
- 02 明渠均匀流断面尺寸设计
- 从农业机械化到农业信息化、自动化与智能化
- 第八讲 matlab simulink基础.
- 创伤急救周围血管损伤
- 通力电梯KCE电气系统学习指南
- 一年级语文《四季》第二课时教学设计
- 陈氏太极拳老架一路74式套路名称及部分讲解
- 建筑施工升降机安装、使用、拆卸安全技术规程
评论
0/150
提交评论