




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第2章 MATLAB矩阵及其运算u MATLAB变量和数据操作u MATLAB矩阵及其操作u MATLAB运算与矩阵分析u 字符串、结构数据和单元数据u MATLAB稀疏矩阵及其操作2.1 变量和数据操作2.1.1 变量与赋值1变量命名在MATLAB 中,变量名是以字母开头,后接字母、数字或下划线的字符序列,最多63个字符。在MATLAB中,变量名区分字母的大小写。my_var、myvar12、nu_12nu、NU、nu、Nu2赋值语句(1) 变量=表达式 (2) 表达式其中表达式是用运算符将有关运算量连接起来的式子,其结果是一个矩阵。第2条语句将表达式赋值给系统默认变量ans语句加分号则不显
2、示结果例2-1 计算表达式的值,并显示计算结果。在MATLAB命令窗口输入命令:x=1+2i;y=3-sqrt(17);z=(cos(abs(x+y)-sin(78*pi/180)/(x+abs(y)其中pi和i都是MATLAB预先定义的变量,分别代表代表圆周率和虚数单位。输出结果是:z = -0.3488 + 0.3286i2.1.2 预定义变量在MATLAB工作空间中,还驻留几个由系统本身定义的变量。例如,用pi表示圆周率的近似值,用i,j表示虚数单位。 inf表示无穷大 nargin表示函数输入参数个数预定义变量有特定的含义,在使用时,应尽量避免对这些变量重新赋值。 2.1.3 内存变量
3、的管理1内存变量的删除与修改MATLAB工作空间窗口专门用于内存变量的管理。在工作空间窗口中可以显示所有内存变量的属性。当选中某些变量后,再单击Delete按钮,就能删除这些变量。当选中某些变量后,再单击Open Selection按钮,将进入变量编辑器。通过变量编辑器可以直接观察变量中的具体元素,也可修改变量中的具体元素。 clear命令用于删除MATLAB工作空间中的变量。who和whos这两个命令用于显示在MATLAB工作空间中已经驻留的变量名清单。who命令只显示出驻留变量的名称,whos在给出变量名的同时,还给出它们的大小、所占字节数及数据类型等信息。 2内存变量文件 利用MAT文件
4、可以把当前MATLAB工作空间中的一些有用变量长久地保留下来,扩展名是.mat。MAT文件的生成和装入由save和load命令来完成。常用格式为:save 文件名 变量名表 -append-asciiload 文件名 变量名表 -ascii 其中,文件名可以带路径,但不需带扩展名.mat,命令隐含一定对.mat文件进行操作。变量名表中的变量个数不限,只要内存或文件中存在即可,变量名之间以空格分隔。当变量名表省略时,保存或装入全部变量。-ascii选项使文件以ASCII格式处理,省略该选项时文件将以二进制格式处理。save命令中的-append选项控制将变量追加到MAT文件中。2.1.4 MAT
5、LAB常用数学函数MATLAB提供了许多数学函数,函数的自变量规定为矩阵变量,运算法则是将函数逐项作用于矩阵的元素上,因而运算的结果是一个与自变量同维数的矩阵。 函数使用说明:(1) 三角函数以弧度为单位计算。(2) abs函数可以求实数的绝对值、复数的模、字符串的ASCII码值。(3) 用于取整的函数有fix、floor、ceil、round,要注意它们的区别。(4) rem与mod函数的区别。rem(x,y)和mod(x,y)要求x,y必须为相同大小的实矩阵或为标量。三角函数sin功能:正弦格式:Y=sin(X) 说明:三角函数都是面向阵列中的元素操作的,而且其角度的单位均为弧度。这一点适
6、用于所有的三角函数,以后不再说明。Y=sin(X)可分别得到X的正弦值。abs angle功能:幅值 相角。R=abs(Z) P=angle(Z)P=angle(Z)可得到复数Z的相位角,它处于-, 之间。对于复数Z,可利用abs 和angle函数求取幅值和相角。R=abs(Z)Theta=angle(Z)另外,利用下列语句可恢复复数Z:Z=R.*exp(i*theta) 指数和对数函数:1exp 功能:指数函数。格式: Y=exp(X) exp函数是面向阵列元素的操作,Y=exp(X)可求出以e为底的指数(e=2.7183)。 当X=a+jb时,Y=eX=ea(cos(b)+jsin(b)。
7、例如: X=1+2i 1-2i; 3+4i 3-4i; Y=exp(X)2log功能:自然对数。格式:Y=log(X)说明: Y=log(X)可得到X的自然对数(以e=2.7183为底)3log10功能:常用对数。格式:Y=log10(X)说明:类似于log函数,Y=log10(X)可得到X的常用对数(以10为底),这里不再赘述。4log2 功能:以2为底的对数和将浮点数分解成指数和尾数部分。 格式:Y=log2(X), F,E=log2(X) 说明:Y=log2(X)可计算出X的以2为底的对数。F, E=log2(X)可将X表示成二进制数形式,其中F为小数部分,其值应在0.5, 1之间,而E
8、表示2的整数次幂,因此E应为整数。经过这样分解后,X的每一个分量有: X(i)=F(i)*2E(i) x=34.12 657.32; -56.45 0.00345; f,e=log2(x)f = 0.5331 0.6419 -0.8820 0.8832e = 6 10 6 -8 5pow2功能:求解2的幂和组合成浮点数。格式:X=pow2(Y)X=pow2(F,E) 说明:pow2函数是log2的逆函数。X=pow2(Y)可得到2的Y次幂;X=pow2(F,E)可将以指数和尾数表示的格式转换成浮点数。例如,设已由log2函数得到F,E,可将它们组合成原来的浮点数: x=pow2(f,e) x
9、= 34.1200 657.3200 -56.4500 0.0034 6sqrt功能:平方根。格式:B=sqrt(A)说明:B=sqrt(A)可求出阵列A中每个元素的平方根。1fix功能:朝零方向取整。格式:B=fix(A) b1=fix(0.99), b2=fix(1.01)取整和求余函数取整和求余函数b2 = 1 b1 = 0功能:朝负无穷大方向取整。格式:B=floor(A) b3=floor(-0.5), b4=floor(0.5)2floorb4 = 0 b3 = -1 b5=ceil(-0.5), b6=ceil(0.6)3ceil功能:朝正无穷大方向取整。格式:B=ceil(A)
10、b6 = 1 b5 = 0功能:朝最近整数取整(四舍五入)。格式:B=round(A)4round b7=round(-0.5), b8=round(0.4)b7 = -1b8 = 0 功能:模数(即有符号数的除后余数)。格式:M=mod(X,Y)说明:M=mod(X,Y)可得到(XY)后的余数,一般而言,M=X-Y.*floor(X./Y)。5mod功能:除后余数。格式:R=rem(X,Y)说明:R=rem(X,Y)可得到U(X,Y)的余数,即有R=X-Y.*fix(X./Y)。6rem2.1.5 数据的输出格式 MATLAB用十进制数表示一个常数,具体可采用日常记数法和科学记数法两种表示方
11、法。 在一般情况下,MATLAB内部每一个数据元素都是用双精度数来表示和存储的。数据输出时用户可以用format命令设置或改变数据输出格式。format命令的格式为: format 格式符 其中格式符决定数据的输出格式 输入元素列表。 从外部数据文件中读取矩阵。 利用MATLAB内部函数与工具箱函数产生矩阵。 用户自己编写M文件产生矩阵。2.2 MATLAB矩阵2.2.1 矩阵的建立1直接输入法 最简单的建立矩阵的方法是从键盘直接输入矩阵的元素。具体方法如下:将矩阵的元素用方括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用空格或逗号分隔,不同行的元素之间用分号分隔。A=1,2,3;4
12、,5,6;建立复数矩阵B=1+2*i,2+2*i,0;1,3,2+1*i;R=1,2,0;1,3,2;I=2,2,0;0,0,1;ri=R+i*I2利用M文件建立矩阵 对于比较大且比较复杂的矩阵,可以为它专门建立一个M文件。下面通过一个简单例子来说明如何利用M文件创建矩阵。 例2-2 利用M文件建立MYMAT矩阵。(1) 启动有关编辑程序或MATLAB文本编辑器,并输入待建矩阵: (2) 把输入的内容以纯文本方式存盘(设文件名为mymatrix.m)。 (3) 在MATLAB命令窗口中输入mymatrix,即运行该M文件,就会自动建立一个名为MYMAT的矩阵,可供以后使用。3利用冒号表达式建立
13、一个向量冒号表达式可以产生一个行向量,一般格式是: e1:e2:e3其中e1为初始值,e2为步长,e3为终止值。e2若省略则默认为1a=1:2:6b=2:5 在MATLAB中,还可以用linspace函数产生行向量。其调用格式为: linspace(a,b,n)其中a和b是生成向量的第一个和最后一个元素,n是元素总数。显然,linspace(a,b,n)与a:(b-a)/(n-1):b等价。4建立大矩阵大矩阵可由方括号中的小矩阵或向量建立起来。注意满足维数要求a=1,2;3,4b=2,5;6,7c=a,b;b,a 2.3.3 矩阵的拆分1矩阵元素的引用方式通过下标引用矩阵的元素,例如A(3,2
14、)=200采用矩阵元素的序号来引用矩阵元素。矩阵元素的序号就是相应元素在内存中的排列顺序。在MATLAB中,注意:注意:矩阵元素按列存储,先第一列,再第二列,依次类推。 例如 A=1,2,3;4,5,6; A(3) ans = 2显然,序号(Index)与下标(Subscript )是一一对应的,以mn矩阵A为例,矩阵元素A(i,j)的序号为(j-1)*m+i。其相互转换关系也可利用sub2ind和ind2sub函数求得。size(A)返回矩阵的维数(1)s=size(A),当只有一个输出参数时,返回一个行向量,该行向量的第一个元素时数组的行数,第二个元素是数组的列数。(2)r,c=size(
15、A),当有两个输出参数时,size函数将数组的行数返回到第一个输出变量,将数组的列数返回到第二个输出变量。(3)如果在size函数的输入参数中再添加一项,并用1或2为该项赋值,则 size将返回数组的行数或列数。其中r=size(A,1)该语句返回的时数组A的行数, c=size(A,2) 该语句返回的时数组A的列数。 length(A)返回维数中较大值,length(A)=max(size(A)2利用冒号表达式获得子矩阵A(:,j)表示取A矩阵的第j列全部元素;A(i,:)表示A矩阵第i行的全部元素;A(i,j)表示取A矩阵第i行、第j列的元素。 A(i:i+m,:)表示取A矩阵第ii+m行
16、的全部元素;A(:,k:k+m)表示取A矩阵第kk+m列的全部元素,A(i:i+m,k:k+m)表示取A矩阵第ii+m行内,并在第kk+m列中的所有元素。 此外,还可利用一般向量和end运算符来表示矩阵下标,从而获得子矩阵。end表示某一维的末尾元素下标。3. 利用空矩阵删除矩阵的元素在MATLAB中,定义为空矩阵。给变量X赋空矩阵的语句为X=。 注意,X=与clear X不同,clear是将X从工作空间中删除,而空矩阵则存在于工作空间中,只是维数为0。a=1,2,3,4;5,6,7,8;9,10,11,12a(:,2,4)= %删除第2、4列a=1 3 5 7 9 114改变矩阵的形状 re
17、shape(A,m,n)函数在矩阵总元素保持不变的前提下,将矩阵A重新排成mn的二维矩阵。注意:在MATLAB中,矩阵元素按列存储,即首先存储矩阵的第1列元素,然后存储第2列元素,一直到矩阵的最后一列元素。reshape函数只是改变原矩阵的行数和列数,即改变其逻辑结构,但并不改变原矩阵元素个数及其存储结构。 3.1 特殊矩阵1. 通用的特殊矩阵常用的产生通用特殊矩阵的函数有:zeros:产生全0矩阵(零矩阵)。ones:产生全1矩阵(幺矩阵)。eye:产生单位矩阵。rand:产生01间均匀分布的随机矩阵。randn:产生均值为0,方差为1的标准正态分布随机矩阵。例 分别建立33、32和与矩阵A
18、同样大小的零矩阵。(1) 建立一个33零矩阵。zeros(3) (2) 建立一个32零矩阵。zeros(3,2) (3) 设A为23矩阵,则可以用zeros(size(A)建立一个与矩阵A同样大小零矩阵。A=1 2 3;4 5 6; %产生一个23阶矩阵Azeros(size(A) %产生一个与矩阵A同样大小的零矩阵例 建立随机矩阵:(1) 在区间20,50内均匀分布的5阶随机矩阵。(2) 均值为0.6、方差为0.1的5阶正态分布随机矩阵。命令如下:x=20+(50-20)*rand(5)y=0.6+sqrt(0.1)*randn(5)2用于专门学科的特殊矩阵 (1) 魔方矩阵魔方矩阵有一个有
19、趣的性质,其每行、每列及两条对角线上的元素和都相等。对于n阶魔方阵,其元素由1,2,3,n2共n2个整数组成。MATLAB提供了求魔方矩阵的函数magic(n),其功能是生成一个n阶魔方阵。例 将101125等25个数填入一个5行5列的表格中,使其每行每列及对角线的和均为565。M=100+magic(5) (2) 范得蒙矩阵范得蒙(Vandermonde)矩阵最后一列全为1,倒数第二列为一个指定的向量,其他各列是其后列与倒数第二列的点乘积。可以用一个指定向量生成一个范得蒙矩阵。在MATLAB中,函数vander(V)生成以向量V为基础向量的范得蒙矩阵。例如,A=vander(1;2;3;5)
20、即可得到上述范得蒙矩阵。(3) 希尔伯特矩阵在MATLAB中,生成希尔伯特矩阵的函数是hilb(n)。h(i,j)=1/(i+j-1)使用一般方法求逆会因为原始数据的微小扰动而产生不可靠的计算结果。MATLAB中,有一个专门求希尔伯特矩阵的逆的函数invhilb(n),其功能是求n阶的希尔伯特矩阵的逆矩阵。例 求4阶希尔伯特矩阵及其逆矩阵。命令如下:H=hilb(4)H=invhilb(4)注:3.14 电气2班;3.15 电气3班。 (4) 托普利兹矩阵托普利兹(Toeplitz)矩阵除第一行第一列外,其他每个元素都与左上角的元素相同。生成托普利兹矩阵的函数是toeplitz(x,y),它生
21、成一个以x为第一列,y为第一行的托普利兹矩阵。这里x, y均为向量,两者不必等长。toeplitz(x)用向量x生成一个对称的托普利兹矩阵。例如T=toeplitz(1:6) (5) 伴随矩阵MATLAB生成伴随矩阵的函数是compan(p),其中p是一个多项式的系数向量,高次幂系数排在前,低次幂排在后。例如,为了求多项式的x3-7x+6的伴随矩阵,可使用命令:p=1,0,-7,6;compan(p) 3.2 MATLAB运算 3.2.1 算术运算1基本算术运算 MATLAB的基本算术运算有:(加)、(减)、*(乘)、/(右除)、(左除)、(乘方)。注意,运算是在矩阵意义下进行的,单个数据的算
22、术运算只是一种特例。 (1) 矩阵加减运算 假定有两个矩阵A和B,则可以由A+B和A-B实现矩阵的加减运算。运算规则是:若A和B矩阵的维数相同,则可以执行矩阵的加减运算,A和B矩阵的相应元素相加减。如果A与B的维数不相同,则MATLAB将给出错误信息,提示用户两个矩阵的维数不匹配。 一个标量也可以与矩阵进行加减运算 (2) 矩阵乘法 假定有两个矩阵A和B,若A为mn矩阵,B为np矩阵,则C=A*B为mp矩阵。C=A*B完成矩阵A、B的线性代数积,即 ) j , k(B), i (A) j , i (Cn1k(3) 矩阵除法在MATLAB中,有两种矩阵除法运算:和/,分别表示左除和右除。如果A矩
23、阵是非奇异方阵,则AB和B/A运算可以实现。AB等效于A的逆左乘B矩阵,也就是inv(A)*B,而B/A等效于A矩阵的逆右乘B矩阵,也就是B*inv(A)。 对于含有标量的运算,两种除法运算的结果相同,如3/4和43有相同的值,都等于0.75。又如,设a=10.5,25,则a/5=5a=2.1000 5.0000。对于矩阵来说,左除和右除表示两种不同的除数矩阵和被除数矩阵的关系。对于矩阵运算,一般ABB/A。 (4) 矩阵的乘方 一个矩阵的乘方运算可以表示成Ax,要求A为方阵,x为标量。2点运算 在MATLAB中,有一种特殊的运算,因为其运算符是在有关算术运算符前面加点,所以叫点运算。点运算符
24、有点运算符有.*、./、.和和.。两矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵的维参数相同。.的指数或底也可以是标量x=1:0.1:3y=sin(x).*cos(x)求得y=sin(x)cos(x)的值3.2.2 关系运算 MATLAB提供了6种关系运算符:(小于)、(大于)、=(大于或等于)、=(等于)、=(不等于)。它们的含义不难理解,但要注意其书写方法与数学中的不等式符号不尽相同。 关系运算符的运算法则为: (1) 当两个比较量是标量时,直接比较两数的大小。若关系成立,关系表达式结果为1,否则为0。 (2) 当参与比较的量是两个维数相同的矩阵时,比较是对两矩阵相同位置的元素
25、按标量关系运算规则逐个进行,并给出元素比较结果。最终的关系运算的结果是一个维数与原矩阵相同的矩阵,它的元素由0或1组成。 (3) 当参与比较的一个是标量,而另一个是矩阵时,则把标量与矩阵的每一个元素按标量关系运算规则逐个比较,并给出元素比较结果。最终的关系运算的结果是一个维数与原矩阵相同的矩阵,它的元素由0或1组成。 例 产生5阶随机方阵A,其元素为10,90区间的随机整数,然后判断A的元素是否能被3整除。 (1) 生成5阶随机方阵A。A=fix(90-10)*rand(5)+10) %应该使用四舍五入 round (2) 判断A的元素是否可以被3整除。 P=rem(A,3)=0其中,rem(
26、A,3)是矩阵A的每个元素除以3的余数矩阵。此时,0被扩展为与A同维数的零矩阵,P是进行等于(=)比较的结果矩阵。 3.3 逻辑运算 MATLAB提供了3种逻辑运算符:&(与)、|(或)和(非)。 逻辑运算的运算法则为: (1) 在逻辑运算中,确认非零元素为真,用1表示,零元素为假,用0表示。 (2) 设参与逻辑运算的是两个标量a和b,那么, a&b a,b全为非零时,运算结果为1,否则为0。 a|b a,b中只要有一个非零,运算结果为1。 a 当a是零时,运算结果为1;当a非零时,运算结果为0。 (3) 若参与逻辑运算的是两个同维矩阵,那么运算将对矩阵相同位置上的元素按标量规
27、则逐个进行。最终运算结果是一个与原矩阵同维的矩阵,其元素由1或0组成。 (4) 若参与逻辑运算的一个是标量,一个是矩阵,那么运算将在标量与矩阵中的每个元素之间按标量规则逐个进行。最终运算结果是一个与矩阵同维的矩阵,其元素由1或0组成。 (5) 逻辑非是单目运算符,也服从矩阵运算规则。(6) 在算术、关系、逻辑运算中,算术运算优先级最高,逻辑运算优先级最低。69 A=1 1 ;0 1; b=0; B=0 1;0 0; C1=A&b C2=A|b C3=xor(A,B)逻辑运算符举例逻辑运算符举例例 建立矩阵A,然后找出大于4的元素的位置。(1) 建立矩阵A。A=4,-65,-54,0,6
28、;56,0,67,-45,0 (2) 找出大于4的元素的位置。find(A4)71 逻辑函数在一些应用场合可以方便地查找或者替逻辑函数在一些应用场合可以方便地查找或者替换矩阵中满足一定条件的部分或者所有元素。使换矩阵中满足一定条件的部分或者所有元素。使用过程中只有认真体会每个函数的具体用法、才用过程中只有认真体会每个函数的具体用法、才能在实际应用中灵活应用。能在实际应用中灵活应用。 常用函数:常用函数: all any find isempty isequal 等等 all功能:测试向量所有元素是否为非零。格式:B=all(A)B=all(A,dim) 说明:B=all(A)用于测试矩阵A的所
29、有元素是否非零或是否为逻辑真(1)。当A为向量时,all(A)在A所有元素非零时得到逻辑真,当A有一个或多个零元素时得到逻辑假(0)。当A为矩阵时,all(A)将A的列当作向量,得到0、1构成的行向量。B=all(A,dim)可测试沿着指定维dim上的逻辑条件。any 功能:测试任意非零值。格式:B=any(A) B=any(A,dim) B=any(A)可测试沿着阵列的各个维中的任意元素是否有非零值或逻辑真(1)。 当A为向量时,如果A中有任意元素为非零时,则得到逻辑真;否则当所有元素为零时,得到逻辑假。当A为矩阵时,将A中的列当作向量,得到由0、1构成的行向量。 find 功能:查找非零元
30、素的值和下标。格式:k=find(X) i,j=find(X) k=find(X)可在阵列X中找出非零元素的下标。如果X为全零阵列,则得到一个空阵列。i,j=find(X)可在矩阵X中找出非零元素的行列下标,这一功能经常用于稀疏矩阵中。A=1 3 5;5 6 7k=find(A4)k= 2 4 5 6A(k)is*函数 在TF=isfinite(A)中,可得到一个与A同维数同维数的结果阵列。当A的元素为有限值时,相应的结果元素为逻辑真;否则当A的元素为无穷或NaN时,相应的结果元素为逻辑假。对任意阵列A,isinf(A)和isnan(A)函数相同,它与isfinite(A)函数非常类似。76关
31、系运算符举例关系运算符举例 求矩阵求矩阵A中等于中等于2的元素个数。的元素个数。 A=1 2 ;2 3; B=A=2 n=sum(sum(B) 判断矩阵判断矩阵A中是否含有不能被中是否含有不能被3整除的元素整除的元素 A=3 9 ;2 3; B=rem(A,3); %或者或者B=mod(A,3); C=isempty(B);% 或者或者C=B=0;此处涉及运算优先级的问题77逻辑函数举例逻辑函数举例1 1 a=1 3 5; A=1 2 3 ;0 4 5; B1=all(a) %判断向量判断向量a中的每个元素是否中的每个元素是否 为非零数为非零数 B2=all(A) %将矩阵将矩阵A按列进行操作
32、按列进行操作 B3=all(A,2) %将指定的第将指定的第2维作为向量进维作为向量进 行运算行运算 注:3.17 电气13178逻辑函数举例逻辑函数举例2 2 a=0 3 0; A=1 0 3 ;0 0 5; B1=any(a) B2=any(A) B3=any(A,2) 79逻辑函数举例逻辑函数举例3 3 A=1.2 0 3.5 ;0 0 5.4; k=find(A) %标识按列进行,即从第标识按列进行,即从第1列开始依次数下去列开始依次数下去 i,j=find(A) % i表示行标,表示行标,j表示列标表示列标 i,j,v=find(A) % v为相应的非零元素的值为相应的非零元素的值
33、I = FIND(X) returns the linear indices corresponding to the nonzero entries of the array X. 80逻辑函数举例逻辑函数举例4 4建立矩阵建立矩阵A A如下,然后找出大于如下,然后找出大于4 4的元素的位置。的元素的位置。(1 1)建立矩阵)建立矩阵A A。 A=4,-65,-54,0,6;56,0,67,-45,0(2 2)找出大于)找出大于4 4的元素的位置。的元素的位置。 find(A4)81逻辑函数举例逻辑函数举例5 5判断矩阵判断矩阵A A与与B B,矩阵,矩阵A A与与C C是否相等。是否相等。
34、A=0.34 0.6;B=0.34 ;0.6;C=who;isequal(A,B)isequal(A,C) 3.4 矩阵分析3.4.1 对角阵与三角阵1对角阵只有对角线上有非0元素的矩阵称为对角矩阵,对角线上的元素相等的对角矩阵称为数量矩阵,对角线上的元素都为1的对角矩阵称为单位矩阵。(1) 提取矩阵的对角线元素设A为mn矩阵,diag(A)函数用于提取矩阵A主对角线元素,产生一个具有min(m,n)个元素的列向量。diag(A)函数还有一种形式diag(A,k),其功能是提取第k条对角线的元素。k为正则取主对角线上第k条对角线,k为负则取下方第k条对角线。(2) 构造对角矩阵设V为具有m个元
35、素的向量,diag(V)将产生一个mm对角矩阵,其主对角线元素即为向量V的元素。diag(V)函数也有另一种形式diag(V,k),其功能是产生一个nn(n=m+k)对角阵,其第k条对角线的元素即为向量V的元素。例 先建立55矩阵A,然后将A的第一行元素乘以1,第二行乘以2,第五行乘以5。A=17,0,1,0,15;23,5,7,14,16;4,0,13,0,22;10,12,19,21,3;.11,18,25,2,19;D=diag(1:5);D*A %用D左乘A,对A的每行乘以一个指定常数2三角阵三角阵又进一步分为上三角阵和下三角阵,所谓上三角阵,即矩阵的对角线以下的元素全为0的一种矩阵,
36、而下三角阵则是对角线以上的元素全为0的一种矩阵。(1) 上三角矩阵求矩阵A的上三角阵的MATLAB函数是triu(A)。triu(A)函数也有另一种形式triu(A,k),其功能是求矩阵A的第k条对角线以上的元素。例如,提取矩阵A的第2条对角线以上的元素,形成新的矩阵B。(2) 下三角矩阵在MATLAB中,提取矩阵A的下三角矩阵的函数是tril(A)和tril(A,k),其用法与提取上三角矩阵的函数triu(A)和triu(A,k)完全相同。3.4.2 矩阵的转置与旋转1矩阵的转置转置运算符是单撇号()。2矩阵的旋转利用函数rot90(A,k)将矩阵A逆时针旋转90的k倍,当k为1时可省略。注
37、: 3.22 电气1333矩阵的左右翻转对矩阵实施左右翻转是将原矩阵的第一列和最后一列调换,第二列和倒数第二列调换,依次类推。MATLAB对矩阵A实施左右翻转的函数是fliplr(A)。4矩阵的上下翻转MATLAB对矩阵A实施上下翻转的函数是flipud(A)。2.4.3 矩阵的逆与伪逆1矩阵的逆对于一个方阵A,如果存在一个与其同阶的方阵B,使得:AB=BA=I (I为单位矩阵)则称B为A的逆矩阵,当然,A也是B的逆矩阵。求一个矩阵的逆是一件非常烦琐的工作,容易出错,但在MATLAB中,求一个矩阵的逆非常容易。求方阵A的逆矩阵可调用函数inv(A)。例 用求逆矩阵的方法解线性方程组。Ax=b 其解为:x=A-1bA=1 2 3;1 4 9;1 8 27;b=5 -2 6;x=inv(A)*b2矩阵的伪逆如果矩阵A不是一个方阵,或者A是一个非满秩的方阵时,矩阵A没有逆矩阵,但可以找到一个与A的转置矩阵A同型的矩阵B,使得:ABA=ABAB=B此时称矩阵B为矩阵A的伪逆,也称为广义逆矩阵。在MATLAB中,求
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 政府干预与市场机制的平衡策略试题及答案
- 2025年软件设计师考试总结与反思的必要性试题及答案
- 2025年软考网络工程师关注重点试题及答案
- 新能源微电网稳定性控制与智能优化运行模式研究报告
- 历史文化名城行业深度调研及发展项目商业计划书
- 玻璃工艺与吹制体验课企业制定与实施新质生产力项目商业计划书
- 民俗文化儿童乐园企业制定与实施新质生产力项目商业计划书
- 独立音乐厂牌行业深度调研及发展项目商业计划书
- 智能水下仿生推进器企业制定与实施新质生产力项目商业计划书
- 别墅定制工程企业制定与实施新质生产力项目商业计划书
- 建设工程法规考试题真题及答案
- 中国盐业集团有限公司所属企业招聘笔试题库2025
- 2024年江苏省泰兴市事业单位公开招聘教师岗考试题带答案分析
- Q-GDW 10393.1-2024 变电站设计规范-第1部分:35kV变电站
- (人教2024版)英语七下期末全册分单元总复习课件(新教材)
- 2025年市场营销专业人才考核试题及答案
- 防范恶劣天气安全教育
- 第七章邮轮游客投诉心理及处理技巧46课件
- 深圳市住房公积金管理中心员额人员招聘真题2024
- 梅州市大埔县客家围屋小学-携数同行静待花开-二年级下册数学家长会【课件】
- 耳鼻喉护理学试题及答案
评论
0/150
提交评论