《MATLAB数值计算 (2).ppt》由会员分享,可在线阅读,更多相关《MATLAB数值计算 (2).ppt(130页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第2 2章章 MATLAB MATLAB数值计算数值计算2.1 2.1 变量与数据变量与数据2.2 2.2 矩阵与数组矩阵与数组2.3 2.3 矩阵与数组运算矩阵与数组运算2.4 2.4 多项式运算多项式运算1第第2 2章章 MATLAB MATLAB数值计算数值计算2.1 2.1 变量与数据变量与数据2.1.1 2.1.1 2.1.1 2.1.1 数据数据数据数据数据的表达方式:数据的表达方式:采用十进制表示采用十进制表示 矩阵和数组的概念矩阵和数组的概念:标量:是指标量:是指11的矩阵,即为只含的矩阵,即为只含1个数的矩阵。个数的矩阵。向量:是指向量:是指1n或或n1的矩阵,即为只含的矩
2、阵,即为只含1行或行或1列的矩阵列的矩阵矩阵:是矩阵:是1个矩形的数组,即二维数组,其中向量和标量都是矩阵个矩形的数组,即二维数组,其中向量和标量都是矩阵的特例数组:是指的特例数组:是指n维数组,为矩阵的延伸,其中矩阵和向量都是维数组,为矩阵的延伸,其中矩阵和向量都是数组的特例。数组的特例。复数:复数:由实部和虚部组成,用特殊变量由实部和虚部组成,用特殊变量“i”和和“j”表示虚数的单位表示虚数的单位 2复数的运算复数的运算复数的运算复数的运算几个函数:几个函数:real用法:用法:a=real(z)%计算实部计算实部imag用法:用法:a=imag(z)%计算虚部计算虚部abs用法:用法:a
3、=abs(z)%计算幅值计算幅值angle用法:用法:a=angle(z)%计算相角计算相角3第第2 2章章 MATLAB MATLAB的数值计算的数值计算2.1.1 2.1.1 2.1.1 2.1.1 变量变量变量变量变量的命名应遵循如下规则:变量的命名应遵循如下规则:变量的命名应遵循如下规则:变量的命名应遵循如下规则:l 变量名必须以字母打头,之后可以是字母、数字变量名必须以字母打头,之后可以是字母、数字变量名必须以字母打头,之后可以是字母、数字变量名必须以字母打头,之后可以是字母、数字或下划线,如或下划线,如或下划线,如或下划线,如x51483x51483x51483x51483,a_b
4、_c_d_ea_b_c_d_ea_b_c_d_ea_b_c_d_e。l 变量名区分字母大小写,如变量名区分字母大小写,如变量名区分字母大小写,如变量名区分字母大小写,如ItemsItemsItemsItems,itemsitemsitemsitems,itEmsitEmsitEmsitEms及及及及ITEMSITEMSITEMSITEMS都是不同的变量。都是不同的变量。都是不同的变量。都是不同的变量。4l 变量名不允许使用空格、标点符号。变量名不允许使用空格、标点符号。变量名不允许使用空格、标点符号。变量名不允许使用空格、标点符号。l 变量名最多可包含变量名最多可包含变量名最多可包含变量名最多
5、可包含63636363个字符(对于个字符(对于个字符(对于个字符(对于7.x7.x7.x7.x版本)。版本)。版本)。版本)。从前向后取,超出部分忽略。从前向后取,超出部分忽略。从前向后取,超出部分忽略。从前向后取,超出部分忽略。变量的命名应遵循如下规则:变量的命名应遵循如下规则:变量的命名应遵循如下规则:变量的命名应遵循如下规则:l 关键字(如关键字(如关键字(如关键字(如if,whileif,whileif,whileif,while等)不能作为变量名。等)不能作为变量名。等)不能作为变量名。等)不能作为变量名。5虚数单位,i=j=固定变量取值ans用于结果的缺省变量名pi圆周率eps计算
6、机的最小数,当和1相加就产生一个比1大的数flops浮点运算数Inf无穷大,如1/0NaN不定量,如0/0i和jnargin所用函数的输入变量数目nargout所用函数的输出变量数目realmin最小可用正实数realmax最大可用正实数672.2 矩阵和数组矩阵和数组2.2.1 矩阵的赋值矩阵的赋值2.2.2 向量的生成向量的生成 2.2.3 矩阵元素矩阵元素 2.2.4 复数表示复数表示 82.2.1 2.2.1 矩阵的赋值矩阵的赋值(1).(1).(1).(1).直接输入法创建矩阵直接输入法创建矩阵直接输入法创建矩阵直接输入法创建矩阵l 矩阵的所有元素必须放在方括号矩阵的所有元素必须放在
7、方括号矩阵的所有元素必须放在方括号矩阵的所有元素必须放在方括号“”内;内;内;内;l 矩阵元素之间必须用逗号矩阵元素之间必须用逗号矩阵元素之间必须用逗号矩阵元素之间必须用逗号“,”或空格隔开;或空格隔开;或空格隔开;或空格隔开;l 矩阵行与行之间用分号矩阵行与行之间用分号矩阵行与行之间用分号矩阵行与行之间用分号“;”或回车符隔开;或回车符隔开;或回车符隔开;或回车符隔开;l 矩阵元素可以是任何不含未定义变量的表达式;矩阵元素可以是任何不含未定义变量的表达式;矩阵元素可以是任何不含未定义变量的表达式;矩阵元素可以是任何不含未定义变量的表达式;l 标点符号一定要在英文状态下输入。标点符号一定要在英
8、文状态下输入。标点符号一定要在英文状态下输入。标点符号一定要在英文状态下输入。9矩阵元素用空格或矩阵元素用空格或矩阵元素用空格或矩阵元素用空格或逗号分隔,整个矩逗号分隔,整个矩逗号分隔,整个矩逗号分隔,整个矩阵放在方括号内。阵放在方括号内。阵放在方括号内。阵放在方括号内。10矩阵的行用矩阵的行用矩阵的行用矩阵的行用分号或回车分号或回车分号或回车分号或回车符隔开。符隔开。符隔开。符隔开。11矩阵里的元素也可以用表达式代替,矩阵里的元素也可以用表达式代替,矩阵里的元素也可以用表达式代替,矩阵里的元素也可以用表达式代替,表达表达表达表达式由变量名、常数、函数和运算符构成。式由变量名、常数、函数和运算
9、符构成。式由变量名、常数、函数和运算符构成。式由变量名、常数、函数和运算符构成。4*sin(2*t)s*a+b/c4*sin(2*t)s*a+b/c4*sin(2*t)s*a+b/c4*sin(2*t)s*a+b/c sqrt(2)*exp(-i*4)sqrt(2)*exp(-i*4)sqrt(2)*exp(-i*4)sqrt(2)*exp(-i*4)X=-X=-1.3,sqrt(3),(1+2+3)/5*41.3,sqrt(3),(1+2+3)/5*4X=X=-1.3000 1.7321 4.8000 -1.3000 1.7321 4.800012方括号外的分号表示方括号外的分号表示方括号外
10、的分号表示方括号外的分号表示不显示定义的数据。不显示定义的数据。不显示定义的数据。不显示定义的数据。1314注意数据的显示格式注意数据的显示格式注意数据的显示格式注意数据的显示格式152.2.2 2.2.2 向量的生成向量的生成(1).(1).(1).(1).利用冒号利用冒号利用冒号利用冒号“:”运算生成向运算生成向运算生成向运算生成向量量量量l a=a=a=a=m:nm:nm:nm:n%生成步长值为生成步长值为生成步长值为生成步长值为1 1 1 1的均匀等分行向的均匀等分行向的均匀等分行向的均匀等分行向量,量,量,量,m m m m和和和和n n n n分别代表向量的起始值分别代表向量的起始
11、值分别代表向量的起始值分别代表向量的起始值和终止值。和终止值。和终止值。和终止值。l a=a=a=a=m:p:nm:p:nm:p:nm:p:n%生成步长值为生成步长值为生成步长值为生成步长值为p p p p的均匀等分行向的均匀等分行向的均匀等分行向的均匀等分行向量,量,量,量,m m m m和和和和n n n n分别代表向量的起始值分别代表向量的起始值分别代表向量的起始值分别代表向量的起始值和终止值,和终止值,和终止值,和终止值,p p p p 代表向量元素之间代表向量元素之间代表向量元素之间代表向量元素之间步长值。步长值。步长值。步长值。1617(2).(2).(2).(2).利用函数利用函
12、数利用函数利用函数linspace()linspace()linspace()linspace()和和和和logspace()logspace()logspace()logspace()生成向量生成向量生成向量生成向量llinspace(m,nlinspace(m,nlinspace(m,nlinspace(m,n)%生成从生成从生成从生成从m m m m到到到到n n n n之间的之间的之间的之间的100100100100 个线个线个线个线性等分点的行向量。性等分点的行向量。性等分点的行向量。性等分点的行向量。llinspace(m,n,slinspace(m,n,slinspace(m,n
13、,slinspace(m,n,s)%生成从生成从生成从生成从m m m m到到到到n n n n之间的之间的之间的之间的s s s s个线性个线性个线性个线性等分点的行向量。等分点的行向量。等分点的行向量。等分点的行向量。llogspace(m,nlogspace(m,nlogspace(m,nlogspace(m,n)%生成从生成从生成从生成从10101010m m m m到到到到10101010n n n n之间之间之间之间50505050个按个按个按个按对数等分点的行向量。对数等分点的行向量。对数等分点的行向量。对数等分点的行向量。llogspace(m,n,slogspace(m,n,
14、slogspace(m,n,slogspace(m,n,s)%生成从生成从生成从生成从10101010m m m m到到到到10101010n n n n之间之间之间之间s s s s个按个按个按个按对数等分点的行向量。对数等分点的行向量。对数等分点的行向量。对数等分点的行向量。181920(2).(2).(2).(2).利用利用利用利用MATLABMATLABMATLABMATLAB函数创建矩阵函数创建矩阵函数创建矩阵函数创建矩阵命令说明A=空矩阵,即没有元素的矩阵A=eye(n)n维单位阵A=ones(n,m)全部元素都为1的n行m列的矩阵A=ones(n)全部元素都为1的n阶方阵A=ze
15、ros(n,m)全部元素都为0的n行m列的矩阵A=zeros(n)全部元素都为0的n阶方阵A=rand(n,m)元素服从0,1区间均匀分布的n行m列的随机矩阵A=rand(n)元素服从0,1区间均匀分布的n阶随机方阵A=randn(n,m)元素服从标准正态分布的n行m列的随机矩阵A=randn(n)元素服从标准正态分布的n阶随机方阵表表表表2-3 2-3 2-3 2-3 特殊矩阵函数特殊矩阵函数特殊矩阵函数特殊矩阵函数21222.2.3 2.2.3 矩阵的元素矩阵的元素 在在在在 MATLAB MATLAB MATLAB MATLAB 系统中,矩阵的元素是通过其系统中,矩阵的元素是通过其系统中
16、,矩阵的元素是通过其系统中,矩阵的元素是通过其行、列的标号来标识的,矩阵元素所处的行号行、列的标号来标识的,矩阵元素所处的行号行、列的标号来标识的,矩阵元素所处的行号行、列的标号来标识的,矩阵元素所处的行号和列号称为该元素的下标。矩阵元素可以通过和列号称为该元素的下标。矩阵元素可以通过和列号称为该元素的下标。矩阵元素可以通过和列号称为该元素的下标。矩阵元素可以通过其下标来引用,其下标来引用,其下标来引用,其下标来引用,A(i,j)A(i,j)A(i,j)A(i,j)即表示矩阵即表示矩阵即表示矩阵即表示矩阵A A A A的第的第的第的第i i i i行第行第行第行第 j j j j列的元素列的元
17、素列的元素列的元素。注意:注意:注意:注意:在在在在 MATLAB MATLAB MATLAB MATLAB 中,矩阵下标的行、列号都中,矩阵下标的行、列号都中,矩阵下标的行、列号都中,矩阵下标的行、列号都 是从是从是从是从 1 1 1 1 开始的开始的开始的开始的 (1 1 1 1)矩阵的下标)矩阵的下标)矩阵的下标)矩阵的下标232441016282947757150345423131303在在在在MATLABMATLABMATLABMATLAB的内部数据储存结构中,每一个矩阵都是的内部数据储存结构中,每一个矩阵都是的内部数据储存结构中,每一个矩阵都是的内部数据储存结构中,每一个矩阵都是一
18、个以列为主的向量,因此对于矩阵内各元素的存一个以列为主的向量,因此对于矩阵内各元素的存一个以列为主的向量,因此对于矩阵内各元素的存一个以列为主的向量,因此对于矩阵内各元素的存取是按列来进行总排。取是按列来进行总排。取是按列来进行总排。取是按列来进行总排。冒号冒号冒号冒号“:”表示表示表示表示“全部全部全部全部”。25(2 2 2 2).矩阵的赋值矩阵的赋值矩阵的赋值矩阵的赋值全下标方式:A(i,j)=B给A矩阵的部分元素赋值则B矩阵的行列数必须等于A矩阵的行列数。A(1:2,1:3)=1 1 1;1 1 1 A=1 1 1 6 2 1 1 1 4 7 7 5 7 1 5 0 3 4 5 4 2
19、3 13 6 0 3 26单下标方式:A(s)=b,b为向量,元素个数必须等于A矩阵的元素个数。A(5:6)=2 3 A=1 3 1 6 2 1 1 1 4 7 7 5 7 1 5 0 3 4 5 4 2 13 6 0 3 27全元素方式:A(:)=B,给矩阵的所有元素赋值则矩阵的元素总数必须等于矩阵的元素总数,但行列数不一定相等。A=1 2;3 4;5 6 A=1 2 3 4 5 6 28(3 3 3 3)矩阵元素的删除)矩阵元素的删除)矩阵元素的删除)矩阵元素的删除 在MATLAB中可以对矩阵的单个元素、子矩阵块和所有元素进行删除操作,就是简单地将其复制为空矩阵(用表示)。A=1 2 3;
20、4 5 6;7 8 9 A=1 2 3;4 5 6;7 8 9 A=1 2 3A=1 2 3 4 5 6 4 5 6 7 8 9 7 8 9 A(:,3)=A(:,3)=%删除一列元素删除一列元素 A=1 2A=1 2 4 5 4 5 7 8 7 8 A(1)=A(1)=%删除删除1 1个元素个元素A=A=%删除所有元素为空矩阵删除所有元素为空矩阵 A=A=29(4 4 4 4)生成大矩阵)生成大矩阵)生成大矩阵)生成大矩阵在MATLAB中,可以通过方括号“”实现将小矩阵联接起来生成个较大的矩阵。a;a%连结成6*3的矩阵 ans=1.6000 1.6000 a a%连结成3*6的矩阵 ans
21、=1.6000 1.6000 30(5 5).矩阵维数的扩大与缩小矩阵维数的扩大与缩小MATLAB MATLAB MATLAB MATLAB 已定义的矩阵的维数可以扩大,也可以已定义的矩阵的维数可以扩大,也可以已定义的矩阵的维数可以扩大,也可以已定义的矩阵的维数可以扩大,也可以缩小。如果输入的同名矩阵的维数小于或大于原缩小。如果输入的同名矩阵的维数小于或大于原缩小。如果输入的同名矩阵的维数小于或大于原缩小。如果输入的同名矩阵的维数小于或大于原矩阵维数,矩阵维数,矩阵维数,矩阵维数,MATLAB MATLAB MATLAB MATLAB 认为是原矩阵修改了部分元认为是原矩阵修改了部分元认为是原矩
22、阵修改了部分元认为是原矩阵修改了部分元素或子块。素或子块。素或子块。素或子块。增加矩阵的维数时,可以只给出非零增加矩阵的维数时,可以只给出非零增加矩阵的维数时,可以只给出非零增加矩阵的维数时,可以只给出非零元素,元素,元素,元素,MATLAB MATLAB MATLAB MATLAB 自动将未定义元素设为自动将未定义元素设为自动将未定义元素设为自动将未定义元素设为 0 0 0 0。减小。减小。减小。减小矩阵维数时,必须使用矩阵维数时,必须使用矩阵维数时,必须使用矩阵维数时,必须使用“”“”“”“”命令来对行或列进命令来对行或列进命令来对行或列进命令来对行或列进行操作,则相应的行或列即被删除。行
23、操作,则相应的行或列即被删除。行操作,则相应的行或列即被删除。行操作,则相应的行或列即被删除。31增加矩阵的维数时,增加矩阵的维数时,增加矩阵的维数时,增加矩阵的维数时,可以只给出非零元素,可以只给出非零元素,可以只给出非零元素,可以只给出非零元素,MATLAB MATLAB MATLAB MATLAB 自动将未定自动将未定自动将未定自动将未定义元素设为义元素设为义元素设为义元素设为 0 0 0 0。3233“空矩阵空矩阵空矩阵空矩阵”是指没有元素的矩阵,对任何一个矩是指没有元素的矩阵,对任何一个矩是指没有元素的矩阵,对任何一个矩是指没有元素的矩阵,对任何一个矩阵赋值阵赋值阵赋值阵赋值,就是使
24、它的元素都必须消失掉。,就是使它的元素都必须消失掉。,就是使它的元素都必须消失掉。,就是使它的元素都必须消失掉。空矩阵是使矩阵缩小时空矩阵是使矩阵缩小时空矩阵是使矩阵缩小时空矩阵是使矩阵缩小时不可缺少的概念。不可缺少的概念。不可缺少的概念。不可缺少的概念。34删除矩阵删除矩阵删除矩阵删除矩阵A A A A的第二列的第二列的第二列的第二列35删除第删除第删除第删除第一行和一行和一行和一行和第四行第四行第四行第四行363738在原矩阵在原矩阵在原矩阵在原矩阵A A A A中中中中再加入一行。再加入一行。再加入一行。再加入一行。39(6 6).矩阵的翻转矩阵的翻转矩阵的翻转及对角化操作函数矩阵的翻转
25、及对角化操作函数矩阵的翻转及对角化操作函数矩阵的翻转及对角化操作函数命命命命令令令令说说说说明明明明flipud(A)flipud(A)flipud(A)flipud(A)矩阵作上下翻转矩阵作上下翻转矩阵作上下翻转矩阵作上下翻转fliplr(A)fliplr(A)fliplr(A)fliplr(A)矩阵作左右翻转矩阵作左右翻转矩阵作左右翻转矩阵作左右翻转rot90(A)rot90(A)rot90(A)rot90(A)矩阵逆时针翻转矩阵逆时针翻转矩阵逆时针翻转矩阵逆时针翻转90909090diag(A)diag(A)diag(A)diag(A)提取矩阵提取矩阵提取矩阵提取矩阵A A A A的对角
26、元素,返回列向量的对角元素,返回列向量的对角元素,返回列向量的对角元素,返回列向量diag(V)diag(V)diag(V)diag(V)以列向量以列向量以列向量以列向量V V V V作对角元素创建对角矩阵作对角元素创建对角矩阵作对角元素创建对角矩阵作对角元素创建对角矩阵tril(A)tril(A)tril(A)tril(A)提取矩阵提取矩阵提取矩阵提取矩阵A A A A的下三角矩阵的下三角矩阵的下三角矩阵的下三角矩阵triu(A)triu(A)triu(A)triu(A)提取矩阵提取矩阵提取矩阵提取矩阵A A A A的上三角矩阵的上三角矩阵的上三角矩阵的上三角矩阵4041列向量列向量列向量列
27、向量V V V V为列向量为列向量为列向量为列向量42(7 7)矩阵的大小矩阵的大小矩阵大小查询命令矩阵大小查询命令矩阵大小查询命令矩阵大小查询命令命命命命令令令令说说说说明明明明whoswhoswhoswhos显示工作空间中存在的变量及大小显示工作空间中存在的变量及大小显示工作空间中存在的变量及大小显示工作空间中存在的变量及大小n,m=size(A)n,m=size(A)n,m=size(A)n,m=size(A)返回返回返回返回A A A A矩阵的行数和列数矩阵的行数和列数矩阵的行数和列数矩阵的行数和列数n=length(A)n=length(A)n=length(A)n=length(A
28、)返回返回返回返回A A A A矩阵的最大行、列数矩阵的最大行、列数矩阵的最大行、列数矩阵的最大行、列数n,m=find(A)n,m=find(A)n,m=find(A)n,m=find(A)或或或或n=find(A)n=find(A)n=find(A)n=find(A)给出特殊要求的矩阵元素的行、列给出特殊要求的矩阵元素的行、列给出特殊要求的矩阵元素的行、列给出特殊要求的矩阵元素的行、列标记标记标记标记432.2.4 2.2.4 字符运算字符运算在在在在MATLABMATLABMATLABMATLAB中,中,中,中,字符串就是一个字符数组字符串就是一个字符数组字符串就是一个字符数组字符串就是
29、一个字符数组。在。在。在。在MATLABMATLABMATLABMATLAB系统内部,每一个字符都由相应的系统内部,每一个字符都由相应的系统内部,每一个字符都由相应的系统内部,每一个字符都由相应的ASCIIASCIIASCIIASCII码数值进行码数值进行码数值进行码数值进行存储,但在屏幕上显示的是字符串,除了特殊的用存储,但在屏幕上显示的是字符串,除了特殊的用存储,但在屏幕上显示的是字符串,除了特殊的用存储,但在屏幕上显示的是字符串,除了特殊的用途,一般情况下我们不访问这些数值。途,一般情况下我们不访问这些数值。途,一般情况下我们不访问这些数值。途,一般情况下我们不访问这些数值。1 1 字符
30、串数组的创建字符串数组的创建在在在在MATLABMATLABMATLABMATLAB中所有中所有中所有中所有字符串都用单引号界定字符串都用单引号界定字符串都用单引号界定字符串都用单引号界定后输入或赋后输入或赋后输入或赋后输入或赋值,值,值,值,单引号必须在英文状态下输入单引号必须在英文状态下输入单引号必须在英文状态下输入单引号必须在英文状态下输入。字符串的每个。字符串的每个。字符串的每个。字符串的每个字符(空格也是字符)都是相应矩阵的一个元素,字符(空格也是字符)都是相应矩阵的一个元素,字符(空格也是字符)都是相应矩阵的一个元素,字符(空格也是字符)都是相应矩阵的一个元素,每个字符占用每个字符
31、占用每个字符占用每个字符占用2 2 2 2个字节存储。个字节存储。个字节存储。个字节存储。44字符串是以行向量的形式存储的字符串是以行向量的形式存储的字符串是以行向量的形式存储的字符串是以行向量的形式存储的45字符串也可以用方括号合并成更大的字符串也可以用方括号合并成更大的字符串也可以用方括号合并成更大的字符串也可以用方括号合并成更大的“串串串串”46建立二维字符数组与建立数据数组一样可以直建立二维字符数组与建立数据数组一样可以直建立二维字符数组与建立数据数组一样可以直建立二维字符数组与建立数据数组一样可以直接输入,需要加方括号,并且每行之间用分号接输入,需要加方括号,并且每行之间用分号接输入
32、,需要加方括号,并且每行之间用分号接输入,需要加方括号,并且每行之间用分号隔开,隔开,隔开,隔开,但每行的字符数目必须一致但每行的字符数目必须一致但每行的字符数目必须一致但每行的字符数目必须一致。47建立二维字符数组的另一个方法是用建立二维字符数组的另一个方法是用建立二维字符数组的另一个方法是用建立二维字符数组的另一个方法是用 str2matstr2matstr2matstr2mat 函数把字符串转换为字符数函数把字符串转换为字符数函数把字符串转换为字符数函数把字符串转换为字符数组,组,组,组,这种方法允许用不一样长度的字这种方法允许用不一样长度的字这种方法允许用不一样长度的字这种方法允许用不
33、一样长度的字符串符串符串符串。482 2 字符串数组的运算字符串数组的运算P P P P42424242表表表表2-142-142-142-14字符串转换函数字符串转换函数字符串转换函数字符串转换函数函数名称函数名称函数名称函数名称功功功功能能能能absabsabsabs字符串到字符串到字符串到字符串到ASCIIASCIIASCIIASCII码转换码转换码转换码转换blanksblanksblanksblanks空格字符串空格字符串空格字符串空格字符串deblankdeblankdeblankdeblank去除尾部的空格去除尾部的空格去除尾部的空格去除尾部的空格evalevalevaleval
34、运行字符串运行字符串运行字符串运行字符串findstrfindstrfindstrfindstr在字符串中找另一字符串在字符串中找另一字符串在字符串中找另一字符串在字符串中找另一字符串fprintfprintfprintfprint按照给定格式把文本写到文件中或显示屏上按照给定格式把文本写到文件中或显示屏上按照给定格式把文本写到文件中或显示屏上按照给定格式把文本写到文件中或显示屏上int2strint2strint2strint2str把整数转换成字符串把整数转换成字符串把整数转换成字符串把整数转换成字符串ischarischarischarischar是字符串为真是字符串为真是字符串为真是字
35、符串为真lowerlowerlowerlower将字符串变成大写将字符串变成大写将字符串变成大写将字符串变成大写49函数名称函数名称函数名称函数名称功功功功能能能能num2strnum2strnum2strnum2str将数字转换成字符串将数字转换成字符串将数字转换成字符串将数字转换成字符串setstrsetstrsetstrsetstr将将将将ASCIIASCIIASCIIASCII码转换成字符串码转换成字符串码转换成字符串码转换成字符串sprintfsprintfsprintfsprintf按照给定格式将数字转换成字符串按照给定格式将数字转换成字符串按照给定格式将数字转换成字符串按照给定格
36、式将数字转换成字符串sscanfsscanfsscanfsscanf按照给定格式将字符串转换成数字按照给定格式将字符串转换成数字按照给定格式将字符串转换成数字按照给定格式将字符串转换成数字str2matstr2matstr2matstr2mat将字符串转换成一个字符矩阵将字符串转换成一个字符矩阵将字符串转换成一个字符矩阵将字符串转换成一个字符矩阵str2numstr2numstr2numstr2num将字符串转换成数字将字符串转换成数字将字符串转换成数字将字符串转换成数字strcmpstrcmpstrcmpstrcmp字符串比较字符串比较字符串比较字符串比较strncmpstrncmpstrn
37、cmpstrncmp比较前比较前比较前比较前N N N N个字符串个字符串个字符串个字符串strjuststrjuststrjuststrjust调整字符串调整字符串调整字符串调整字符串strmatchstrmatchstrmatchstrmatch找到可能的匹配字符串找到可能的匹配字符串找到可能的匹配字符串找到可能的匹配字符串strrepstrrepstrrepstrrep用一个字符串替代另一个用一个字符串替代另一个用一个字符串替代另一个用一个字符串替代另一个upperupperupperupper将字符串变成小写将字符串变成小写将字符串变成小写将字符串变成小写50把字符串转换成大写把字符串
38、转换成大写把字符串转换成大写把字符串转换成大写把字符串转换成小写把字符串转换成小写把字符串转换成小写把字符串转换成小写把数字转换成字符串把数字转换成字符串把数字转换成字符串把数字转换成字符串51将字符串转换成将字符串转换成将字符串转换成将字符串转换成ASCIIASCIIASCIIASCII码码码码将将将将ASCIIASCIIASCIIASCII码转换成字符串码转换成字符串码转换成字符串码转换成字符串为字符串赋值为字符串赋值为字符串赋值为字符串赋值52532.3 2.3 矩阵与数组运算矩阵与数组运算2.3.1 2.3.1 2.3.1 2.3.1 矩阵的算术运算矩阵的算术运算矩阵的算术运算矩阵的算
39、术运算2.3.2 2.3.2 2.3.2 2.3.2 矩阵的关系运算矩阵的关系运算矩阵的关系运算矩阵的关系运算2.3.3 2.3.3 2.3.3 2.3.3 矩阵的逻辑运算矩阵的逻辑运算矩阵的逻辑运算矩阵的逻辑运算2.3.4 2.3.4 2.3.4 2.3.4 矩阵函数矩阵函数矩阵函数矩阵函数542.3 2.3 矩阵与数组运算矩阵与数组运算2.3.1 2.3.1 2.3.1 2.3.1 矩阵的算术运算矩阵的算术运算矩阵的算术运算矩阵的算术运算矩阵矩阵矩阵矩阵A A A A和和和和B B B B的维数完全相同时,可以进行矩阵加减的维数完全相同时,可以进行矩阵加减的维数完全相同时,可以进行矩阵加减
40、的维数完全相同时,可以进行矩阵加减法运算,法运算,法运算,法运算,MATLABMATLABMATLABMATLAB会自动地使得会自动地使得会自动地使得会自动地使得A A A A和和和和B B B B的相应元素相的相应元素相的相应元素相的相应元素相加减。两矩阵维数不等时,不能进行该运算。加减。两矩阵维数不等时,不能进行该运算。加减。两矩阵维数不等时,不能进行该运算。加减。两矩阵维数不等时,不能进行该运算。表表表表2-62-62-62-6列出了列出了列出了列出了MATLABMATLABMATLABMATLAB的算术运的算术运的算术运的算术运算符及其对应功能与示例算符及其对应功能与示例算符及其对应功
41、能与示例算符及其对应功能与示例 矩阵与标量的运算完成矩阵的每矩阵与标量的运算完成矩阵的每矩阵与标量的运算完成矩阵的每矩阵与标量的运算完成矩阵的每一个元素对该标量的运算。一个元素对该标量的运算。一个元素对该标量的运算。一个元素对该标量的运算。55两矩阵两矩阵两矩阵两矩阵A A A A和和和和B B B B的维数相容时(的维数相容时(的维数相容时(的维数相容时(A A A A的列数等于的列数等于的列数等于的列数等于B B B B的行数),可以进行乘法运算。的行数),可以进行乘法运算。的行数),可以进行乘法运算。的行数),可以进行乘法运算。注意:矩阵的乘法分为左乘和右乘。注意:矩阵的乘法分为左乘和右
42、乘。注意:矩阵的乘法分为左乘和右乘。注意:矩阵的乘法分为左乘和右乘。矩阵的除法运算包括左除和右除两种:矩阵的除法运算包括左除和右除两种:矩阵的除法运算包括左除和右除两种:矩阵的除法运算包括左除和右除两种:矩阵的除法运算实际上是求矩阵的除法运算实际上是求矩阵的除法运算实际上是求矩阵的除法运算实际上是求AX=BAX=BAX=BAX=B的解的过程的解的过程的解的过程的解的过程MATLABMATLABMATLABMATLAB用用用用“”“”“”“”表示乘方,求矩表示乘方,求矩表示乘方,求矩表示乘方,求矩阵乘方时要求矩阵为方阵。阵乘方时要求矩阵为方阵。阵乘方时要求矩阵为方阵。阵乘方时要求矩阵为方阵。56
43、两个矩阵之间的两个矩阵之间的两个矩阵之间的两个矩阵之间的点运算点运算点运算点运算是两矩阵对应元素是两矩阵对应元素是两矩阵对应元素是两矩阵对应元素的直接运算,因此要求参与运算的两个矩的直接运算,因此要求参与运算的两个矩的直接运算,因此要求参与运算的两个矩的直接运算,因此要求参与运算的两个矩阵的维数一致。阵的维数一致。阵的维数一致。阵的维数一致。矩阵求幂的运算包括矩阵与常数和矩阵与矩阵求幂的运算包括矩阵与常数和矩阵与矩阵求幂的运算包括矩阵与常数和矩阵与矩阵求幂的运算包括矩阵与常数和矩阵与矩阵的幂运算,用点运算的形式表示。矩阵的幂运算,用点运算的形式表示。矩阵的幂运算,用点运算的形式表示。矩阵的幂运
44、算,用点运算的形式表示。在使用在使用在使用在使用MATLABMATLABMATLABMATLAB的算术运算符时,一定要的算术运算符时,一定要的算术运算符时,一定要的算术运算符时,一定要注意注意注意注意普通运算普通运算普通运算普通运算与与与与点运算点运算点运算点运算之间的区别。之间的区别。之间的区别。之间的区别。57矩阵的转置用矩阵的转置用矩阵的转置用矩阵的转置用AAAA表示表示表示表示若矩阵为复数矩阵,求转置时首先对矩阵元若矩阵为复数矩阵,求转置时首先对矩阵元素进行转置,然后再逐项求取其共轭数值。素进行转置,然后再逐项求取其共轭数值。对于实矩阵用(对于实矩阵用(对于实矩阵用(对于实矩阵用(AA
45、AA)或()或()或()或(A.A.A.A.)求转置结果是)求转置结果是)求转置结果是)求转置结果是一样的;然而对于含复数的矩阵,则(一样的;然而对于含复数的矩阵,则(一样的;然而对于含复数的矩阵,则(一样的;然而对于含复数的矩阵,则(AAAA)将)将)将)将同时对复数进行共轭处理,而同时对复数进行共轭处理,而同时对复数进行共轭处理,而同时对复数进行共轭处理,而 (A.A.A.A.)则只是)则只是)则只是)则只是将其排列形式进行转置。将其排列形式进行转置。将其排列形式进行转置。将其排列形式进行转置。矩阵的转置还可用矩阵的转置还可用A.A.表表示示582.3.2 2.3.2 矩阵的关系运算矩阵的
46、关系运算运运运运算算算算符符符符名名名名称称称称=等于等于等于等于=不等于不等于不等于不等于 大于大于大于大于 =大于等于大于等于大于等于大于等于=小于等于小于等于小于等于小于等于MATLABMATLABMATLABMATLAB的基本关系运算符及其功能的基本关系运算符及其功能的基本关系运算符及其功能的基本关系运算符及其功能59l 参与关系运算的矩阵必须是同维矩阵参与关系运算的矩阵必须是同维矩阵参与关系运算的矩阵必须是同维矩阵参与关系运算的矩阵必须是同维矩阵或其中之一为标量。或其中之一为标量。或其中之一为标量。或其中之一为标量。l 当参与运算的矩阵之一为标量时,关当参与运算的矩阵之一为标量时,关
47、当参与运算的矩阵之一为标量时,关当参与运算的矩阵之一为标量时,关系运算的结果是将矩阵的每一个元素与系运算的结果是将矩阵的每一个元素与系运算的结果是将矩阵的每一个元素与系运算的结果是将矩阵的每一个元素与该标量逐一进行关系比较,若关系成立该标量逐一进行关系比较,若关系成立该标量逐一进行关系比较,若关系成立该标量逐一进行关系比较,若关系成立则比较结果值为则比较结果值为则比较结果值为则比较结果值为“1”1”1”1”,若关系不成立则,若关系不成立则,若关系不成立则,若关系不成立则比较结果值为比较结果值为比较结果值为比较结果值为“0”0”0”0”。关系运算的规则关系运算的规则60l 当参与运算的矩阵是两同
48、维矩阵当参与运算的矩阵是两同维矩阵当参与运算的矩阵是两同维矩阵当参与运算的矩阵是两同维矩阵A A A A和和和和B B B B时,关时,关时,关时,关系运算的结果是将矩阵系运算的结果是将矩阵系运算的结果是将矩阵系运算的结果是将矩阵A A A A 和和和和B B B B 下标相同的对应下标相同的对应下标相同的对应下标相同的对应元素逐一进行关系比较,若关系成立则比较结元素逐一进行关系比较,若关系成立则比较结元素逐一进行关系比较,若关系成立则比较结元素逐一进行关系比较,若关系成立则比较结果值为果值为果值为果值为“1”1”1”1”,若关系不成立则比较结果值为,若关系不成立则比较结果值为,若关系不成立则
49、比较结果值为,若关系不成立则比较结果值为“0”0”0”0”。也即关系运算的结果是生成一个与。也即关系运算的结果是生成一个与。也即关系运算的结果是生成一个与。也即关系运算的结果是生成一个与A A A A 和和和和B B B B 维数相同的矩阵,其元素值为维数相同的矩阵,其元素值为维数相同的矩阵,其元素值为维数相同的矩阵,其元素值为“0”0”0”0”或或或或“1”1”1”1”。l算术运算比关系运算具有更高的优先权。算术运算比关系运算具有更高的优先权。算术运算比关系运算具有更高的优先权。算术运算比关系运算具有更高的优先权。关系运算的规则关系运算的规则61通常,为了通常,为了通常,为了通常,为了改善程
50、序的改善程序的改善程序的改善程序的可读性,可可读性,可可读性,可可读性,可用括号将关用括号将关用括号将关用括号将关系运算表达系运算表达系运算表达系运算表达式括起来。式括起来。式括起来。式括起来。622.3.3 2.3.3 矩阵的逻辑运算矩阵的逻辑运算MATLABMATLABMATLABMATLAB的基本逻辑运算符及其对应功能的基本逻辑运算符及其对应功能的基本逻辑运算符及其对应功能的基本逻辑运算符及其对应功能运运运运 算算算算 符符符符名名名名称称称称&逻辑与逻辑与逻辑与逻辑与|逻辑或逻辑或逻辑或逻辑或 逻辑非逻辑非逻辑非逻辑非在逻辑运算中,所有非零元素的逻辑值为在逻辑运算中,所有非零元素的逻辑