资源描述:
《matlab矩阵的简单运算》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、特殊矩阵的实现·单位阵的生成eye(n)eye(m,n)·零矩阵的生成zeros(n)zeros(m,n)·全1矩阵的生成ones(n)ones(m,n)·随机元素矩阵函数rand(n,m)rand(n)·对角矩阵diag(V)%V=[1234];·伴随矩阵compan(P)%p=[1,a1,a2,...,an]·上三角矩阵下三角矩阵triu(B)tril(B)矩阵函数·矩阵的行列式det(A)·矩阵求逆inv(A)pinv(A)·矩阵的迹trace(A)·矩阵的秩rank(A)·矩阵三角分解[L,U]=lu(A)·矩阵奇异值分解cond(A)·矩阵的范数N=norm(A,选项
2、)·矩阵的特征多项值与特征向量[V,D]=eig(A)·矩阵的特征多项式、特征方程和特征根P=poly(A)V=roots(P)------------------------------------------------------------------------------------------------------------------MatLab中的矩阵 我们知道,求解线性方程组是线性代数课程中的核心内容,而矩阵又在求解线性方程组的过程中扮演着举足轻重的角色。下面我们就利用科学计算软件MATLAB来演示如何使用矩阵,同时,也使学生对线性代数的认识更加理
3、性。一、矩阵的构造 在MatLab中,构造矩阵的方法有两种。一种是直接法,就是通过键盘输入的方式直接构造矩阵。另一种是利用函数产生矩阵。例1.利用pascal函数来产生一个矩阵A=pascal(3)A=1 1 11 2 31 3 6例2.利用magic函数来产生一个矩阵B=magic(3)B=8 1 63 5 74 9 2例3.还可以利用函数产生一个4*3的随机矩阵>>c=rand(4,3)c= 0.9501 0.8913 0.8214 0.2311 0.7621 0.4447 0.6068 0.4565 0.6
4、154 0.4860 0.0185 0.7919例4.利用直接输入法可产生列矩阵、行矩阵及常数u=[3;1;4]u=314v=[20-1]v=2 0 -1s=7s=7二、矩阵的基本运算1、四则运算例5.矩阵的加法X=A+BX=9 2 74 7 105 12 8例6.矩阵的减法Y=X-AY=8 1 63 5 74 9 2 注:若二个矩阵的大小不完全相同,则会出错!例如,X=A+u???Errorusing==>plusMatrixdimensionsmustagree。例7.矩阵的乘法X=A*BX=15 15 1526
5、38 2641 70 39 注:若第一个矩阵的列数和第二个矩阵行数不相同,这两个矩阵就不可以相乘。例如,X=A*v???Errorusing==>mtimesInnermatrixdimensionsmustagree。 在MATLAB中,矩阵的除法有两个运算符号,分别为左除“”与右除“/”,矩阵的右除运算速度要慢一点,而左除运算可以避免奇异矩阵的影响,它们的作用主要用于求解线性方程组,我们在后面会涉及到矩阵的除法。2、矩阵的转置、逆运算及行列式运算 与线性代数中一样,矩阵的转置只需用符号“,”来表示即可。例8.求矩阵B的转置X=B'X=8 3
6、 41 5 96 7 2 线性代数中求矩阵逆的运算非常复杂,而在MATLAB中,矩阵的逆运算只需要函数“inv”来实现,这大大简化了计算过程。例9.求矩阵A的逆X=inv(A)X=3 -3 1-3 5 -21 -2 1 在MATLAB中,求矩阵的行列式大小,可用函数“det”实现。例10.求矩阵A的行列式X=det(A)X=1 注:在求矩阵的逆和行列式时,一定要求矩阵是一个方阵,否则会出错!例如,>>X=inv(u)???Errorusing==>invMatrixmustbesquare。再如,X=det(u)???E
7、rrorusing==>detMatrixmustbesquare。三、矩阵的常用函数运算1.矩阵的特征值运算 在线性代数中,计算矩阵特征值及特征向量的过程相当麻烦,但在MATLAB中,矩阵特征值运算只需要函数“eig”或“eigs”即可。例11.求矩阵A的特征值及特征向量>>[b,c]=eig(A)b= -0.5438 -0.8165 0.1938 0.7812 -0.4082 0.4722 -0.3065 0.4082 0.8599c= 0.1270