MATLAB中常用命令调用格式总结
- 格式:pdf
- 大小:189.64 KB
- 文档页数:9
第2章MATLAB数据及其运算1.矩阵的表示:将矩阵的方括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用空格或逗号分隔,不同行的元素用分号分隔;2.利用M文件建立矩阵对于比较大且复杂的矩阵,可以为它专门建立一个M文件;3.建立大矩阵大矩阵可由方括号中的小矩阵建立起来;4.冒号表达式利用冒号表达式可以产生行向量,一般格式是:e1:e2:e3;其中e1为初始值,e2为步长,e3为终止值。
即冒号表达式可产生一个由e1开始到e3结束,以步长e2自增的行向量。
若冒号表达式中省略e2不写,则步长为1.注:MATLAB中还可以用linspace函数产生行向量;其调用格式为:linspace(a,b,n)其中a和b是生成向量的第一个和最后一个元素,n是元素总数。
当n省略时,自动产生100个元素;显然,linspace(a,b,n)与a:(b-a)/(n-1):b等价。
当步长不方便计算或小数位数较多时用linspace函数很方便。
5.矩阵元素MATLAB允许对一个矩阵的单个元素进行赋值和操作,矩阵A的第3行第2列元素赋值,A(3,2)=200;此时,只改变该元素的值,对其他元素无影响。
如果给出的行下标或列下标大于原矩阵的行数或列数,则将自动扩展原来的矩阵,扩展后未赋值的矩阵元素将置为0.也可以用矩阵元素的序号来引用矩阵元素,矩阵元素序号就是相应元素在内存中的排列顺序,矩阵元素按列编号,先第一列,再第二列,依次类推。
size(A)函数返回包含两个元素的向量,分别是矩阵A的行数和列数。
length(A)给出行数和列数中的较大者,即length(A)=max(size(A))。
6.矩阵拆分利用冒号表达式获得子知阵:(1)A(:,j)表示取A矩阵的第j列全部元素;A(i,:)表示A矩阵第i行的全部元素;A(i,j)表示取A矩阵的第i行、第j列的元素;(2)A(i:i+m,:)表示取A矩阵第i-i+m行的全部元素;A(:,k:k+m)表示取A矩阵第k-k+m列的全部元素;A(i:i+m,k:k+m)表示取A矩阵第i-i+m行内,并在第k-k+m列中的所有元素;(3)A(:)将矩阵A每一列元素堆叠起来,成为一个向量,相当于reshape(A,m,1);7.利用空矩阵删除矩阵的元素定义[]为空矩阵。
给变量X赋空矩阵的语句为X=[].将某些元素从矩阵中删除,采用将其置为空矩阵的方法就是一种有效的方法。
8.矩阵的基本算术运算矩阵的运算是在矩阵意义下进行的,单个数据的算术运算只是一种特例。
矩阵加减运算:两个矩阵的维数相同才可以进行加减运算,否则给出错误信息。
一个标量也可以和其他不同维数的矩阵进行加减运算,即每个元素都加上这个标量。
矩阵乘法运算:要求矩阵A的列数与B矩阵的行数相等。
矩阵与标量相乘,即矩阵中的每个元素与此标量相乘。
矩阵除法:\左除;/右除;A\B等效于A的逆左乘B矩阵,也就是inv(A)*B;而B/A等效于A矩阵的逆右乘B矩阵,也就是B*inv(A)。
对于矩阵运算,一般A\B≠B/A.对于含有标量的运算,两种除法运算的结果相同,如3/4和4\3有相同的值。
矩阵的乘方:一个矩阵的乘方可以表示为A^x,要求A为方阵,x为标量。
9.点运算.*,./,.\,.^。
两矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵维数相同。
若A,B两矩阵具有相同的维数,则A./B等价于B.\A.若两个矩阵维数一致,则A.^B表示两矩阵对应元素进行乘方运算。
指数可以是标量,底也可以是标量。
10.关系运算<,<=,>,>=,==,~=。
运算法则:1.当两个标量比较时,直接比较两数大小,若关系式成立,则关系表达式结果为1。
2.当两个维数相同的矩阵比较时,比较的是两矩阵相同位置的元素;3.当参与比较的是一个标量,而另一个是矩阵,则把标量与矩阵的每一个元素按标量关系运算规则逐个比较。
11.逻辑运算&与,|或,~非。
运算法则:1.确认非零元素为真,用1表示,零元素为假,用0表示。
2.两个标量a和b,a&b:a,b全为非零时,结果为1,否则为0;a|b:,只要有一个为零,运算结果为1,否则为0;~a:当a是零时,结果为1;当a非零时,结果为0;12.字符串MATLAB中将字符串当做一个行向量,每个元素对应一个字符,其标识方法和数值向量相同,也可以建立多行字符串矩阵。
字符串是以ASCII码形式存储的。
Abs和double函数都可以用来获取字符串矩阵所对应的ASCII码数值矩阵。
Char函数可以把ASCII码矩阵转换为字符串矩阵。
注:若字符串中的字符含有单撇号,则该单撇号字符需要用两个单撇号来表示。
对于较长的字符串可以用字符串向量表示,即用[]括起来。
第3章MATLAB矩阵分析与处理1.通用的特殊矩阵常用的产生特殊矩阵的函数有:zeros:产生全0矩阵(零矩阵);ones:产生全1矩阵(幺矩阵);eye:产生单位矩阵;rand:产生0-1间均匀分布的随机矩阵;randn:产生均值为0,方差为1的标准正态分布随机矩阵;zeros(m):产生m×m零矩阵;zeros(m,n):产生m×n零矩阵;当m=n时,等同于zeros(m);zeros(size(A)):产生与矩阵A同样大小的零矩阵;2.用于专门学科的特殊矩阵魔方矩阵:每行、每列及两条对角线上的元素之和都相等;magic(n),生成一个n阶魔方矩阵;范德蒙德矩阵:最后一列全为1,倒数第2列为一个指定向量,其他各列是其后列与倒数第2列的点乘积;函数vander(V)生成以向量V为基础向量的范德蒙德矩阵;希尔伯特矩阵:;生成希尔伯特矩阵的函数是hilb(n).特普利茨矩阵:除第一行和第一列外,其他每个元素都与左上角元素相同。
toeplitz(x,y)生成一个以x 为第一列,y为第一行的特普利茨矩阵。
伴随矩阵:生成伴随矩阵的函数是compan(p),其中p是一个多项式的系数向量,高次幂在前;帕斯卡矩阵:由杨辉三角形组成的矩阵称为帕斯卡矩阵,由pascal(n)生成一个n阶帕斯卡矩阵。
3.对角阵只有对角线上有非0元素的矩阵称为对角矩阵;对角线上元素相等的对角矩阵称为数量矩阵;对角线上元素全为1的对角矩阵称为单位矩阵;提取矩阵对角线元素:设A为m行n列矩阵,diag(A)函数用于提取矩阵A主对角元素,产生一个具有min(m,n)个元素的列向量;另一种形式,diag(A,k)功能是提取第k条对角线的元素;与主对角线平行往上为第1条,第2条...往下为第-1条,第-2条...构造对角矩阵:设V为具有m个元素的向量,diag(V)将产生一个m×m对角矩阵,其主对角元素即为向量V的元素;另一种形式,diag(V,k)功能是产生一个n×n(n=m+|k|)的对角阵,其第k条对角线元素为V向量的元素。
4.三角阵上三角阵:矩阵的对角线以下的元素全为0;下三角阵:矩阵的对角线以上的元素全为0;求矩阵A 的上三角阵函数是triu(A);另一种形式:triu(A,k)的功能是求矩阵A 的第k 条对角线以上的元素;下三角阵:提取下三角矩阵的函数是tril(A)和tril(A,k),用法与triu 完全相同。
5.矩阵的转置转置运算符号是单撇号(’);6.矩阵的旋转利用函数rot90(A,k)将矩阵A 按逆时针方向旋转90度的k 倍,当k 为1时可省略。
7.矩阵的左右翻转对矩阵实施左右翻转是将原矩阵的第一列和最后一列调换,第二列和倒数第二列调换,依次类推。
对矩阵A 实施左右翻转的函数是fliplr(A).8.矩阵的逆与伪逆求方阵A 的逆矩阵可调用函数inv(A).如果矩阵A 不是一个方阵,或者A 是一个非满秩的方阵时,矩阵A 没有逆矩阵,但可以找到一个与A 的转置矩阵A’同型的矩阵B,使得:A·B·A=A,B·A·B=B,此时矩阵B 为矩阵A 的伪逆。
求一个矩阵伪逆的函数是pinv(A).9.用矩阵求逆方法求解线性方程组Ax=b,则b A x 1−=,所以x=inv(A)*b;也可以用左除运算符“\”求解线性代数方程组,x=A\b.10.方阵的行列式值方阵A 所对应的行列式的值的函数是det(A).11.矩阵的秩与迹矩阵的秩:矩阵线性无关的行数或列数称为矩阵的秩;矩阵的行秩和列秩必定相等,将行秩和列秩统称为矩阵的秩;求矩阵秩的函数是rank(A);矩阵的迹:矩阵的迹等于矩阵的对角线元素之和,也等于矩阵的特征值之和;求矩阵的迹的函数是trace(A);12.向量的三种常用范数及其计算函数向量1范数:向量各元素绝对值之和;∞-范数:向量元素中绝对值最大的;2-范数:向量各元素平方和的开方;计算向量V 的2-范数:norm(V)或norm(V ,2);V 的1-范数:norm(V ,1);∞-范数:norm(V,inf);13.矩阵的范数及其计算函数矩阵1范数:又称列和范数,即取列和最大值;∞-范数:又称行和范数,即取行和最大值;求矩阵3种范数的函数:其函数调用格式与求向量的范数的函数完全相同。
14.矩阵的条件数矩阵A 的条件数等于A 的范数与A 的逆矩阵的范数的乘积;即||A ||||A ||)(-1•=A cond 。
这样定义的条件数总是大于1的,条件数越接近1,矩阵的性能越好;反之,矩阵性能越差;计算A 的1-范数:cond(A,1);A 的2-范数:cond(A)或cond(A,2);∞-范数:cond(A,inf)。
15.矩阵的特征值与特征向量求矩阵A 的特征值和特征向量的函数是eig(A);常用的调用格式:1.E=eig(A):求矩阵A 的全部特征值,构成向量E ;2.[V ,D]=eig(A):求矩阵A 的全部特征值,构成对角阵D ,并求A 的特征向量构成V 的列向量;3.[V ,D]=eig(A,’nobalance’):与第二种类似,但第二种先对A 作相似变换后求A 的特征值与特征向量,而格式3直接求矩阵A 的特征值和特征向量。
15.矩阵的超越函数sqrt,exp,log 等都是直接作用在矩阵的各元素上;而sqrtm,expm,logm 直接作用于方阵A ;第4章MATLAB程序设计1.MATLAB语言编写的程序,称为M文件;用命令edit可以启动MATLAB文全编辑器;2.数据的输入从键盘输入数据,可以使用input函数;调用格式:A=input(提示信息,选项);如果在input函数调用时采用’s’选项,则允许用户输入一个字符串。
3.数据的输出MATLAB提供的命令窗口输出函数主要有disp函数;调用格式:disp(输出项);可显示字符串,也可以显示矩阵。