3.6矩阵的特征和线性代数 1.方阵的行列式:把一个方阵看作一个行列式,并对其按行列式的规则求值,这个值就称为矩阵所对应的行列式的值 det(x),得到方阵x的行列式 2.特征值,特征向量 E=eig(A),求矩阵A的全部特征值,组成向量E [V,D]=eig(A),该函数计算矩阵的特征值和特征向量,返回值V和D为俩个方阵,方阵V的每一列为一个特征向量,方阵D为对角矩阵,对角线上的元素为特征值。 求伴随矩阵特征值的方式来解方程 p=[3 5 2 1],a=compan(p),x=eig(a)br/>3.对角阵,只有对角线上有非0元素的矩阵称为对角矩阵,对角线上元素相等的对角矩阵称为数量矩阵,对角线上元素都为1的对角矩阵称为单位矩阵。 diag(a),提取矩阵a的主对角线元素,产生一个列向量 diag(a,k),提取第k条对角线的元素,组成一个列向量 4.上三角矩阵和下三角矩阵 上三角矩阵即矩阵的对角线以下的元素全为0 triu(a),返回上三角矩阵 triu(a,k),返回矩阵a的第k条对角线以上的元素 下三角矩阵即矩阵的对角线以上的元素全为0 tril(a),tril(a,k) 5.矩阵的逆和伪逆, 1)对于方阵A,如果存在一个与其同阶的方阵B,使得AxB=BxA=E(单位矩阵),则称A和B互为逆矩阵,inv()函数求逆矩阵 2)如果矩阵A不是一个方阵,或者是一个非满秩方阵时,没有逆矩阵,但可以找到一个于A的转置矩阵同型的矩阵B,使得同时满足 AxBxA=A BxAxB=B 此时称B是矩阵A的违逆,也称广义逆矩阵,pinv() 6.矩阵的秩,有行秩和列秩。行秩是矩阵的行向量组成的极大无关组中行向量的个数。列秩是矩阵的列向量组成的极大无关组中列向量的个数。矩阵的秩反映了矩阵中各行向量之间和各列向量之间的线性关系。对于满秩矩阵,如果秩等于行数其各行向量是线性无关的,如果秩等于列数其各列向量是线性无关的。 rank(a),得到矩阵a的秩 7.矩阵的迹,对角线元素之和,也等于矩阵的特征值之和 trace(a),求矩阵的迹 8.矩阵的范数 1)1-范数,norm(a,1),计算矩阵a的1-范数,返回矩阵的列向元素和的最大值 2)2-范数,norm(a,2)或者norm(a),计算矩阵a的2-范数,返回矩阵的最大奇异数。当norm(a)特别耗费时间时我们可以用normest(a)求2-范数的估计值 3)无穷-范数,norm(a,inf),计算矩阵a的无穷-范数,返回矩阵的行向元素和的最大值 4)Frobenius-范数,norm(a,'fro'),该函数计算矩阵的Frobenius范数 9.矩阵的条件数,是用来判断矩阵病态的一个量,矩阵的条件数越大,表明该矩阵越变态,否则该矩阵越良态。Hiblert矩阵就是有名的病态矩阵。 cond(a,1),计算矩阵a的1-范数下的条件数 cond(a),或者cond(a,2),计算矩阵a的2-范数下的条件数 cond(a,inf),计算矩阵a的无穷-范数下的条件数 10.矩阵的标准正交基 b=orth(a),矩阵b的列向量组成了矩阵a的一组标准正交基 11.矩阵的超越函数 sqrtm(),计算矩阵的平方根 lgom(),计算矩阵的自然对数 expm(),计算矩阵的指数 funm(),计算矩阵的超越函数值 funm(a,@sin),funm(a,@cos),funm(a,@exp)=expm(a) sqrt(a)该函数以矩阵的元素为计算单元,sqrtm(a)该函数以矩阵为计算单元 12.稀疏矩阵,matlab中对矩阵的存储有两种方式,完全存储方式和稀疏存储方式。完全存储方式是将矩阵的全部元素按照矩阵的列存储,如果矩阵中的元素大多数是零,会浪费很多的存储空间。 稀疏存储矩阵只是矩阵的存储方式不同,其它的运算规则于普通矩阵是一样的。用户可以创建整型,双精度,复数类型和逻辑类型的稀疏矩阵。稀疏矩阵不能通过函数自动生成,只能是普通矩阵转换为稀疏矩阵。定义在完全存储方式下的运算只能产生完全存储的矩阵,不论多少各元素为0。在运算过程中,稀疏存储矩阵可以直接参与运算,运算的结果也是稀疏矩阵,但是如果运算涉及到的矩阵不都是稀疏矩阵那存储形式是完全存储形式。 sparse:普通矩阵转换为稀疏矩阵 s=sparse(a),如果a也是稀疏矩阵那函数的调用就相当于s=a s=sparse(m,n),产生m行n列且元素全是0的稀疏矩阵 S=sparse(i,j,s,m,n,nzmax),依次取i,j中的值最为S的行标和列标,再把s中的值赋值到S中所对应的行标和列标,且最多有nzmax个非零元素。 full:稀疏矩阵转换为普通矩阵 nnz:矩阵中非0元素的个数 nonzeros:矩阵中非0元素值 d=nnz(s)/prod(size(s)):获取非零元素的密度,非零元素的个数除以矩阵行列的乘积 issparse:测试矩阵是否为稀疏矩阵 spy:图形化显示稀疏矩阵中非零元素 spalloc:为稀疏矩阵分配内存空间 13.特殊稀疏矩阵 1)单位矩阵是一个具有稀疏特征的矩阵,eye()产生的单位矩阵是完全存储方式的矩阵。 2)speye(n),产生一个n行n列的单位稀疏矩阵 speye(m,n),产生一个m行n列的单位稀疏矩阵 3)spones()将稀疏矩阵中的非零元素替换为1 spconvert(),将普通矩阵转换我稀疏矩阵