1、2019/5/31,黄建华制作,0,(一)MATLAB基础知识,MATLAB简介 MATLAB主要特点 MATLAB启动与退出 MATLAB帮助系统 MATLAB入门,2019/5/31,黄建华制作,1,1.1 MATLAB简介,美国 Mathworks公司推出了MATLAB以其强大的功能和易用性受到越来越多的科技工作者的欢迎. MATLAB由主包和功能各异的工具箱组成,其基本数据结构是矩阵. MATLAB具有非常强大的计算功能,其巳成为世界上应用最广泛的工程计算应用软件之一,2019/5/31,黄建华制作,2,1.2 MATLAB主要特点,1)语言简洁紧凑,使用方便灵活,库函数极其丰富。 2
2、)运算符丰富。 3)MATLAB既具有结构化的控制语句(如for循环,while循环,break语句和if语句),又有面向对象编程的特性。 4)程序限制不严格,程序设计自由度大。例如,在MATLAB里,用户无需对矩阵预定义就可使用。,2019/5/31,黄建华制作,3,1.2 MATLAB主要特点,5)程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。 6)MATLAB的图形功能强大, MATLAB还具有较强的编辑图形界面的能力。 7)功能强大的工具箱是MATLAB的另一特色。其工具箱分为两类:功能性工具箱和学科性工具箱。 8)源程序的开放性。用户可通过对源文件的修改
3、以及加入自己的文件构成新的工具箱。,2019/5/31,黄建华制作,4,1.3 MATLAB的启动与退出,MATLAB系统的启动MATLAB 集成环境MATLAB系统的退出,2019/5/31,黄建华制作,5,1.3.1 MATLAB的启动,与一般的Windows程序一样,启动MATLAB系统有2种常见方法: (1)使用Windows“开始”菜单。 指向“开始” “程序” “MATLAB” (2) 利用快捷方式。双击桌面上MATLAB图标启动,2019/5/31,黄建华制作,6,1.3.2 MATLAB集成环境,启动MATLAB后,将进入MATLAB 集成环境。MATLAB 集成环境一般包括:
4、MATLAB主窗口、命令窗口(Command Window)、工作空间窗口(Workspace)、命令历史窗口(Command History)、当前目录窗口(Current Directory)和启动平台窗口(Launch Pad)。启动界面如下图所示:,2019/5/31,黄建华制作,7,MATLAB启动界面:,2019/5/31,黄建华制作,8,1.3.2 MATLAB集成环境,MATLAB主窗口MATLAB的主要工作界面。主窗口除了嵌入一些子窗口外,还主要包括菜单栏和工具栏。 菜单栏 MATLAB 6.5菜单栏包含File、Edit、View、Web、Window和Help 6个菜单项
5、。,2019/5/31,黄建华制作,9,1.3.2 MATLAB集成环境,(1) File菜单项:File菜单项实现有关文件的操作。 (2) Edit菜单项:Edit菜单项用于命令窗口的编辑操作。 (3) View菜单项:View菜单项用于设置MATLAB集成环境的显示方式。,2019/5/31,黄建华制作,10,1.3.2 MATLAB集成环境,(4) Web菜单项:Web菜单项用于设置MATLAB的Web操作。 (5) Window菜单项:主窗口菜单栏上的Window菜单,只包含一个子菜单Close all,用于关闭所有打开的编辑器窗口,包括M-file、Figure、Model和GUI窗
6、口。 (6) Help菜单项:Help菜单项用于提供帮助信息。,2019/5/31,黄建华制作,11,1.3.2 MATLAB集成环境,工具栏 MATLAB 6.5主窗口的工具栏共提供了10个命令按钮。这些命令按钮均有对应的菜单命令,但比菜单命令使用起来更快捷、方便。,2019/5/31,黄建华制作,12,1.3.2 MATLAB集成环境,命令窗口MATLAB的主要交互窗口,用于输入命令并显示除图形以外的所有执行结果。 MATLAB命令窗口中的“”为命令提示符,表示MATLAB正在处于准备状态。在命令提示符后键入命令并按下回车键后,MATLAB就会解释执行所输入的命令,并在命令后面给出计算结果
7、。,2019/5/31,黄建华制作,13,1.3.2 MATLAB集成环境,命令历史记录窗口 在默认设置下,历史记录窗口中会自动保留自安装起所有用过的命令的历史记录,并且还标明了使用时间,从而方便用户查询。而且,通过双击命令可进行历史命令的再运行。如果要清除这些历史记录,可以选择Edit菜单中的Clear Command History命令。,2019/5/31,黄建华制作,14,1.3.2 MATLAB集成环境,启动平台窗口和Start按钮 MATLAB 6.5的启动平台窗口可以帮助用户方便地打开和调用MATLAB的各种程序、函数和帮助文件。 MATLAB 6.5主窗口左下角还有一个Star
8、t按钮,单击该按钮会弹出一个菜单,选择其中的命令可以执行MATLAB产品的各种工具,并且可以查阅MATLAB包含的各种资源。,2019/5/31,黄建华制作,15,1.3.3 MATLAB的退出,要退出MATLAB系统,也有3种常见方法:(1) 在MATLAB主窗口File菜单中选择Exit MATLAB命令。 (2) 在MATLAB命令窗口输入Exit或Quit命令。 (3) 单击MATLAB主窗口的“关闭”按钮。,2019/5/31,黄建华制作,16,1.4 MATLAB的帮助系统,帮助窗口 进入帮助窗口可以通过以下3种方法: (1) 单击MATLAB主窗口工具栏中的Help按钮。 (2)
9、 在命令窗口中输入helpwin、helpdesk或doc。 (3) 选择Help菜单中的“MATLAB Help”选项。,2019/5/31,黄建华制作,17,1.4 MATLAB的帮助系统,帮助命令 MATLAB帮助命令包括help、lookfor以及模糊查询。 1help命令 在命令窗口中直接输入help命令将会显示当前帮助系统中所包含的所有项目,即搜索路径中所有的目录名称。同样,可以通过help加函数名来显示该函数的帮助说明。,2019/5/31,黄建华制作,18,1.4 MATLAB的帮助系统,2lookfor命令 help命令只搜索出那些关键字完全匹配的结果。lookfor命令对搜
10、索范围内的M文件进行关键字搜索,条件比较宽松。 lookfor命令只对M文件的第一行进行关键字搜索。若在lookfor命令加上-all选项,则可对M文件进行全文搜索。,2019/5/31,黄建华制作,19,1.4 MATLAB的帮助系统,3模糊查询 MATLAB 6.0以上的版本提供了一种类似模糊查询的命令查询方法,用户只需要输入命令的前几个字母,然后按Tab键,系统就会列出所有以这几个字母开头的命令。,2019/5/31,黄建华制作,20,1.4 MATLAB的帮助系统,演示系统 在命令窗口输入Demos,或者选择主窗口Help菜单中的Demos子菜单,打开演示系统。,2019/5/31,黄
11、建华制作,21,1.5 MATLAB入门,常量、变量 数据类型 运算符与操作符 工作区操作命令 矩阵及其运算 常用函数,2019/5/31,黄建华制作,22,1.5.1常量与变量,常量MATLAB使用下列名字表示常量: exp 指数e i或j 虚数单位 pi inf 正无穷大 eps 无穷小的正数或机器的浮点运算误差限 nan 不定式 lasterr 存放最新的错误信息 lastwarn 存放最新的警告信息 应避免取与常量同名的变量。,2019/5/31,黄建华制作,23,1.5.1常量与变量,变量MATLAB变量命名的规则:(1)第一个字母必须是英文字母 (2)字母间不可留空格 (3)最多只
12、能有31个字符,MATLAB会忽略多馀字母 (4)大小写不同MATLAB变量可以通过赋值方式来定义。方式1:赋值变量=赋值表达式 例如:b=0.2222,则定义一个变量b,它的值为0.2222。变量可以通过重新赋值方式来覆盖。方式2:返回变量列表=函数名(输入变量列表) 例如:u,v =max(X),返回数组X的最大值u和位置v。,2019/5/31,黄建华制作,24,1.5.2数据类型,MATLAB中的数据一般分为:数值型数据、字符型数据、符号型数据和类与对象等格式。我们只针对前三项进行说明。 数值量和数据格式显示 在缺省情况下,当结果是整数时,MATLAB将它作为整数显示;当结果是实数,M
13、ATLAB以小数点后4位的精度近似显示。如果结果中的有效数字超出了这一范围,MATLAB以科学计数法来显示结果。对MATLAB中的数值数据,可以根据下表中的命令调整显示格式:,2019/5/31,黄建华制作,25,1.5.2数据类型,常用命令: 说明 例:a=1/3 format short 显示小数点后4位(缺省值) 0.3333 format long 显示14位 0.33333333333333 format bank 显示小数点后2位 0.33 format + 显示+,-,0 + format short e 5位科学记数法 3.3333e-001 format long e 16位
14、科学记数法 3.333333333333333e-001 format rat 最接近的有理数显示 1/3,2019/5/31,黄建华制作,26,1.5.2数据类型,MATLAB还可以使用变精度算法函数vpa(变量名,n)将数据以指定的精度显示出来。例1.5.1:(1)a=1/3;vpa(a,15) ans =.333333333333333(2)B=vpa(a, 5);B B =.33333当不指定n时,以默认的32位显示数据。,2019/5/31,黄建华制作,27,1.5.2数据类型,字符型 在MATLAB的编程中,我们还会用到字符变量和字符串变量,在定义字符变量时,必须将字符内容用单引号
15、括起来。 在定义字符串矩阵变量时,要求每行的字符串数和字符总数必须相等。 常用字符串操作命令:,2019/5/31,黄建华制作,28,1.5.2数据类型,Eval(字符串表达式)-将字符串表达式当作命令执行 Int2str(A)-将整数(组)A转换为字符串格式 num2str(A)-将浮点数(组)A转换为字符串格式 str2num (s)-将字符串(矩阵)s转换为浮点数格式,2019/5/31,黄建华制作,29,1.5.2数据类型,例1.5.2(1)s=612+215;eval(s) Ans= 827(2)a=234;b=567; disp(Int2str(a), ,Int2str(b) An
16、s= 234567 (3)s1=234;s2=567; str2num(s1) +str2num (s2) Ans= 801,2019/5/31,黄建华制作,30,1.5.2数据类型,符号型 符号型变量可以用于公式推导和数学问题的解析解法,进行解析运算前需要首先将采用的变量申明为符号变量。 格式1:syms 变量名1 变量名2 - 说明:可以申明多个符号变量,中间用空格隔开,而不能用逗号。 格式2:f=sym(s ) -把s转换成符号变量 命令:subs(s,old,new)-用新变量new替换s中的变量old,2019/5/31,黄建华制作,31,1.5.2数据类型,例1.5.3 程序: c
17、lear; syms a x b f=a*x+b %创建了函数 f =a*x+b a=10;b=1;x=0.1;subs(f) %将前面变量值代入函数 f Ans= 2 x=2*pi ;a=2;b=0; %给自变量赋值 eval( f ) %求函数值: f (2) Ans= 12.5664,2019/5/31,黄建华制作,32,1.5.2数据类型,多维数组 假设若干个维数相同的矩阵A1,A2,.,Am一页一页地叠起来,就可以构成一个三维数组。例:a1=1,2,3;4,5,6;7,8,9;a2=a1;a3=a1-a2;a4(:,:,1)=a1;a4(:,:,2)=a2;a4(:,:,3)=a3;
18、a4则a4就是一个三维数组,它的元素一一显示。多维数组函数A=cat(n,A1,A2,.,Am) 其中n=1表示A=A1;A2;.;Am, n=2表示A=A1,A2,.,Am, n=3表示A(:,:,i)=Ai,A是一个三维数组。,2019/5/31,黄建华制作,33,1.5.2数据类型,单元结构 相当于集合,集合中的元素可以具有不同的属性。 例:b=1,张,180,80,75,78b = 1 张 180 1x3 doublesize(b)ans= 1 4引用b的数据 b4ans =80 75 78 不能用()引用数据,与矩阵不同。可以用celldisp()显示整个单元。要消除b的某个元素,可
19、以用: b(3)=;b b = 1 张 1x3 double 注意不能用b3=,否则只是将第三个单元置换为。b = 1 张 1x3 double,2019/5/31,黄建华制作,34,1.5.3运算符与操作符,运算符MATLAB的运算符可以分为三大类别。1、算术运算符算术运算符是构成运算的最基本的操作命令,可以在 MATLAB的命令窗口中直接运行。如下表所示:,2019/5/31,黄建华制作,35,1.5.3运算符与操作符,2019/5/31,黄建华制作,36,1.5.3运算符与操作符,2、关系运算符关系运算符主要用以比较数、字符串、矩阵之间的大小或不等关系,其返回值为0或1。当返回值为1,表
20、示比较的两个对象关系为真;否则表示关系为假。关系运算符如下表所示:,2019/5/31,黄建华制作,37,1.5.3运算符与操作符,2019/5/31,黄建华制作,38,1.5.3运算符与操作符,3、逻辑运算符MATLAB中有4种基本的逻辑运算符:&(与)、|(或)、(非)和XOR(异或)。逻辑表达式和逻辑函数的值应该为一个逻辑量“真”或“假”,其中以0代表“假”,任意非0数代表“真”。说明:a&b=and(a,b), a|b=or(a,b), a=not(a),2019/5/31,黄建华制作,39,1.5.3运算符与操作符,例1.5.4 程序: a=10;b=4;A=4,5,6;B=2,3,
21、4 (1) A+B = 6,8,10 (2) A*B = 错误 , A.*B = 8 ,15, 24 (3) A.B = 16 125 1296 (4) b*A = 16 20 24 (5) ab = 0.4000 % ab=b 除 aa/b = 2.5000 % a/b=a 除 b (6) A2 = 1 1 1 (7)c=0,1,1,0;d=1,1,0,0; c&d = 0 1 0 0 c|d = 1 1 1 0 c= 1 0 0 1 xor(c,d) = 1 0 1 0,2019/5/31,黄建华制作,40,1.5.3运算符与操作符,find()函数的使用功能:查询满足某关系的数组下标,用
22、法: 例:a= 1,5,4;6,3,9;2,8,7;c=find(a=4)c= 2 4 6 7 8 9 %返回将a按列编序后符合条件的位置 i,j=find(a=4) %返回符合条件的每个元素的行列位置 a(c)=0 %将c对应的元素赋值为0a = 1 0 00 3 02 0 0,2019/5/31,黄建华制作,41,1.5.3运算符与操作符,操作符MATLAB的操作符主要为以下4种: (1)冒号“:” -用法说明: m:j:n 产生一个步长为j的数组,当j=1时缺省为m:n 。 M(:,J) 取矩阵M的第j列, M(i,:)取第i行 。 (2)百分号“%” -在编程时引导注释行 (3)连续点
23、“” - 换行继续写同一条命令的后续部分 (4)分号“;” - 在矩阵中表示一行的结束,在命令语句后表示不显示命令的执行结果。,2019/5/31,黄建华制作,42,1.5.4工作区操作命令,1.有关命令行环境的一些操作: (1) clc 擦去一页命令窗口,光标回屏幕左上角 (2) clear 从工作空间清除所有变量 (3) clear all 从工作空间清除所有变量和函数 (4) who 列出当前工作空间中的变量 (5) whos 列出当前工作空间中的变量及信息 (6) delete 从磁盘删除指定文件 (7) which 查找指定文件的路径 (8) clf 清除图形窗口内容 (9) cla
24、 清除图形窗口坐标,2019/5/31,黄建华制作,43,1.5.4工作区操作命令,(10) save name 保存工作空间变量到文件name.mat (11) load name 下载name.mat文件到工作区type name.m 在工作空间查看name.m文件内容what 列出当前目录下的m文件和mat文件dir 列出当前目录下的所有文件cd 显示当前的工作目录,2019/5/31,黄建华制作,44,1.5.4工作区操作命令,2.有关快捷键的一些操作: Ctrl+p 调用上一次的命令 Ctrl+n 调用下一行的命令 Ctrl+b 退后一格 Ctrl+f 前移一格 Home Ctrl+
25、a 光标移到行首 End Ctrl+e 光标移到行尾 Esc Ctrl+u 清除一行 Backspace Ctrl+h 清除光标前字符Ctrl+k 清除光标至行尾字Ctrl+c 中断程序运行,2019/5/31,黄建华制作,45,1.5.5矩阵及其运算,MATLAB的主要数据对象是矩阵。标量、数组、行向量、列向量都是它的特例,MATLAB最基本的功能是进行矩阵运算。本节将介绍以下内容:,2019/5/31,黄建华制作,46,1.5.5矩阵及其运算,矩阵的生成 矩阵的运算,2019/5/31,黄建华制作,47,1.5.5.1矩阵的生成,直接输入 函数或语句输入 M-文件生成,2019/5/31,
26、黄建华制作,48,1.5.5.1矩阵的生成,直接输入 (1) 实数值矩阵输入 不管是任何矩阵(向量),我们可以直接按行方式输入每个元素:同一行中的元素用逗号“,”或者用空格符来分隔,且空格个数不限;不同的行用分号”;” 分隔。所有元素处于一方括号( )内;如: 例1.5.5 Data = 2.32 3.43;4.37 5.98 回车 Data =2.43 3.434.37 5.98 M = %生成一个空矩阵,2019/5/31,黄建华制作,49,1.5.5.1矩阵的生成,(2) 复数矩阵输入 第1种方式 例1.5.6 a=2.7;b=13/25; C=1,2*a+i*b; sin(pi/4),
27、3.5+i*a C=1.0000 5.4000 + 0.52000.7071 3.5000 + 2.7000i,2019/5/31,黄建华制作,50,1.5.5.1矩阵的生成,(2) 复数矩阵输入 第2种方式 例1.5.7 R=1 2 3;4 5 6, M=11 12 13;14 15 16 R = M =1 2 3 11 12 134 5 6 14 15 16 CN=R+i*M, format rat CN = 1 + 11i 2 + 12i 3 +13i 4 + 14i 5 + 15i 6 +16i,2019/5/31,黄建华制作,51,1.5.5.1矩阵的生成,函数或语句输入 (1) 特
28、殊矩阵的生成 函数 zeros - 全零阵 格式 B = zeros(n) %生成nn全零阵 B = zeros(m,n) %生成mn全零阵 B = zeros(size(A) %生成与矩阵A相同大小的全零阵 函数 eye -单位阵 格式 Y = eye(n) %生成nn单位阵 Y = eye(m,n) %生成mn单位阵 Y = eye(size(A) %生成与A相同大小的单位阵,2019/5/31,黄建华制作,52,1.5.5.1矩阵的生成,函数 ones -全1阵 格式 Y = ones(n) %生成nn全1阵 Y = ones(m,n) %生成mn全1阵 Y = ones(size(A)
29、 %生成与A相同大小的全1阵 函数 rand -均匀分布随机矩阵 格式 Y = rand(n) %生成nn随机矩阵,其元素在(0,1)内 Y = rand(m,n) %生成mn随机矩阵 Y = rand(size(A) %生成与A相同大小的随机矩阵 rand %无变量输入时只产生一个随机数,2019/5/31,黄建华制作,53,1.5.5.1矩阵的生成,函数 randn -标准正态分布随机矩阵命令 函数randperm(n) -产生1n之间整数的随机排列 函数 linspace -产生线性等分向量 格式: y = linspace(a,b) %在(a, b)上产生100个线性等分点 y = l
30、inspace(a,b,n) %在(a, b)上产生n个线性等分点 函数 blkdiag -产生对角矩阵 格式: out = blkdiag(a,b,c,d,) %产生以a,b,c,d,为对角线元素的矩阵 函数 magic -Magic(魔方)矩阵 格式 M = magic(n) %产生n 阶魔方矩阵,2019/5/31,黄建华制作,54,1.5.5.1矩阵的生成,例1.5.8 (1)产生一个在区间10, 20内均匀分布的4阶随机矩阵 解: a=10;b=20; x=a+(b-a)*rand(4) (2)产生均值为0.6,方差为0.1的4阶矩阵 解: mu=0.6; sigma=0.1 x=m
31、u+sqrt(sigma)*randn(4) (3)产生以1,2,3,4为对角线元素的矩阵 解: out = blkdiag(1,2,3,4),2019/5/31,黄建华制作,55,1.5.5.1矩阵的生成,例1.5.9 设有分块矩阵其中,E,R,O,S分别为单位阵、随机阵、零阵和对角阵,试通过数值计算验证:,2019/5/31,黄建华制作,56,1.5.5.1矩阵的生成,解:E=eye(3);R=randn(3,2);O=zeros(2,3);S=blkdiag(1,2); A=E,R;O,S,B=A2;C=E,R+R*S;O,S2; B=C ans =1 1 1 1 1 %全1表示B和C相
32、等,即验证1 1 1 1 1 成立1 1 1 1 11 1 1 1 11 1 1 1 1,2019/5/31,黄建华制作,57,1.5.5.1矩阵的生成,(2) 矩阵的抽取和裁剪 函数 diag -矩阵对角线元素的抽取 格式 X = diag(v,k) %以向量v的元素作为矩阵X的第k条对角线元素,当k=0时,v为X的主对角线,k可省略;当k0时,v为上方第k条对角线;当k0:抽取上方第k条对角线元素;k0抽取下方第k条对角线元素。,2019/5/31,黄建华制作,58,1.5.5.1矩阵的生成,例1.5.10 v=1 2 3; x=diag(v,-1) x =0 0 0 01 0 0 00
33、2 0 00 0 3 0 A=1 2 3;4 5 6;7 8 9; v=diag(A,1) v =26,2019/5/31,黄建华制作,59,1.5.5.1矩阵的生成,(2) 矩阵的抽取和裁剪 函数tril - 取下三角部分 格式 L = tril(X) %抽取X的主对角线的下三角部分构成矩阵L L = tril(X,k) %抽取X的第k条对角线的下三角部分,k=0为主对角线;k0为主对角线以上;k0为主对角线以下。 函数 triu - 取上三角部分,用法同上。,2019/5/31,黄建华制作,60,1.5.5.1矩阵的生成,例1.5.11 A=ones(4) ; %产生4阶全1阵 L=tri
34、l(A,1) %取下三角部分 L =1 1 0 01 1 1 01 1 1 11 1 1 1 U=triu(A,-1) %取上三角部分 U = ?,2019/5/31,黄建华制作,61,1.5.5.1矩阵的生成,(2) 矩阵的抽取和裁剪 矩阵元素的抽取、修改和拼接 例1.5.12 A=1 2 3;4 5 6;7 8 9; A(2,3) = 5 % 改变位於第二行,第三列的元素值 B = A(2,1:3) % 取出A的部份构成矩阵B B = 4 5 5 C = A(:,1) % 取出A的部份构成矩阵C C = 1 4 7 A = A B % 将B转置後以列向量并入A 将几个矩阵接在一起称为拼接,
35、左右拼接时行数要相同,上下拼接时列数要相同。,2019/5/31,黄建华制作,62,1.5.5.1矩阵的生成,(2) 矩阵的抽取和裁剪 矩阵元素的抽取、修改和拼接 例1.5.13 A=1 2 3;4 5 6;7 8 9; A(:, 2) = % 删除第二列(:代表所有行) A(3, 4) =1 A = 1 3 0 04 6 0 07 9 0 1 原来的A没有第三、四列,修改后MATLAB自动增加行列数,对未输入的元素赋值0。,2019/5/31,黄建华制作,63,1.5.5.1矩阵的生成,(3) 矩阵的变向 函数 rot90 (A,k) %将矩阵A逆时针方向旋转(k90) k可取正负整数, K
36、=1时缺省。 函数 fliplr(A) %将矩阵A左右翻转函数 flipud(A) %将矩阵A上下翻转,2019/5/31,黄建华制作,64,1.5.5.1矩阵的生成,M-文件生成对于大型矩阵,一般创建M文件,或用文本编辑器编辑,以便于修改,在此不给以介绍。,2019/5/31,黄建华制作,65,1.5.5.2矩阵的运算,加、减运算 A+B、A-B 乘法 A*B 数乘矩阵k*A 矩阵乘方 Ak 矩阵转置 A 方阵的行列式 det(A) 方阵的逆 inv(A),矩阵的迹 矩阵的范数 矩阵的秩 rank (A) 矩阵除法运算 特征值和特征向量 正交基 特殊运算,2019/5/31,黄建华制作,66
37、,1.5.5.2矩阵的运算,矩阵的迹 格式 : b=trace (A) %返回矩阵A的迹,即A的对角线元素之和。 矩阵的范数 格式 : n = norm(A) = norm(A,2) %求矩阵A的谱范数n = norm(A,1) %求A的列和范数n = norm(A,inf) %求行和范数,2019/5/31,黄建华制作,67,1.5.5.2矩阵的运算,矩阵除法运算 Matlab提供了两种除法运算:左除()和右除(/)。一般情况下,x=ab是方程a*x =b的解,称为a左除b,而x=b/a是方程x*a=b的解,称为a右除b。 如果a为非奇异矩阵,则ab和b/a可通过a的逆矩阵与b阵得到:ab
38、= inv(a)*bb/a = b*inv(a),2019/5/31,黄建华制作,68,1.5.5.2矩阵的运算,特征值和特征向量 格式:d = eig(A) %求矩阵A的特征值d,以向量形式存放d。 V,D = eig(A) %计算A的特征值对角阵D和特征向量V,使AV=VD成立。 正交基 格式 B=orth(A) %将矩阵A正交规范化,B的列与A的列具有相同的空间,B的列向量是正交向量,且满足:B*B = eye(rank(A)。,2019/5/31,黄建华制作,69,1.5.5.2矩阵的运算,标量和数组(或向量)的运算 标量与数组(或向量)的加(+)、减(-)、乘(*)、除(/)的运算,以及点乘方(.)运算,表示标量与数组(或向量)的每个元素的运算 。 数组和数组(或向量)的运算 当两个数组具有同样大小时,加(+)、减(-)、点乘(.*)、点除(./)以及点乘方(.)运算,表示数组与数组对应元素间的运算。 在下节作图编程中经常碰到。,2019/5/31,黄建华制作,70,1.5.6 常用函数,数学函数,自然对数,2的乘幂,复数幅角,共轭,向负无穷方向取整,向0方向取整,向上取整,2019/5/31,黄建华制作,71,1.5.6 常用函数,向量函数,2019/5/31,黄建华制作,72,1.5.6 常用函数,矩阵函数,