MATLAB基础语句(三)


第三部分

一、矩阵的行列式、秩、迹及特征值分析

1、矩阵的行列式

  det():求取方阵的行列式值

2、矩阵的秩

  rank():求矩阵列(或行)的任一极大线性无关组所含的向量个数

3、矩阵的迹

  trace():方阵主对角元素的和(也等于矩阵特征值的和)

4、矩阵的特征分析

  E = eig(A):将矩阵A的全部特征值构成向量E

  [V,E] = eig(A):求矩阵A的全部特征值,构成对角矩阵D;求A的特征向量,构成列向量V

二、矩阵的逆与线性方程组求解

1、矩阵的逆

  inv():求满秩方阵的逆

  pinv():求不是方阵或非满秩矩阵的逆(伪逆:ABA = A)

  注:是否满秩可通过求方阵的秩是否与其列(或行)相同

2、线性方程求解

  eg:有AX = B ,A,B已知,求解X

    则:X = A-1B = inv(A) * B = A / B

三、矩阵的分解和变换

1、矩阵的分解

(1)三角分解(方阵)

  [ L , U ] = lu(A) 

  L为与A同阶的上三角矩阵

  U为与A同阶的上三角矩阵

>> A = [1,2,3;4,5,6;7,8,9];
>> [L,U] = lu(A)

L =

    0.1429    1.0000         0
    0.5714    0.5000    1.0000
    1.0000         0         0


U =

    7.0000    8.0000    9.0000
         0    0.8571    1.7143
         0         0   -0.000

(2)正交分解

  [ Q , R ] = qr(A)

  若A为n行m列矩阵,则

  Q为A的n阶正交方阵,满足 A * Q = E

  R为与A同阶的上三角矩阵

>> A = [1,2,3;4,5,6];
>> [Q , R] = qr(A)

Q =

   -0.2425   -0.9701
   -0.9701    0.2425


R =

   -4.1231   -5.3358   -6.5485
         0   -0.7276   -1.4552

(3)奇异值分解

  [ U , S , V ] = svd(A)

  若A为n行m列矩阵,则

  U:n阶的正交方阵

  S:n*m阶的对角阵,对角元素为a的奇异值,程度为n、m的较小值

  V:m阶正交方阵

2、变换

(1)转置

  A': 求A的转置

(2)共轭

  conj(A):求取A的共轭矩阵

(3)矩阵的行、列扩展

>> A = [1,2,3;4,5,6;7,8,9];
>> A(3,4) = 10

A =

     1     2     3     0
     4     5     6     0
     7     8     9    10

>> A(:,6) = [1;1;1]

A =

     1     2     3     0     0     1
     4     5     6     0     0     1
     7     8     9    10     0     1

>> A(4,:) = [1,2,3,4,5,6]

A =

     1     2     3     0     0     1
     4     5     6     0     0     1
     7     8     9    10     0     1
     1     2     3     4     5     6