版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、MATLAB及仿真MATLAB及仿真 MATLAB与仿真与仿真 主讲教师:韩雅菲 MATLAB及仿真MATLAB及仿真 MATLAB课程安排课程安排 学时:学时:4040学时学时 安排:讲课安排:讲课3232学时,上机学时,上机8 8学时学时 MATLAB及仿真MATLAB及仿真 MATLAB课程安排课程安排 学时:学时:4040学时学时 安排:讲课安排:讲课3232学时,上机学时,上机8 8学时学时 MATLAB及仿真MATLAB及仿真 第第1章章 MATLAB概述概述 MATLAB MATLAB语言是语言是2020世纪世纪7070年代,美国新墨西哥年代,美国新墨西哥 大学计算机科学系主任大
2、学计算机科学系主任Cleve MolerCleve Moler为了为解决为了为解决 “线性代数线性代数”课程的矩阵运算问题,减轻学生编课程的矩阵运算问题,减轻学生编 程的负担,用程的负担,用FORTRANFORTRAN编写了最早的编写了最早的MATLABMATLAB。取。取 名名“MATLAB”MATLAB”即即MatMatrix rix LabLaboratoryoratory,矩阵实验,矩阵实验 室的意思。室的意思。 19841984年由年由LittleLittle、MolerMoler、Steve BangertSteve Bangert合合 作成立了的作成立了的MathWorksMat
3、hWorks公司正式把公司正式把MATLABMATLAB推向市推向市 场。到场。到2020世纪世纪9090年代,年代,MATLABMATLAB已成为国际控制界已成为国际控制界 的标准计算软件。的标准计算软件。 MATLAB及仿真MATLAB及仿真 MATLAB优势优势 友好的工作平台和编程环境友好的工作平台和编程环境 简单易用的程序语言简单易用的程序语言 强大的科学计算机数据处理能力强大的科学计算机数据处理能力 出色的图形处理功能出色的图形处理功能 应用广泛的模块集合工具箱应用广泛的模块集合工具箱 实用的程序接口和发布平台实用的程序接口和发布平台 应用软件开发(包括用户界面)应用软件开发(包括
4、用户界面) MATLAB及仿真MATLAB及仿真 MATLAB主要应用领域主要应用领域 MATLAB MATLAB 的应用范围非常广,包括信号的应用范围非常广,包括信号 和图像处理、通讯、控制系统设计、测试和图像处理、通讯、控制系统设计、测试 和测量、财务建模和分析以及计算生物学和测量、财务建模和分析以及计算生物学 等众多应用领域。附加的工具箱(单独提等众多应用领域。附加的工具箱(单独提 供的专用供的专用MATLAB MATLAB 函数集)扩展了函数集)扩展了MATLAB MATLAB 环境,以解决这些应用领域内特定类型的环境,以解决这些应用领域内特定类型的 问题。问题。 MATLAB及仿真M
5、ATLAB及仿真 第第2章章 MATLAB语言程序设计基础语言程序设计基础 2.1 MATLAB2.1 MATLAB语言的基本使用环境语言的基本使用环境 MATLABMATLAB主窗口是主窗口是MATLABMATLAB的主要工作的主要工作 界面。主窗口除了嵌入一些界面。主窗口除了嵌入一些常用窗口常用窗口外,外, 还主要包括还主要包括菜单栏菜单栏和和工具栏工具栏。 MATLAB及仿真MATLAB及仿真 MATLAB用户界面用户界面 MATLAB及仿真MATLAB及仿真 2.1 MATLAB语言的基本使用环境语言的基本使用环境 菜单栏:菜单栏: 在在MATLAB7.XMATLAB7.X主窗口的菜单
6、栏,共包含主窗口的菜单栏,共包含 FileFile、EditEdit、DebugDebug、DesktopDesktop、WindowWindow和和 Help 6Help 6个菜单项。个菜单项。 MATLAB及仿真MATLAB及仿真 MATLAB菜单栏菜单栏 在在MATLAB MATLAB 菜单栏,共包含菜单栏,共包含FileFile、EditEdit、ViewView、 WebWeb、WindowWindow和和Help 6Help 6个菜单项。个菜单项。 FileFile:包括新建,打开文件,关闭,保存,打印,导:包括新建,打开文件,关闭,保存,打印,导 入数据,设置路径及退出等操作。入
7、数据,设置路径及退出等操作。 EditEdit:包括撤销,剪切、复制、粘贴等常见的操作。:包括撤销,剪切、复制、粘贴等常见的操作。 Debug Debug :程序的调试。程序的调试。 DesktopDesktop:用于设置用于设置MATLABMATLAB集成环境的显示方式。集成环境的显示方式。 WindowWindow:用于关闭所有打开的编辑器窗口,在各窗口:用于关闭所有打开的编辑器窗口,在各窗口 之间切换。之间切换。 HelpHelp:用于提供帮助信息。:用于提供帮助信息。 MATLAB及仿真MATLAB及仿真 MATLAB帮助系统帮助系统 进入帮助窗口可以通过以下进入帮助窗口可以通过以下3
8、 3种方法:种方法: 单击单击MATLABMATLAB主窗口工具栏中的主窗口工具栏中的HelpHelp按钮;按钮; 在命令窗口中输入在命令窗口中输入helpwinhelpwin、helpdeskhelpdesk或或 docdoc; (1)(1)选择选择HelpHelp菜单中的菜单中的“MATLAB Help”MATLAB Help”选项。选项。 MATLAB及仿真MATLAB及仿真 MATLAB及仿真MATLAB及仿真 MATLAB及仿真MATLAB及仿真 MATLAB及仿真MATLAB及仿真 MATLAB及仿真MATLAB及仿真 MATLAB工具栏工具栏 工具栏:工具栏: 工具栏包括新建文件
9、、打开文件、剪切,工具栏包括新建文件、打开文件、剪切, 复制,粘贴等常用图标;复制,粘贴等常用图标; 显示显示MATLABMATLAB当前的路径,用户可以通过工当前的路径,用户可以通过工 具栏改变当前目录路径。具栏改变当前目录路径。 MATLAB及仿真MATLAB及仿真 常用窗口常用窗口 命令窗口(命令窗口(Command WindowCommand Window) 历史命令窗口(历史命令窗口( Command HistoryCommand History) 当前工作目录(当前工作目录(Current DirectoryCurrent Directory) 工作空间(工作空间(Workspac
10、eWorkspace) 数组编辑器窗口(数组编辑器窗口(Array EditorArray Editor) M M文件编辑文件编辑/ /调试器窗(调试器窗( EditorEditor) MATLAB及仿真MATLAB及仿真 1.命令窗口命令窗口 MATLAB及仿真MATLAB及仿真 1.命令窗口命令窗口 作用:作用:命令窗口是命令窗口是MATLABMATLAB的主要交互窗口,用的主要交互窗口,用 于输入命令并显示除图形以外的所有执行结果。于输入命令并显示除图形以外的所有执行结果。 在命令窗口中输入在命令窗口中输入MATLABMATLAB命令和数据后按回命令和数据后按回 车键,立即执行运算。车键
11、,立即执行运算。 命令窗口中的语句形式为:命令窗口中的语句形式为: 变量变量= =表达式;表达式; 说明:说明:命令窗口中的每个命令前会出现提示符命令窗口中的每个命令前会出现提示符 “”,没有,没有“”符号的行则是显示的结果符号的行则是显示的结果”。 MATLAB及仿真MATLAB及仿真 1.命令窗口命令窗口 句末加分号句末加分号; ;则不显示结果则不显示结果 例:例: a=3; b=4; c=a+b; c c = 7 MATLAB及仿真MATLAB及仿真 2.历史命令窗口 MATLAB及仿真MATLAB及仿真 2.历史命令窗口 作用:作用:在默认设置下,历史记录窗口中会在默认设置下,历史记录
12、窗口中会 自动保留自安装起所有用过的命令的历史自动保留自安装起所有用过的命令的历史 记录。记录。 当按下方向键当按下方向键时窗口会依次出现已输时窗口会依次出现已输 入命令。入命令。 MATLAB及仿真MATLAB及仿真 2.历史命令窗口 用来记录并显用来记录并显 示已经运行过示已经运行过 的命令、函数的命令、函数 和表达式。和表达式。 MATLAB及仿真MATLAB及仿真 3.当前工作目录 说明:说明:当前工作目录当前工作目录 用来设置当前目录,用来设置当前目录, 并显示当前目录下的并显示当前目录下的M M 文件、文件、MATMAT文件等文件文件等文件 信息,窗口中包含文信息,窗口中包含文 件
13、名称、类型、文件件名称、类型、文件 大小和修改时间等。大小和修改时间等。 MATLAB及仿真MATLAB及仿真 3.当前工作目录 当用户在当用户在MATLABMATLAB命令窗口输入一条命令后,命令窗口输入一条命令后, MATLABMATLAB按照一定次序寻找相关的文件。基本的搜按照一定次序寻找相关的文件。基本的搜 索过程是:索过程是: (1) (1) 检查该命令是不是一个变量。检查该命令是不是一个变量。 (2) (2) 检查该命令是不是一个内部函数。检查该命令是不是一个内部函数。 (3) (3) 检查该命令是不是当前目录下的检查该命令是不是当前目录下的M M文件。文件。 (4) (4) 检查
14、该命令是不是检查该命令是不是MATLABMATLAB搜索路径中其他目搜索路径中其他目 录下的录下的M M文件。文件。 因此,当前目录设置是否正确,决定程序是因此,当前目录设置是否正确,决定程序是 否能正确运行。否能正确运行。 MATLAB及仿真MATLAB及仿真 4.工作空间 MATLAB及仿真MATLAB及仿真 4.工作空间 说明:工作空间浏览器窗口用于显示内存中所有说明:工作空间浏览器窗口用于显示内存中所有 的变量名、数据结构、类型、大小和字节数的变量名、数据结构、类型、大小和字节数。 MATLAB及仿真MATLAB及仿真 5.数组编辑器窗口数组编辑器窗口 启动数组编辑器窗口的方法有:启动
15、数组编辑器窗口的方法有:1.1.在工作空间在工作空间 窗口中双击该变量;窗口中双击该变量;2.2.选择变量点击鼠标右键,选择变量点击鼠标右键, 选择选择“open selection”open selection”。 MATLAB及仿真MATLAB及仿真 6.M文件编辑文件编辑/调试窗口调试窗口 打开打开M M文件编辑文件编辑/ /调试器窗口的方法:调试器窗口的方法:1 1点击工具栏新点击工具栏新 建图标;建图标;2 2点击菜单点击菜单“File”“New”“M-File”File”“New”“M-File”; 3.3.打开已保存的打开已保存的M M文件。文件。 MATLAB及仿真MATLAB
16、及仿真 2.2 MATLAB语言的数据结构语言的数据结构 2.2.1 2.2.1常量与变量常量与变量 标识符:标识符:是标志变量名、常量名、函数是标志变量名、常量名、函数 名和文件名的字符串的总称。字符包括全名和文件名的字符串的总称。字符包括全 部的部的英文字母(大小写英文字母(大小写5252个)个)、阿拉伯数阿拉伯数 字字和和下划线下划线等符号,标识符中等符号,标识符中第一个字符第一个字符 必须是英文字母。必须是英文字母。 例:变量例:变量 A A,a a,A1A1,A_1 A_1 变量变量 1A1A,1a1a,_a _a MATLAB及仿真MATLAB及仿真 2.2.2赋值语句赋值语句 矩
17、阵及其元素的赋值矩阵及其元素的赋值 赋值赋值就是把数赋予代表常量或变量的标识符。就是把数赋予代表常量或变量的标识符。 在在MATLABMATLAB中,变量都代表矩阵。列向量可被中,变量都代表矩阵。列向量可被 当作只有一列的矩阵;行向量也可被当作只当作只有一列的矩阵;行向量也可被当作只 有一个行的矩阵;标量应看作有一个行的矩阵;标量应看作1 1 1 1阶的矩阵。阶的矩阵。 赋值语句的一般形式为:赋值语句的一般形式为: 变量表达式(或数)变量表达式(或数) MATLAB及仿真MATLAB及仿真 2.2.2赋值语句赋值语句 例如:例如: a=3; b=4; c=a+b; d=sin(t);); MA
18、TLAB及仿真MATLAB及仿真 MATLAB内部特殊变量和常数内部特殊变量和常数 在在MATLABMATLAB语言中为特定常语言中为特定常 数保留了一些名称,虽然这些常数保留了一些名称,虽然这些常 量可以被重新赋值,但在编程时量可以被重新赋值,但在编程时 尽量避免对这些量重新赋值。尽量避免对这些量重新赋值。 MATLAB及仿真MATLAB及仿真 MATLAB内部特殊变量和常数内部特殊变量和常数 变量变量ansans:临时变量,通常指示当前的答案。:临时变量,通常指示当前的答案。 常数常数epseps:表示浮点相对精度;其值是从:表示浮点相对精度;其值是从1.01.0到到 下一个最大浮点数之间
19、的差值。变量值作为一下一个最大浮点数之间的差值。变量值作为一 些些MATLABMATLAB函数计算的相对浮点精度,按函数计算的相对浮点精度,按IEEEIEEE标标 准,准,espesp近似为近似为2.2204e-0162.2204e-016。 常数常数realmaxrealmax:表示最大正浮点数;任何大于该:表示最大正浮点数;任何大于该 值的运算都溢出。在具有值的运算都溢出。在具有IEEEIEEE标准浮点格式的标准浮点格式的 机器上,机器上,realmaxrealmax略小于略小于21024 21024 ,近似为,近似为 1.7977e+3081.7977e+308。 常数常数realmin
20、realmin:表示最小正浮点数;任何小于该:表示最小正浮点数;任何小于该 值的运算都溢出。在具有值的运算都溢出。在具有IEEEIEEE标准浮点格式的标准浮点格式的 机器上,机器上,realminrealmin略小于略小于2-1024 2-1024 ,近似为,近似为 2.2251e-3082.2251e-308。 MATLAB及仿真MATLAB及仿真 MATLAB内部特殊变量和常数内部特殊变量和常数 常数常数pipi:表示圆周率:表示圆周率 =3.1415926535897.=3.1415926535897.。表达式。表达式4 4* *atan(1)atan(1)和和 imag(log(-1)
21、imag(log(-1)产生相同的值产生相同的值。 常数常数InfInf:代表正无穷大,一般被:代表正无穷大,一般被0 0除或溢出则除或溢出则 产生无穷大结果。如产生无穷大结果。如2/02/0,210000210000均产生结果:均产生结果: InfInf;而;而log(0)log(0)产生结果:产生结果:-Inf-Inf。 虚数单位虚数单位i i,j j:表示复数虚部单位,相当:表示复数虚部单位,相当 于于 。 NaNNaN:表示非数值。如当:表示非数值。如当Inf-InfInf-Inf,Inf/InfInf/Inf, 0 0* *InfInf,0/00/0均产生该结果。均产生该结果。 MA
22、TLAB及仿真MATLAB及仿真 (1)变量)变量ans a=3; a=3; b=4; b=4; a+b a+b ans =ans = 7 7 变量变量ansans:临时变量,通常指示当前的答案。:临时变量,通常指示当前的答案。 MATLAB及仿真MATLAB及仿真 常数常数eps 常数常数epseps:表示浮点相对精度;表示浮点相对精度; 其值是从其值是从1.01.0到下一个最大浮点到下一个最大浮点 数之间的差值。数之间的差值。espesp默认值为默认值为 2.2204e-016,2.2204e-016,若某个量的绝对若某个量的绝对 值小于值小于epseps,则从数值运算的角,则从数值运算的
23、角 度可以认为这个量为度可以认为这个量为0 0。 MATLAB及仿真MATLAB及仿真 常数常数eps eps eps ans =ans = 2.2204e-016 2.2204e-016 MATLAB及仿真MATLAB及仿真 常数常数realmax: 常数常数realmaxrealmax: 表示最大正浮点数;任何大于该表示最大正浮点数;任何大于该 值的运算都溢出。值的运算都溢出。RealmaxRealmax默认值默认值 为为1.7977e+3081.7977e+308。 MATLAB及仿真MATLAB及仿真 常数常数realmax: realmax realmax ans =ans = 1.
24、7977e+308 1.7977e+308 MATLAB及仿真MATLAB及仿真 常数常数realmin: 常数常数realminrealmin: 表示最小正浮点数;任何小于该表示最小正浮点数;任何小于该 值的运算都溢出。值的运算都溢出。RealminRealmin默认默认 值为值为2.2251e-3082.2251e-308。 MATLAB及仿真MATLAB及仿真 常数常数realmin: realmin realmin ans =ans = 2.2251e-308 2.2251e-308 MATLAB及仿真MATLAB及仿真 常数常数pi: pi: pi:表示圆周率表示圆周率 =3.141
25、5926535897=3.1415926535897 表达式表达式4 4* *atan(1)atan(1)和和imag(log(-1)imag(log(-1)产产 生相同的值生相同的值。 MATLAB及仿真MATLAB及仿真 常数常数pi: MATLAB及仿真MATLAB及仿真 常数常数Inf: 常数常数InfInf:代表正无穷大,一般代表正无穷大,一般 被被0 0除或溢出则产生无穷大结果。除或溢出则产生无穷大结果。 如如2/02/0,210000210000均产生结果均产生结果InfInf; 而而log(0)log(0)产生结果产生结果-Inf-Inf。 MATLAB及仿真MATLAB及仿真
26、 常数常数Inf: MATLAB及仿真MATLAB及仿真 虚数单位虚数单位i,j i i,j j:表示复数虚部单位:表示复数虚部单位 a=3+2i a=3+2i a =a = 3.0000 + 2.0000i 3.0000 + 2.0000i b=3+2j b=3+2j b =b = 3.0000 + 2.0000i 3.0000 + 2.0000i MATLAB及仿真MATLAB及仿真 NaN NaNNaN:表示非数值。表示非数值。 如:如: Inf-Inf;Inf-Inf; 0 0* *Inf;Inf; Inf/InfInf/Inf, 0/00/0 均产生该结果。均产生该结果。 MATLA
27、B及仿真MATLAB及仿真 2.2.3矩阵的矩阵的MATLAB表示表示 1 1赋值要求赋值要求 在输入矩阵时,应遵循以下规则:在输入矩阵时,应遵循以下规则: 整个矩阵的值应放在方括号中;整个矩阵的值应放在方括号中; 同一行中各元素之间以逗号同一行中各元素之间以逗号“,”或空或空 格分开;格分开; 不同行的元素以分号不同行的元素以分号“;”隔开。隔开。 MATLAB及仿真MATLAB及仿真 2.2.3矩阵的矩阵的MATLAB表示表示 a=1 2;3 4 a=1 2;3 4 a =a = 1 2 1 2 3 4 3 4 a=1,2;3,4 a=1,2;3,4 a =a = 1 2 1 2 3 4
28、3 4 例如:例如: MATLAB及仿真MATLAB及仿真 2.2.3矩阵的矩阵的MATLAB表示表示 一般来说,一个命令行输入一条命令,一般来说,一个命令行输入一条命令, 命令行以回车结束。但一个命令行也可以命令行以回车结束。但一个命令行也可以 输入若干条命令,各命令之间以逗号分隔,输入若干条命令,各命令之间以逗号分隔, 若前一命令后带有分号,则逗号可以省略。若前一命令后带有分号,则逗号可以省略。 例如:例如: p=15,m=35;p=15,m=35; p=15;m=35 p=15;m=35 MATLAB及仿真MATLAB及仿真 2.2.3矩阵的矩阵的MATLAB表示表示 如果一个命令行很长
29、,一个物理如果一个命令行很长,一个物理 行之内写不下,可以在第一个物理行之行之内写不下,可以在第一个物理行之 后加上后加上3 3个小黑点并按下回车键,然后个小黑点并按下回车键,然后 接着下一个物理行继续写命令的其他部接着下一个物理行继续写命令的其他部 分。分。3 3个小黑点称为续行符,即把下面个小黑点称为续行符,即把下面 的物理行看作该行的逻辑继续的物理行看作该行的逻辑继续 。 MATLAB及仿真MATLAB及仿真 2.2.3矩阵的矩阵的MATLAB表示表示 a=3;b=2;c=1;a=3;b=2;c=1; d=a+b. d=a+b. -c-c d =d = 4 4 MATLAB及仿真MATL
30、AB及仿真 2.2.3矩阵的矩阵的MATLAB表示表示 2 2变量的元素的标注变量的元素的标注 在在MATLABMATLAB中,变量的元素(即矩阵元)中,变量的元素(即矩阵元) 用圆括号用圆括号“()()”中的数字(也称为下标)中的数字(也称为下标) 来注明,一维矩阵(也称数组)中的元素来注明,一维矩阵(也称数组)中的元素 用一个下标表示,二维矩阵由两个下标数用一个下标表示,二维矩阵由两个下标数 构成,以逗号分开,对三维矩阵则由三个构成,以逗号分开,对三维矩阵则由三个 下标数构成。下标数构成。 MATLAB及仿真MATLAB及仿真 变量的元素的标注:一维矩阵举例变量的元素的标注:一维矩阵举例
31、a=rand(1,3) a=rand(1,3) a =a = 0.8913 0.7621 0.4565 0.8913 0.7621 0.4565 b=a(2) b=a(2) b =b = 0.7621 0.7621 MATLAB及仿真MATLAB及仿真 变量的元素的标注:二维矩阵举例变量的元素的标注:二维矩阵举例 a=rand(2,3) a=rand(2,3) a =a = 0.6154 0.9218 0.1763 0.6154 0.9218 0.1763 0.7919 0.7382 0.4057 0.7919 0.7382 0.4057 b=a(2,2) b=a(2,2) b =b = 0.
32、7382 0.7382 MATLAB及仿真MATLAB及仿真 变量的元素的标注:三维矩阵举例变量的元素的标注:三维矩阵举例 a=rand(2,2,2) a=rand(2,2,2) a(:,:,1) =a(:,:,1) = 0.9355 0.4103 0.9355 0.4103 0.9169 0.8936 0.9169 0.8936 a(:,:,2) =a(:,:,2) = 0.0579 0.8132 0.0579 0.8132 0.3529 0.0099 0.3529 0.0099 b=a(2,2,1) b=a(2,2,1) b =b = 0.8936 0.8936 MATLAB及仿真MATL
33、AB及仿真 2.2.3矩阵的矩阵的MATLAB表示表示 3 3赋值技巧赋值技巧 利用冒号利用冒号“:” ” 给全行或部分元素赋值;给全行或部分元素赋值; (1)(1)(2)(2)利用行、列标注构成新的矩阵。利用行、列标注构成新的矩阵。 MATLAB及仿真MATLAB及仿真 (1)利用冒号利用冒号“:” 给全行的元素赋给全行的元素赋 值值 a=rand(2,2) a=rand(2,2) a =a = 0.1389 0.1987 0.1389 0.1987 0.2028 0.6038 0.2028 0.6038 a(:,2)=1 a(:,2)=1 a =a = 0.1389 1.0000 0.13
34、89 1.0000 0.2028 1.0000 0.2028 1.0000 思考:思考: 如果接下来输入如果接下来输入 命令:命令:a(1,:)=1a(1,:)=1 那么那么a=a=? a =a = 1.0000 1.00001.0000 1.0000 0.2028 1.00000.2028 1.0000 MATLAB及仿真MATLAB及仿真 a=ones(4) a=ones(4) a =a = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 a(2:4,3:4)=0 a(2:4,3:4)=0 a =a = 1 1
35、 1 1 1 1 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 习题习题: : A A为为5 5* *4 4矩阵,矩阵, B B为为4 4* *6 6矩阵,矩阵,C=AC=A* *B B 1)1)求出乘积矩阵求出乘积矩阵C C, 2)2)将将C C矩阵的右下角矩阵的右下角 2 2* *3 3的子矩阵赋给的子矩阵赋给D D矩矩 阵。阵。 利用冒号利用冒号“:” 给局部元素赋值给局部元素赋值 MATLAB及仿真MATLAB及仿真 习题习题 A=1,2,3,3;2,3,5,7;1,3,5,A=1,2,3,3;2,3,5,7;1,3,5, 7;
36、3,2,3,9;1,8,9,47;3,2,3,9;1,8,9,4 A =A = 1 2 3 3 1 2 3 3 2 3 5 7 2 3 5 7 1 3 5 7 1 3 5 7 3 2 3 9 3 2 3 9 1 8 9 4 1 8 9 4 B=1,4,3,6,7,8;2,3,3,5,5,4;2,6,5,B=1,4,3,6,7,8;2,3,3,5,5,4;2,6,5, 3,4,2;1,8,9,5,4,33,4,2;1,8,9,5,4,3 B =B = 1 4 3 6 7 1 4 3 6 7 8 8 2 3 3 5 5 2 3 3 5 5 4 4 2 6 5 3 4 2 6 5 3 4 2 2 1
37、 8 9 5 4 1 8 9 5 4 3 3 MATLAB及仿真MATLAB及仿真 2.10习题(习题(2) C=A C=A* *B B C = C = 14 52 51 40 41 31 14 52 51 40 41 31 25 103 103 77 77 59 25 103 103 77 77 59 24 99 100 71 70 51 24 99 100 71 70 51 22 108 111 82 79 65 22 108 111 82 79 65 39 114 108 93 99 70 39 114 108 93 99 70 D=C(4:5,4:6)D=C(4:5,4:6) D =
38、D = 82 79 65 82 79 65 93 99 70 93 99 70 MATLAB及仿真MATLAB及仿真 (2)利用行、列标注构成新的矩阵利用行、列标注构成新的矩阵 若要产生矩阵若要产生矩阵 a =a = 1 1 1 1 1 1 1 2 1 1 2 1 1 1 1 1 1 1 可以采用以下方法:可以采用以下方法: a=ones(3,3) a=ones(3,3) a =a = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 a(2,2)=2 a(2,2)=2 MATLAB及仿真MATLAB及仿真 2.2.3矩阵的矩阵的MATLAB表示表示 4 4特殊矩阵和数组
39、特殊矩阵和数组 (1)(1)单位矩阵函数单位矩阵函数eye();eye(); (2)zeros(2)zeros函数、函数、onesones函数函数; ; (3)rand(3)rand以及以及randn randn 函数函数; ; (4)linspace(4)linspace函数。函数。 MATLAB及仿真MATLAB及仿真 1.eye(m,n) eyeeye(m m,n n)产生对角线元素为产生对角线元素为1 1,其他元素为,其他元素为0 0的矩的矩 阵。阵。 例如:例如: eye(3,2) eye(3,2) ans =ans = 1 0 1 0 0 1 0 1 0 0 0 0 a=eye(3
40、,3) a=eye(3,3) a =a = 1 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 1 MATLAB及仿真MATLAB及仿真 2. zeros函数、函数、ones函数函数 zeroszeros(m m,n n):产生:产生m m行,行,n n列矩阵,列矩阵, 矩阵元素均为矩阵元素均为0 0。 onesones(m m,n n):):产生产生m m行,行,n n列矩阵,列矩阵, 矩阵元素均为矩阵元素均为1 1。 zeros(2,3) zeros(2,3) ans =ans = 0 0 0 0 0 0 0 0 0 0 0 0 ones(3,2) ones(3,2) an
41、s =ans = 1 1 1 1 1 1 1 1 1 1 1 1 MATLAB及仿真MATLAB及仿真 3.rand以及以及randn 函数函数 randrand:产生随机矩阵,矩阵元素满足在:产生随机矩阵,矩阵元素满足在0 0、 1 1之间均匀分布。之间均匀分布。 randnrandn:产生随机矩阵,矩阵元素服从均产生随机矩阵,矩阵元素服从均 值为值为0 0,方差为,方差为1 1的正态分布。的正态分布。 rand(3,3) rand(3,3) ans =ans = 0.5252 0.8381 0.5252 0.8381 0.2026 0.0196 0.2026 0.0196 0.6721 0
42、.6813 0.6721 0.6813 randn(3,2) randn(3,2) ans =ans = -1.1465 -0.0376 -1.1465 -0.0376 1.1909 0.3273 1.1909 0.3273 1.1892 0.1746 1.1892 0.1746 MATLAB及仿真MATLAB及仿真 4. linspace函数函数 linspacelinspace函数函数的调用格式如下:的调用格式如下: y=linspace(a,b,n)y=linspace(a,b,n)产生一个行矢量产生一个行矢量y y,该矢量,该矢量 把把a a和和b b间的数等分间的数等分n n份而得到
43、。份而得到。 例:例: y=linspace(1,100,5) y=linspace(1,100,5) y =1.0000 25.7500 50.5000 75.2500 100.0000y =1.0000 25.7500 50.5000 75.2500 100.0000 MATLAB及仿真MATLAB及仿真 2.2.3矩阵的矩阵的MATLAB表示表示 5 5复数的赋值方式复数的赋值方式 MATLABMATLAB的每一个元素都可以是复数,的每一个元素都可以是复数, 实数是复数的特例。复数的虚数部分用实数是复数的特例。复数的虚数部分用i i 或或j j表示。对复数矩阵有两种赋值方法:表示。对复数
44、矩阵有两种赋值方法: (1)(1)可将矩阵元逐个赋予复数;可将矩阵元逐个赋予复数; (2)(2)将矩阵的实部和虚部分别赋值。将矩阵的实部和虚部分别赋值。 MATLAB及仿真MATLAB及仿真 复数的赋值方式复数的赋值方式 逐个赋值:逐个赋值: a=zeros(2,1); a=zeros(2,1); a(1,1)=1+2i; a(1,1)=1+2i; a(2,1)=2+2i a(2,1)=2+2i a =a = 1.0000 + 2.0000i 1.0000 + 2.0000i 2.0000 + 2.0000i2.0000 + 2.0000i 实、虚部分别赋值:实、虚部分别赋值: b=1 b=1
45、; ;2;2; c=2 c=2; ;2;2; d=b+ci d=b+ci d =d = 1.0000 + 2.0000i 1.0000 + 2.0000i 2.0000 + 2.0000i2.0000 + 2.0000i MATLAB及仿真MATLAB及仿真 2.2.3矩阵的矩阵的MATLAB表示表示 6 6变量检查变量检查 在程序调试或变量的赋值过程,往往需在程序调试或变量的赋值过程,往往需 要检查工作空间中的变量、变量的阶数以要检查工作空间中的变量、变量的阶数以 及变量赋值内容。在检查变量及其阶数等及变量赋值内容。在检查变量及其阶数等 内容时,既可用工作空间窗口,也可在命内容时,既可用工作
46、空间窗口,也可在命 令窗口使用令窗口使用whowho或或whoswhos命令来完成检查。命令来完成检查。 当查看某变量的赋值情况,可在命令窗口当查看某变量的赋值情况,可在命令窗口 直接键入该变量名回车即可。直接键入该变量名回车即可。 MATLAB及仿真MATLAB及仿真 变量检查(变量检查(who,whos) d =1.0000 + 2.0000i 2.0000 + 2.0000i; d =1.0000 + 2.0000i 2.0000 + 2.0000i; whos whos Name Size Bytes Class Name Size Bytes Class d 1x2 32 doubl
47、e array (complex) d 1x2 32 double array (complex) Grand total is 2 elements using 32 bytesGrand total is 2 elements using 32 bytes who who Your variables are:Your variables are: d d MATLAB及仿真MATLAB及仿真 2.3 MATLAB下矩阵的运算下矩阵的运算 2.3.1 2.3.1 矩阵的代数运算矩阵的代数运算 (1)(1)矩阵加减法矩阵加减法“”:A AB B 功能:两矩阵对应元素相加减。因此,功能:两矩阵
48、对应元素相加减。因此,A A 和和B B两矩阵必须有相同的大小,或其中之两矩阵必须有相同的大小,或其中之 一为标量,标量可以与任意大小的矩阵相一为标量,标量可以与任意大小的矩阵相 加。加。 MATLAB及仿真MATLAB及仿真 (1)矩阵加减法矩阵加减法“”:AB 相同大小矩阵相加:相同大小矩阵相加: a=2,3; a=2,3; b=ones(1,2) b=ones(1,2) b =b = 1 1 1 1 c=a+b c=a+b c =c = 3 4 3 4 矩阵与常数相加:矩阵与常数相加: a=2,3 a=2,3; b =1 b =1; c=a+b c=a+b c =c = 3 4 3 4 MATLAB及仿真MATLAB及仿真 2.3.1 矩阵的代数运算矩阵的代数运算 (2)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 校园AI社团管理系统成员认证与身份验证技术课题报告教学研究课题报告
- 护理知识学习的有效策略
- 2026年基础教育教育平台创新价值报告
- (2025版)成人吸入性损伤临床诊疗专家共识更新解读
- 大学医学实验教学中临床技能训练与模拟教学课题报告教学研究课题报告
- 河东区2025天津市河东区事业单位招聘14人笔试历年参考题库典型考点附带答案详解
- 武清区2025天津市武清区招聘事业单位人员81人笔试历年参考题库典型考点附带答案详解
- 松原市2025吉林松原石油化学工业循环经济园区管理委员会招聘事业单位人员含专项笔试历年参考题库典型考点附带答案详解
- 忻州市2025山西忻州市岢岚县部分事业单位招聘34人笔试历年参考题库典型考点附带答案详解
- 文化旅游演艺综合体2026年创新人才培养与技术创新战略研究
- 2025年长沙市芙蓉区事业单位真题
- 雨课堂在线学堂《大数据机器学习》作业单元考核答案
- JJG 1097-2014综合验光仪(含视力表)
- GB/T 9535-1998地面用晶体硅光伏组件设计鉴定和定型
- GB/T 4226-2009不锈钢冷加工钢棒
- 人行道铺装改造工程可行性研究报告
- 《回答》教案解析
- 适用小企业会计准则的现金流量表自动生成模板
- 食品工厂6s管理(43页)ppt课件
- 《直播营销》课程标准
- 药用有机化学基础习题
评论
0/150
提交评论