资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,Matlab,仿真及其应用,主讲:陈孝敬,E-mail:,主要内容:,矩阵运算;,矩阵元素运算;,第,3,章 数学运算,3.1,矩阵运算,3.1.1,矩阵分析,1,向量范式定义:,向量的,3,种常用范数及其计算函数在,MATLAB,中,求向量范数的函数为:,(1)norm(V),或,norm(V,2),:计算向量,V,的,2,范数。,(2)norm(V,1),:计算向量,V,的,1,范数。,(3)norm(V,inf),:计算向量,V,的,范数。,例,3-1,求向量,x=1,2,3,4,5,和,y=3,0,5,2,2,间的距离,x=1,2,3,4,5;,y=3,0,5,2,2;,norm(x,1);%1-,范式,norm(x,inf);,%,范数,norm(x);,e=x-y;,norm(e);,2,矩阵的秩:,矩阵中线性无关的列(行,),向量个数,称为列(行)秩。,Matlab,中用函数,rank,()来计算矩阵的秩。,例,3-2,求向量,eye,(,4),,,magic,(,4,)和,A=1,2,3;4,5,6;7,8,9,的秩。,rank(eye(4);,rank(magic(4);,rank(A);,3,矩阵的行列式:,Matlab,中用函数,det,()来计算矩阵的行列式。,例,3-3,求向量,eye,(,4),,,magic,(,4,)和,A=1,2,3;4,5,6;7,8,9,的行列式。,det(eye(4);,det(magic(4);,det(A);,4,矩阵的行列迹:,矩阵的迹定义为对角元素之和。,Matlab,中用函数,trace,()来计算矩阵的行列式。,例,3-4,求向量,eye,(,4),,,magic,(,4,)和,A=1,2,3;4,5,6;7,8,9,的行列式。,trace(eye(4);,trace(magic(4);,trace(A);,5,矩阵化零矩阵:,对于非满秩矩阵,A,,若存在矩阵,Z,使得,AZ=0,且,ZZ=I,,则称 矩阵,Z,为矩阵,A,的化零矩阵。,Matlab,中用函数,null,()来计算矩阵的化零矩阵。,例,3-5,求矩阵,A=1,2,3;4,5,6;7,8,9,的化零矩阵。,Z=null(A),验证,AZ=0,的具体代码如下:,AZ=A*Z,验证,ZTZ,的具体代码如下:,ZTZ=Z,*Z,6,矩阵的正交空间:,矩阵,A,的正交空间,Q,满足,Q,T,Q=I,,且矩阵,Q,与,A,具有相同的列基底,,Matlab,中用函数,orth,()来计算正交空间,Q,。,例,3-6,求矩阵,A1=1,2,3;4,5,6;7,8,9,和,A2=1,2,3;4,5,6;7,8,9;10,11,12,的正交空间,Q,。,Q=orth(A1),R=orth(A2),7,矩阵的简化化梯形式:,矩阵,A,的简化化梯形式为 ,其中 为,r,阶单位矩阵。,Matlab,中用函数,rref(),来计算矩阵的简化梯形形式,例,3-7,求矩阵,A1=1,2,3;4,5,6;7,8,9,和,A2=1,2,3;1,1,5;7,8,9;10,11,12,的正交空间,Q,。,Q=rref(A1),R=rref(A2),9,矩阵空间之间的角度:,矩阵空间之间的角度代表具有相同行数的两个矩阵线性相关程度,夹角越小代表线性相关度越高。,Matlab,中用函数,subspace,()来计算矩阵空间之间的角度。,例,3-9,求矩阵,A1=1,2,3;4,5,6;7,8,9,和,A2=1,2,3;1,1,5;7,8,9;10,11,12,的正交空间,Q,。,Q=subspace(A1),3.1.2,线性方程组,Ax=b,有,x=A,-1,b,,但实际上并不显式求,A,-1,例子:,7,x=21,x=21/7=3,如果求逆,x=7,-1,21=.142857,21=2.99997,这就需要一次除和一次乘,且精度更低,Backslash,运算符,AX=B,X=AB,左除,XA=B,X=B/A,右除,3-by-3,的例子,线性方程组的解结构,齐次线性方程组的解结构,非齐次线性方程组的解结构,1.,齐次线性方程组的解结构,例,3-10,.,判别方程组,有无非零解,若有,写出其通解,.,解 在,MATLAB,中输入该方程组的系数矩阵,A,并将它化为最简行阶梯形矩阵,所用命令如下,:,A=1 2-1;2 5 2;1 4 7;1 3 3;,rref(A),ans=,1 0 -9,0 1 4,0 0 0,0 0 0,由阶梯形矩阵可知,R,(,A,)=2 A=1 1 1 1 1;3 2 1 1-3;0 1 2 2 6;5 4 3 3-1;,format rat,B=null(A,r,)%,求基础解系,B=,1 1 5,-2 -2 -6,1 0 0,0 1 0,0 0 1,syms k1 k2 k3%,定义符号参数,X=k1*B(:,1)+k2*B(:,2)+k3*B(:,3),X=,k1+k2+5*k3,-2*k1-2k2-6k3,k1,k2,k3,即,为方程组的通解,其中,k,1,k,2,k,3,为任意实数,.,2.,齐次线性方程组的解结构,例,3-12,.,求解方程组,解 在,MATLAB,中输入系数矩阵及常数列向量,并检验系数矩阵是否逆,所用命令及结果如下,A=2 1 1;3 1 2;1-1 0;,b=3 3-1;,det(A),%,检验,A,是否可逆,ans=,2,系数矩阵行列式值等于,2,是可逆的,则可以用矩阵相除来求解,.,X=Ab,X=,1,2,-1,即是原方程组的解,.,3.1.2,矩阵分解,矩阵分解:把矩阵分解成比较简单或对它性质比较熟悉的若干矩阵的乘积的形式;,1,Cholesky,分解:,Cholesky,分解是把对称正定矩阵表示成上三角矩阵的转置与其本身的乘积,即:,A=R,T,R,,在,Matlab,中用函数,chol,来计算,Cholesky,分解,例,3-13,求矩阵,A=pascal,(,4,)的,Cholesky,分解,,A=pascal(4),R=chol(A),R,T,R,2,LU,分解:,LU,分解是将任意一个方正,A,分解成为一个交换下三角矩阵,L,和一个上三角矩阵,U,的乘积,,A=LU,,在,Matlab,中用函数,lu,来计算,LU,分解,例,3-14,求矩阵,A=1,4,2;5,6,9;4,1,8,的,LU,分解,,L1,U1=LU(A),L1*U1,3,奇异分解:,奇异值分解就是将 的矩阵,A,分解为,U*S*V,,其中,U,为 的酉矩阵,,V,为 的酉矩阵,,S,为 ,并可以表示如下:,,其中 ,,r=rank,(,A),,,,,Matlab,中奇异值是有函数,svd,()实现的。用,svd,计算矩阵,A=1 4 2;5 6 9,例,3-15,求矩阵,A=1 4 2;5 6 9,的奇异分解,,U,S,,,V=SVD(A),3.1.3,矩阵的特征值和特征向量,矩阵的特征值与特征向量在,MATLAB,中,计算矩阵,A,的特征值和特征向量的函数是,eig(A),,常用的调用格式有,3,种:,(1)E=eig(A),:求矩阵,A,的全部特征值,构成向量,E,。,(2)V,D=eig(A),:求矩阵,A,的全部特征值,构成对角阵,D,,并求,A,的特征向量构成,V,的列向量。,(3)V,D=eig(A,nobalance,),:与第,2,种格式类似,但第,2,种格式中先对,A,作相似变换后求矩阵,A,的特征值和特征向量,而格式,3,直接求矩阵,A,的特征值和特征向量。,例,3-16,求矩阵,A=6,12,19;-9,-20,-33;4,9,15,的特征值和特征向量,V,D=eig(A);,例,3-17,用求特征值的方法解方程。,3x,5,-7x,4,+5x,2,+2x-18=0p=3,-7,0,5,2,-18;A=compan(p);%A,的伴随矩阵,x1=eig(A)%,求,A,的特征值,x2=roots(p)%,直接求多项式,p,的零点,例,3-18,.,求解方程组,解 先用,MATLAB,函数,null,求出对应的齐次线性方程组的基础解系,再利用其系数矩阵的上、下三角阵求出方程组的一个特解,这样即可得到该方程组的通解,程序如下,:,A=1 1-3-1;3-1-3 4;1 5-9-8;,b=1 4 0;,format rat,C=null(A,r,);%,求基础解系,L,U=lu(A);%A=LU,L,为上三角阵,U,为下三角阵,X0=U(Lb)%,用,LU,求出一个齐次方程的特解,syms k1 k2,X=k1*C(:,1)+k2*C(:,2)+X0,运行结果为,X0=,0,0,-8/15,3/5,X=,3/2*k1-3/4*k2,3/2*k1+7/4*k2,k1-8/15,k2+3/5,即,为该非齐次方程组的通解,其中,k,1,k,2,为任意实数,.,3.2,矩阵元素运算,矩阵运算主要是对矩阵里的每个元素进行运算!,3.2.1,三角函数(,p48,),例,3-18,计算矩阵,A=6,12,19;-9,-20,-33;4,9,15,每个元素的正弦,其中元素值的单位为弧度。,Y=sin(A);,3.2.2,指数和对数函数(,p48-49,),例,3-19,计算矩阵,A=6,12,19;-9,-20,-33;4,9,15,每个元素的正指数和对数,其中元素值的单位为弧度。,Y=exp(A);,Y1=log2(abs(A);,3.2.2,截断和求余函数(,p49-50,),例,3-21,分别使用函数,mod(),和,rem(),对标量除法,-5/2,进行求余。,rem(-5,2),mod(-5,2),例,3-22,计算向量,a=-4:2:6,每个元素的符号。,a=-4:2:6;,B=sign(a),3.2.3,坐标变换函数(,P52,),例,3-23,将迪卡尔坐标系中(,1,,,1,,,1,)分别转换到球坐标系和极坐标中。,THETA,PHI,R=cart2sph(1,1,1);,P=THETA,PHI,R;,THETA,PHI,Z=cart2pol(1,1,1);,Q=THETA,PHI,Z;,R=P;Q;,
展开阅读全文