matlab在电气中应用.ppt

上传人:豆**** 文档编号:24776465 上传时间:2022-07-07 格式:PPT 页数:313 大小:3.35MB
返回 下载 相关 举报
matlab在电气中应用.ppt_第1页
第1页 / 共313页
matlab在电气中应用.ppt_第2页
第2页 / 共313页
点击查看更多>>
资源描述

《matlab在电气中应用.ppt》由会员分享,可在线阅读,更多相关《matlab在电气中应用.ppt(313页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 容易使用容易使用2. 丰富的内部函数丰富的内部函数3. 强大的图形和符号功能强大的图形和符号功能4. 与其他软件和语言有良好的对接性与其他软件和语言有良好的对接性 MATLAB全称为全称为Matrix Laboratory,是一种功能,是一种功能强大的科学计算软件强大的科学计算软件 。同其他高级语言相比,其具有。同其他高级语言相比,其具有很多优点:很多优点:1.1 MATLAB简介简介 1、MATLAB允许用户以允许用户以数学形式数学形式的语言编写程序,的语言编写程序,用户在命令窗口中输入命令即可直接得出结果。用户在命令窗口中输入命令即可直接得出结果。例1: 25=? 25 ans= 7 G

2、oback2、MATLAB的内部函数库提供了相当丰富的函数,的内部函数库提供了相当丰富的函数,这些函数可以解决许多基本问题,这些函数可以解决许多基本问题, 除此以外,除此以外,MATLAB还有各种工具箱。还有各种工具箱。 MATLAB主工具箱主工具箱 符号数学工具箱符号数学工具箱 SIMULINK仿真工具箱仿真工具箱 控制系统工具箱控制系统工具箱 信号处理工具箱信号处理工具箱 图象处理工具箱图象处理工具箱 通讯工具箱通讯工具箱 系统辨识工具箱系统辨识工具箱 神经元网络工具箱神经元网络工具箱 金融工具箱金融工具箱Goback3、 MATLAB具有强大的图形处理功能,它本身带有具有强大的图形处理功

3、能,它本身带有许多绘图的库函数,可以很轻松地画出各种复杂的二许多绘图的库函数,可以很轻松地画出各种复杂的二维和多维图形。维和多维图形。 例2、绘制在0 x6范围内的sin(2x)、sinx2 、 sin2xplot(x,y1,x, y2,x, y3)x=linspace(0,6)y1=sin(2*x);y2=sin(x.2);y3=(sin(x).2;0123456-1-0.8-0.6-0.4-0.200.20.40.60.811.2 MATLAB启动与退出启动与退出1.2.1 MATLAB的启动的启动方法一:双击matlab图标方法二:“开始” “程序”“MATLAB”菜单 “MATLAB”

4、MATLAB主体界面主体界面菜单栏菜单栏工具栏工具栏主窗口 标题栏 菜单栏 工具栏 Goback命令窗口命令窗口(Command WindowCommand Window)各种各种MATLABMATLAB操作的最主要窗口操作的最主要窗口 “” 运算提示符 例: x1=2+5 x1 = 7 Goback历史命令窗口(Command History) 自动保留自安装起所有用过的 命令的历史记录 双击历史命令 清除这些历史记录 Goback当前目录窗口当前目录窗口(Current DirectoryCurrent Directory) 显示或改变当前目录显示或改变当前目录 显示当前目录下的文件显示当

5、前目录下的文件 功能功能Goback工作间管理窗口工作间管理窗口(WorkspaceWorkspace) 显示目前内存中所有的显示目前内存中所有的MATLABMATLAB变量的变量的变量名、取值变量名、取值以及类型以及类型 Goback1.2.2 MATLAB的退出的退出1. 利用利用MATLAB菜单退出菜单退出 单击单击File菜单,从中选择菜单,从中选择Exit MATLAB。2. 使用使用quit/exit语句退出语句退出 在指令窗口直接输入在指令窗口直接输入quit/exit即可。即可。3. 使用热键退出使用热键退出 在在MATLAB窗口中同时按下窗口中同时按下Ctrl+Q即可。即可。

6、4. 单击窗口单击窗口 可直接退出可直接退出1.3.1 帮助窗口帮助窗口 帮助窗口的起动帮助窗口的起动 (1)通过通过“help”菜单菜单 (2)单击工具栏上的问号按钮单击工具栏上的问号按钮 (3)在命令窗口中执行在命令窗口中执行helpwin、helpdesk或或doc 2. 帮助窗口的内容帮助窗口的内容 帮助主题(帮助主题(Contents) 帮助索引(帮助索引(Index) 帮助查询(帮助查询(Search) 联机演示(联机演示(Demos)1.3 MATLAB帮助系统帮助系统1.3.2 命令窗口查询帮助命令窗口查询帮助2. lookfor+关键字关键字1. help+函数名函数名例:例

7、:help sin 通过完整的或通过完整的或部分关键字部分关键字来搜索要来搜索要 查找的内容查找的内容 lookfor sin 寻找与正弦相关的所有指令寻找与正弦相关的所有指令第第2章章 MATLAB的基本使用方法的基本使用方法 基本概念基本概念 基本运算基本运算 MATLAB的数据类型的数据类型 常用函数常用函数 标点符号的使用标点符号的使用 常用操作命令和键盘技巧常用操作命令和键盘技巧2.1 基本概念基本概念 在在MATLAB中,经常用到中,经常用到标量标量、向量向量、矩阵矩阵和和数组数组的概念。无论在的概念。无论在MATLAB中变量赋何值,在内存中均以中变量赋何值,在内存中均以矩阵矩阵的

8、形式存在。的形式存在。标量标量:是:是11矩阵,即只含有一个数的矩阵矩阵,即只含有一个数的矩阵向量向量:是:是1n或或n1的矩阵,即只有一行或一列的矩阵的矩阵,即只有一行或一列的矩阵矩阵矩阵:是一个矩形数组,即二维数组,其中向量和标量:是一个矩形数组,即二维数组,其中向量和标量都是矩阵的特例,都是矩阵的特例,00矩阵为空矩阵矩阵为空矩阵数组数组:有序数据的集合,为矩阵的延伸,其中矩阵和向:有序数据的集合,为矩阵的延伸,其中矩阵和向量都是数组的特例量都是数组的特例2.2 基本运算基本运算 MATLAB最主要的功能便是数值计算,主要有以最主要的功能便是数值计算,主要有以下基本运算符号:下基本运算符

9、号:符号符号功能功能实例实例+加法加法2+3-减法减法2-3*乘法乘法2*3/、除法除法2/3、23乘方乘方231、MATLAB的求值次序:的求值次序:(1)算式从左到右执行;算式从左到右执行;(2)乘方的优先级最高,乘、除次之,最后是乘方的优先级最高,乘、除次之,最后是加减,括号的优先级别最高;加减,括号的优先级别最高;(3)在有多层括号的情况下,从括号的最里面在有多层括号的情况下,从括号的最里面到最外面逐渐扩展。到最外面逐渐扩展。 2、MATLAB语句有两种常见的形式:语句有两种常见的形式:(1) 表达式表达式1+2ans= 3(2)变量)变量=表达式表达式 在第一种情况下在第一种情况下,

10、计算,计算结果自动赋给名为结果自动赋给名为ans(answer)的变量;)的变量;在在第二种情况下第二种情况下, 结果自结果自动赋给等号左边的变量,动赋给等号左边的变量,“=” 代表的是赋值操作代表的是赋值操作 。a=1+2a= 3一个命令行输入一个命令行输入一条一条命令,命令行以命令,命令行以回车回车结束结束 a=2 一个命令行也可以输入一个命令行也可以输入若干条若干条命令,各命令之命令,各命令之间以间以逗号逗号或或分号分号分隔。分隔。 a=2, b=3; a=2; b=3; a =2 a =2 2.3 MATLAB的数据类型的数据类型1. 常量常量 在在MATLAB中有一些中有一些特定的变

11、量特定的变量,已被预定义某,已被预定义某个特定的值,因此这些变量被称为个特定的值,因此这些变量被称为常量常量。ans用作结果的默认变量用作结果的默认变量i、j复数单位复数单位beep“嘟嘟”nargin函数输入参数个数函数输入参数个数pi圆周率(圆周率()nargout函数输出参数个数函数输出参数个数eps浮点数相对误差浮点数相对误差realmin最小正浮点数最小正浮点数inf无穷大无穷大realmax最大正浮点数最大正浮点数NaN、nan不定数不定数bitmax最大正整数最大正整数2. 变量变量 在程序执行过程中其值可以变化的量为在程序执行过程中其值可以变化的量为变量变量,变量,变量在计算机

12、中占有一定的存储单元,在该单元内存放该变在计算机中占有一定的存储单元,在该单元内存放该变量的值。一个变量应该有一个名字,称之为量的值。一个变量应该有一个名字,称之为变量名变量名。 变量的命名规则:变量的命名规则:(1)MATLAB不需对变量进行事先说明及指定类型;不需对变量进行事先说明及指定类型;(2)变量名必须以英文字母开头,可以包含字母、数)变量名必须以英文字母开头,可以包含字母、数字和下划线,但不得出现空格和标点符号字和下划线,但不得出现空格和标点符号;(3)变量名最多可包含)变量名最多可包含63个字符;个字符;(4)变量名区分大小写)变量名区分大小写;(5)关键字不能作为变量名。)关键

13、字不能作为变量名。 与变量相关的指令:与变量相关的指令:(1)who和和whos who和和whos都用来列出都用来列出matlab工作区中已驻留的变工作区中已驻留的变量清单,而量清单,而whos还可以列出变量的维数和性质。还可以列出变量的维数和性质。例:例: who Your variables are: a b whos Name Size Bytes Class a 1x801 6408 double array b 1x801 6408 double array Grand total is 1602 elements using 12816 bytes注意:注意:常量常量用用who指

14、令是查看不到的,只可随时调用指令是查看不到的,只可随时调用(2)clear clear用来清除工作空间中定义过的用来清除工作空间中定义过的所有所有变量变量或部或部分变量。分变量。如果只要去除其中某几个变量,应在如果只要去除其中某几个变量,应在clear后后面指明要删除的变量名称面指明要删除的变量名称 。 a=1,b=2a = 1b = 2? Undefined function or variable a. clear a a bb = 2永久变量可以修改,通过永久变量可以修改,通过clear可以恢复可以恢复原值。原值。 pi = 2例:例: pi=2 clear pi ans= 3.1416

15、3. 复数复数 MATLAB的每一个元素都可以是复数,实数是复的每一个元素都可以是复数,实数是复数的特例。数的特例。 MATLAB语言对复数的处理十分简单,在语言对复数的处理十分简单,在处理复数问题时,不需进行其他任何附加操作。处理复数问题时,不需进行其他任何附加操作。定义复数格式如下:定义复数格式如下: z=a+bi 或或 z=a+bj z=a+b*i 或或 z=a+b*j a=2+3i a = 2.0000 + 3.0000i a=2+3j a = 2.0000 + 3.0000i b=2+3*i b = 2.0000 + 3.0000i b=2+3*j b = 2.0000 + 3.00

16、00i a=2a = 2 b=3b = 3 c=a+bi注意:只有数字才可以注意:只有数字才可以与与i、j直接相连,表达式直接相连,表达式或矩阵则不可以,应用或矩阵则不可以,应用*.? Undefined function or variable bi.4. 数据的输出格式数据的输出格式 在在MATLAB系统中,数据的存储和计算都是以系统中,数据的存储和计算都是以双双精度精度进行的,但是用户可以改变屏幕上显示的格式,所进行的,但是用户可以改变屏幕上显示的格式,所用指令为用指令为format。formatformat short小数点后小数点后4位数字,位数字,大于大于1000的实数的实数用科学

17、记数法表示用科学记数法表示format long g选择选择15位定点和位定点和15位科学记数法中位科学记数法中更好的进行表示更好的进行表示format long15位定点数表示位定点数表示format hex使用使用16进制进行表进制进行表示示format short e5位科学记数法表位科学记数法表示示format bank用元、角、分进行用元、角、分进行表示表示format long e15位科学记数法表位科学记数法表示示format +显示大矩阵用,正、显示大矩阵用,正、负、零分别用负、零分别用+、-、空格表示空格表示format short g选择选择5位定点和位定点和5位位科学记数

18、法中更好科学记数法中更好的进行表示的进行表示format rationalformat rat用分式表示用分式表示1、short : 显示显示小数点后小数点后4位位数字数字 0.0013 0.0013333333333333333 2、long: 显示显示15位数字位数字。 如果数值为整数,则按原数显示如果数值为整数,则按原数显示 0.00133333333333 (缺省设置)(缺省设置)3、short e: 对非整数值都按对非整数值都按e方式显示,显方式显示,显示示5位有效数字位有效数字。如果数值为整数,。如果数值为整数,则按原数显示则按原数显示 1.3333e-003 0.00133333

19、33333333333 4、long e: 对非整数值都按对非整数值都按e方式方式显示,显示显示,显示15位有效数字位有效数字。 1.33333333333333e-003 0.0013333333333333333 如果数值为整数,则按原数显示如果数值为整数,则按原数显示 5、short g: 从从 short 和和 short e中自动选择最佳记中自动选择最佳记述方式述方式0.0013333333333333333 6、long g: 0.00133333333333 从从 long 和和 long e中自动选择最佳记述中自动选择最佳记述方式方式 0.0013333 7、hex: 十六进制

20、表示十六进制表示 3ff5555555555550.0013333333333333333 8、+ + 正、负、零分别用正、负、零分别用+ +、- -、空格表示、空格表示显示大矩阵用显示大矩阵用9、bank: 0.00 10、rat: 1/750 0.0013333333333333333 输出格式的控制输出格式的控制 file法一:法一:PreferencesCommand Window法二:法二:format 命令命令format short e 例:例:Numeric Format2.4 MATLAB的的常用函数常用函数 MATLAB提供了丰富的函数,只要正确调用,便提供了丰富的函数,只

21、要正确调用,便可获得正确结果。可获得正确结果。sin正弦正弦angle相角相角asin反正弦反正弦conj共轭复数共轭复数cos余弦余弦imag取复数虚部取复数虚部acos反余弦反余弦real取复数实部取复数实部tan正切正切fix取整数取整数atan反正切反正切mod取余数取余数exp指数运算指数运算round四舍五入四舍五入log自然对数自然对数sqrt平方根平方根log10以以10为底对数为底对数abs绝对值绝对值1、三角函数、三角函数 2、指数运算函数、指数运算函数3、复数运算函数、复数运算函数4、取整和求余函数、取整和求余函数 sin三角函数三角函数sinhasincoscoshac

22、ostanatancotacotseccsc注意:注意: 小写!小写! 函数应该出现在等式的右边。函数应该出现在等式的右边。 后面表达式写在(后面表达式写在( )里,例)里,例sin(x), 其他对它的运算和数学一样。其他对它的运算和数学一样。 三角函数以三角函数以弧度弧度为单位计算。为单位计算。sin(1)表示的不是表示的不是sin1而是而是sin57.28578例如:例如:指数运算函数指数运算函数exploglog10log2power(pow2)sqrt设设a=5.67,b=7.8,求求 exp(a+b)/ log10(a+b) ans = 6.2677e+005 a=5.67;b=7.

23、8;例例1: )ln()lg(abbaeba 、 log(b-a) ans = 0.7561例例2:已知:已知a=3,b=4 ;求:求:ba power(a,b)a=3;b=4 ;或者或者abans= 81abs复数运算函数复数运算函数anglerealimagconjcomplex构造复数角度(弧度)模实部虚部共轭ans = 1.1071 x=1+2i; abs(x)ans = 2.2361 angle(x)例:例: ans = 1ans = 2 real(x) imag(x)y = 2.0000 + 3.0000i ans = 1.0000 - 2.0000i conj(x) y=comp

24、lex( 2,3 )fix (舍小留整)(舍小留整)取整取整求余求余函数函数round(四舍五入)(四舍五入)floor (向下取整)(向下取整)ceil (向上取整)(向上取整)modremsign ceil(x) x=-9.8; fix(x)ans = -9 round(x)ans = -10 floor(x)ans = -10ans = -9ans = 1 x=9;y=2; rem(x,y)mod(x,y)ans = 1ans = 1 x=9;y=-2; mod(x,y)ans = -1 rem(x,y)ans = -1 ans = 1 mod(-9,2) rem(-9,2)rem(x,

25、y)和和mod(x,y)要求要求x,y必须为相同大小的实必须为相同大小的实矩阵或同为标量矩阵或同为标量 注意:注意: sign(0) sign(9)ans = -1 ans = 1ans = 0 sign(-9)例:例:计算下式的结果,其中计算下式的结果,其中x=-3.5,y=6.7。|)cos(|)|sin(|yxyx x=-3.5*pi/180; y=6.7*pi/180; sin(abs(x)+abs(y)/sqrt(cos(abs(x+y)ans = 0.1772标点符号标点符号定定 义义标点符号标点符号定定 义义;区分行,取消运行显示等区分行,取消运行显示等.小数点以及域访问等小数点

26、以及域访问等,区分列,函数参数分隔符等区分列,函数参数分隔符等连接语句连接语句:在数组中应用较多在数组中应用较多字符串的标识符号字符串的标识符号( )指定运算优先级等指定运算优先级等=赋值符号赋值符号 矩阵定义的标志等矩阵定义的标志等!调用操作系统运算调用操作系统运算 用于构成单元数组等用于构成单元数组等%注释语句的标识注释语句的标识2.5 MATLAB的的标点符号标点符号 1、空格:、空格:数组行元素以及输数组行元素以及输入变量之间的分隔符入变量之间的分隔符 a = 1 2 3 4 5 6 a=1 2 3 ; 4 5 62、逗号、逗号(,) 用于要显示计算结果的命令与其它用于要显示计算结果的

27、命令与其它命令之间的分隔符命令之间的分隔符 a=1, b=2 用于数组行元素之间的分隔符用于数组行元素之间的分隔符a = 1 2 3 4 5 6 a=1, 2, 3;4, 5 ,63、点号、点号 (.)用于数值中的小数点用于数值中的小数点 2.564 4、分号、分号(;) (;) 用于不显示计算结果命令行的结尾用于不显示计算结果命令行的结尾 a=2; 用于不显示计算结果命令与其它命令用于不显示计算结果命令与其它命令之间的分隔符之间的分隔符 a=1; b=2 用于矩阵元素行之间的分隔符用于矩阵元素行之间的分隔符 a=1 2 3 ; 4 5 65、冒号、冒号 (:)用于生成等间隔的向量用于生成等间

28、隔的向量 a=1:1:4 a= 1:4用作矩阵的下标,部分地选择矩阵元素用作矩阵的下标,部分地选择矩阵元素 A = 1 2 3 4 5 6ans = 3 6 A(: ,3)6、百分号、百分号(%) 注释符注释符 x=1:0.1:10; ; %给出自变量给出自变量 x 的定义域的定义域7、单引号、单引号() 用于括住字符串用于括住字符串 a= 1+2a= 1+28、方括号、方括号( ) 用于构成向量和矩阵用于构成向量和矩阵 A=1,2,3;4,5,69、续行号、续行号() 表示一行未完,在下一行继续输入表示一行未完,在下一行继续输入 s=1-1/2+1/3-1/4+1/5-1/6 +1/7-1/

29、8+1/9-1/102.6 常用操作命令和键盘技巧常用操作命令和键盘技巧 在使用在使用MATLAB编制程序时,掌握一些常用的操编制程序时,掌握一些常用的操作命令和键盘操作技巧,可以起到事半功倍的效果。作命令和键盘操作技巧,可以起到事半功倍的效果。常用操作指令常用操作指令cd显示或改变当前工作目录显示或改变当前工作目录clf清除图形窗口清除图形窗口clc清除工作窗清除工作窗dir显示当前目录下文件显示当前目录下文件常用键盘操作和快捷键常用键盘操作和快捷键(Ctrl+p)调用上一行调用上一行Home(Ctrl+a)光标置于行首光标置于行首 (Ctrl+n)调用下一行调用下一行End(Ctrl+e)

30、光标置于行尾光标置于行尾Ctrl+光标左移一单词光标左移一单词Alt+BackSpace回复上一次删除回复上一次删除Ctrl+光标右移一单词光标右移一单词Ctrl+c终止当前指令终止当前指令第第3章章 MATLAB的数值计算的数值计算 矩阵的构建矩阵的构建 矩阵元素矩阵元素 矩阵运算矩阵运算 矩阵的关系运算和逻辑运算矩阵的关系运算和逻辑运算 多项式运算多项式运算3.1 矩阵的构建矩阵的构建3.1.1 直接输入法直接输入法 创建矩阵最简单的方法就是创建矩阵最简单的方法就是直接输入矩阵元素直接输入矩阵元素,输,输入格式有以下的要求:入格式有以下的要求: 1. 整个矩阵以整个矩阵以“ ”作为首尾;作

31、为首尾; 2. 每行中的元素用每行中的元素用“,”或空格分隔;或空格分隔; 3. 行与行之间用分号行与行之间用分号“;”或回车键分隔;或回车键分隔; 4. 矩阵中的元素可以是数字或者表达式;矩阵中的元素可以是数字或者表达式; 5. 如果矩阵中没有元素,这样的矩阵称为空阵如果矩阵中没有元素,这样的矩阵称为空阵 (Empty Matrix)。)。注意:注意: MATLAB中所有的矩阵事先都中所有的矩阵事先都不必定义维数大小,系统会根据不必定义维数大小,系统会根据用户的输入自动配置,并在运算用户的输入自动配置,并在运算中自动调整矩阵的维数。中自动调整矩阵的维数。 a=1 2 3;4 5 6;7 8

32、9a = 1 2 3 4 5 6 7 8 9 b=1 sin(pi/6) sqrt(9)3+5 6 0b = 1.0000 0.5000 3.0000 8.0000 6.0000 0 8i4 7i3 6i2 5i1 a a=1+5i 2+6i ; 3+7i 4+8i或或 a=1 2; 3 4+i*5 6;7 83.1.2 利用内部函数产生矩阵利用内部函数产生矩阵 利用内部函数可以很容易产生一些常见的特殊矩阵,利用内部函数可以很容易产生一些常见的特殊矩阵,常用函数如下:常用函数如下:eye(m,n)产生单位矩阵产生单位矩阵zeros(m,n)产生元素全为产生元素全为0的矩阵的矩阵ones(m,n

33、)产生元素全为产生元素全为1的矩阵的矩阵rand(m,n)产生均匀分布的随机元素矩阵,范围产生均匀分布的随机元素矩阵,范围01randn(m,n)产生正态分布的随机元素矩阵产生正态分布的随机元素矩阵diag(x)产生矩阵产生矩阵x的对角阵的对角阵magic(m)产生魔术矩阵产生魔术矩阵说明:说明:当当eye、zeros、ones、rand、randn函数函数只有一个参数只有一个参数n时,则产生时,则产生nn的方阵。的方阵。 eye(3)ans = 1 0 0 0 1 0 0 0 1 eye(3,4)ans = 1 0 0 0 0 1 0 0 0 0 1 0 zeros(3)ans = 0 0

34、0 0 0 0 0 0 0 ones(3,4)ans = 1 1 1 1 1 1 1 1 1 1 1 1 a=magic(3)a = 8 1 6 3 5 7 4 9 2 diag(a)ans = 8 5 2x= ones(3)x = 1 1 1 1 1 1 1 1 1 tril(x)ans = 1 0 0 1 1 0 1 1 1 triu(x)ans = 1 1 1 0 1 1 0 0 1tril : 产生下三角矩阵产生下三角矩阵triu: 产生上三角矩阵产生上三角矩阵3.1.3 数组的构建数组的构建 在在MATLAB中数组可以看作行向量,即只有一行的中数组可以看作行向量,即只有一行的矩阵,矩

35、阵, MATLAB创建数组可用以下特殊命令:创建数组可用以下特殊命令:1. 冒号生成法冒号生成法 (初值:步长:终值)(初值:步长:终值) 0:0.4:2ans = 0 0.4000 0.8000 1.2000 1.6000 2.0000 步长若省略,默认间隔步长若省略,默认间隔1 0:0.3:1.3ans = 0 0.3000 0.6000 0.9000 1.2000初值初值=0,终值,终值=2,步长,步长=0.4 a=1:4;b=1:2:7; c=a;b %利用向量生成矩阵利用向量生成矩阵c = 1 2 3 4 1 3 5 7 d=a 9 10 %在在a的基础上扩展的基础上扩展d = 1

36、2 3 4 9 10注意:注意:a,b的长度一样!的长度一样!2. linspace函数函数 linspace(a,b,n) 差值差值=(b-a)/(n-1) a=linspace(0,1,4)a = 0 0.3333 0.6667 1.0000 初值初值=0,终值,终值=1,元素个数,元素个数=43. logspace函数函数 logspace(a,b,n) 公比公比=10(b-a)/(n-1) logspace(0,2,5)ans = 1.0000 3.1623 10.0000 31.6228 100.0000 初值初值=100,终值,终值=102,元素个数,元素个数=5,公比,公比=10

37、0.53.2 矩阵的元素矩阵的元素3.2.1 矩阵元素的下标表示矩阵元素的下标表示 1. 全下标表示全下标表示 一个一个mn矩阵矩阵A的第的第i行,第行,第j列元素表示为列元素表示为A(i,j),即由行下标和列下标表示,即由行下标和列下标表示,行列数从行列数从1开始开始。注意:注意:当给元素赋值时,如果超出矩阵范围,则自动扩当给元素赋值时,如果超出矩阵范围,则自动扩充矩阵;当取值时,若超出矩阵范围,则提示错误。充矩阵;当取值时,若超出矩阵范围,则提示错误。 a=1 2;3 4; a(1,2)=9; a(2,3)=8; a(2,4)? Index exceeds matrix dimension

38、s. aa = 1 9 0 3 4 82. 单下标表示单下标表示 将矩阵的所有将矩阵的所有列列按从左到右的顺序接成按从左到右的顺序接成“一维长一维长列列”,然后对元素进行编号。一个,然后对元素进行编号。一个mn矩阵矩阵A的元素的元素 A(i,j)对应的下标为对应的下标为(j-1)*m+i。 a=1 2 3;4 5 6; a(1,2)ans = 2 a(3)ans = 2 a(5)=10a = 1 2 10 4 5 63.2.2 子矩阵子矩阵 1. 全下标表示全下标表示(1)a(i j, k l) :行数为:行数为i、j,列数为,列数为k、l的元素构成的元素构成子矩阵;子矩阵;(2)a(i:j,

39、 k:l) :取行数为:取行数为ij,列数为,列数为kl的元素构成的的元素构成的子矩阵子矩阵(3)a(i:j, :):取行数为:取行数为ij,所有列的元素构成的子矩,所有列的元素构成的子矩阵阵(4)a(end, k:j):取行数最大值,列数为:取行数最大值,列数为kj的元素构成的元素构成的子矩阵的子矩阵2. 单下标表示单下标表示a(i j; k l):取单下标为:取单下标为i、j、k、l的元素构成子矩阵。的元素构成子矩阵。 a=magic(5)a = 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 a(1 2,

40、3 4)ans = 1 8 7 14 a(1:2,3:5)ans = 1 8 15 7 14 16 a(1:2,:)ans = 17 24 1 8 15 23 5 7 14 16 a(end,1:2)ans = 11 18 a(1 3;4 5)ans = 17 4 10 113.2.3 矩阵元素的删除矩阵元素的删除 删除矩阵元素可以简单的将该元素赋值为空矩阵删除矩阵元素可以简单的将该元素赋值为空矩阵(用(用 表示)。表示)。 a=rand(3,4)a = 0.8913 0.0185 0.6154 0.7382 0.7621 0.8214 0.7919 0.1763 0.4565 0.4447

41、0.9218 0.4057 a(2)=a = Columns 1 through 8 0.8913 0.4565 0.0185 0.8214 0.4447 0.6154 0.7919 0.9218 Columns 9 through 11 0.7382 0.1763 0.40573.2.4 矩阵元素的数量矩阵元素的数量1. numel函数函数 n=numel(a):计算矩阵:计算矩阵a中元素的总数中元素的总数2. size函数函数d=size(a) :d=m n,m为为a的行数,的行数,n为为a的列数的列数m n=size(a): m为为a的行数,的行数,n为为a的列数的列数m=size(a,

42、dim):m为矩阵为矩阵a的第的第dim维的大小维的大小 a=rand(2,3)a = 0.2844 0.0648 0.5828 0.4692 0.9883 0.4235 d=size(a)d = 2 3 m=size(a,2)m = 3 numel(a)ans = 63.3 矩阵与数组运算矩阵与数组运算MATLAB算术运算算术运算矩阵算术运算矩阵算术运算数组算术运算数组算术运算矩阵算术运算:按照线性代数运算法则定义矩阵算术运算:按照线性代数运算法则定义数组算术运算:按照元素逐个执行数组算术运算:按照元素逐个执行3.3.1 矩阵的运算矩阵的运算 + 加法加法 - 减法减法 * 乘法乘法 幂幂

43、左除左除 / 右除右除 转置转置1. 矩阵的加减法矩阵的加减法 矩阵的加减法是矩阵的加减法是对应元素的加减法对应元素的加减法,只有当两个只有当两个矩阵维数相同或者其中一个为标量时,才可以进行加矩阵维数相同或者其中一个为标量时,才可以进行加减法运算。减法运算。 a=1 2;3 4; b=5 6;7 8; a+bans = 6 8 10 12 3+aans = 4 5 6 7 b-3ans = 2 3 4 52. 矩阵的乘法矩阵的乘法 矩阵的乘法使用矩阵的乘法使用“*”运算符,两个矩阵要相乘,运算符,两个矩阵要相乘,只有当前一矩阵的列数与后一矩阵行数相等或者其中只有当前一矩阵的列数与后一矩阵行数相

44、等或者其中一个为标量时才能进行。一个为标量时才能进行。 a=1 2;3 4; b=5 6 7;8 9 10; a*bans = 21 24 27 47 54 61 b*a? Error using = *Inner matrix dimensions must agree. 3*aans = 3 6 9 123. 矩阵的除法矩阵的除法 矩阵的除法有矩阵的除法有左除和右除左除和右除两种,分别用两种,分别用“”和和“/”表示。通常矩阵除法可以用来求未知矩阵。表示。通常矩阵除法可以用来求未知矩阵。 若若 A*X=B,则,则 X=AB 若若 X*A=B,则,则 X=B/A注意:注意:若若A、B都为矩阵

45、时,这两个结果是不同都为矩阵时,这两个结果是不同 的,即的,即ABB/A。 若若A、B中有一个为标量,设中有一个为标量,设A为标量,为标量,则则 这两个结果是相同的,即这两个结果是相同的,即AB=B/A。 a=1 2;3 4; b=5 6;8 9; c=a*bc = 21 24 47 54 c/aans = -6 9 -13 20 acans = 5.0000 6.0000 8.0000 9.0000 a=2; c=a*b acans = 5 6 8 9 c/aans = 5 6 8 9c = 10 12 16 18例例:求解以下方程:求解以下方程 711310322123321321321x

46、xxxxxxxx A=1 3 2;2 2 3;3 1 1A = 1 3 2 2 2 3 3 1 1 B=1;10;7B = 1 10 7 ABans = 2 -3 44. 矩阵的乘方矩阵的乘方 矩阵的乘方使用矩阵的乘方使用“”运算符,如运算符,如AP,当,当P为整数为整数时,该指令运算结果可做如下解释:时,该指令运算结果可做如下解释:(1)当)当P0,表示方阵,表示方阵A直接自乘直接自乘P次;次;(2)当)当P a=1 2;3 4a = 1 2 3 4 a2ans = 7 10 15 22 a0ans = 1 0 0 1 a(-2)ans = 5.5000 -2.5000 -3.7500 1.

47、75005. 矩阵的转置矩阵的转置 矩阵的转置使用矩阵的转置使用“”运算符,矩阵的转置就是运算符,矩阵的转置就是将第将第i行第行第j列的元素和第列的元素和第j行第行第i列的元素进行互换。列的元素进行互换。 对于有对于有复数元素复数元素的矩阵的矩阵A,A为共轭转置,为共轭转置,A.为为非共轭转置。非共轭转置。 a=1 2;3 4a = 1 2 3 4 aans = 1 3 2 4 a=1+i 2+i;3+i 4+i; aans = 1.0000 - 1.0000i 3.0000 - 1.0000i 2.0000 - 1.0000i 4.0000 - 1.0000i a.ans = 1.0000

48、+ 1.0000i 3.0000 + 1.0000i 2.0000 + 1.0000i 4.0000 + 1.0000i6. 矩阵的逆矩阵的逆 在在MATLAB中,使用函数中,使用函数inv计算矩阵的逆矩阵。计算矩阵的逆矩阵。A是可逆矩阵的充分必要条件是是可逆矩阵的充分必要条件是|A|0,即可逆矩阵是,即可逆矩阵是非奇异方阵。非奇异方阵。 a=magic(3)a = 8 1 6 3 5 7 4 9 2 inv(a)ans = 0.1472 -0.1444 0.0639 -0.0611 0.0222 0.1056 -0.0194 0.1889 -0.1028 a*inv(a)ans = 1.00

49、00 0.0000 -0.0000 -0.0000 1.0000 0.0000 0.0000 0.0000 1.0000 a(-2)ans = 0.0293 -0.0124 -0.0124 -0.0124 0.0293 -0.0124 -0.0124 -0.0124 0.0293 inv(a2)ans = 0.0293 -0.0124 -0.0124 -0.0124 0.0293 -0.0124 -0.0124 -0.0124 0.02937. 方阵的行列式方阵的行列式 在在MATLAB中,求方阵的行列式的函数是中,求方阵的行列式的函数是det,用法:用法: det (a)。 a=magic(

50、3) a = 8 1 6 3 5 7 4 9 2 det(a) ans = -3608. 矩阵的特征值矩阵的特征值 如果如果AX=X存在非零解向量,则称存在非零解向量,则称为为A的一个特的一个特征值,相应的非零解向量征值,相应的非零解向量X称为与称为与相对应的特征向量。相对应的特征向量。 在在MATLAB中,以函数中,以函数eig计算矩阵的特征值。计算矩阵的特征值。 用法一:用法一: eig(a),把它的特征值以把它的特征值以列向量列向量的形式显的形式显 示出来。示出来。 用法二:用法二:v,d= eig(a),v为特征向量,为特征向量, 21 00 d G=1 2 0; 2 5 -1; 4

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁