2.1 特殊矩阵

通用的特殊矩阵

  • zeros函数: 产生全0矩阵,即零矩阵。

  • ones函数: 产生全1函数,即幺矩阵。

  • eye函数: 产生对角线为1的矩阵,当矩阵为方针时,为单位矩阵。

  • rand函数: 产生 (0,1) 区间均匀分布的随机矩阵。

  • 通过 fix(a+(b-a+1)*rand(x)) 可产生[a,b]区间上均匀分布的随机整数。

  • randn函数: n为normal的意思,产生均值为0,方差为1的标准正态分布随机矩阵。

    • 通过 $\mu+\sigma x$ 来得到均值为 $\mu$ ,方差为 $\sigma{^2}$ 的随机数据。(高中数学知识,证明可百度)
  • 对于上述函数的调用格式,我们都有如下规定,zeros(m)为产生 $m\times m$ 的零矩阵,zeros(m,n)为产生类型为 $m\times n$ 的零矩阵, zeros(size(A)) 为产生和 A 同类型的零矩阵,其余函数和此类似。

用于专门学科的特殊矩阵

  1. 魔方/幻方矩阵 (Magic Square)

    • n阶幻方矩阵每行,每列,主副对角线的和相等。
    • n阶幻方矩阵每行每列的元素之和为 $(1+2+3+\cdots+n^2)/n=(n+n^3)/2$
  2. 范德蒙矩阵 (Vandermonde)

    • 利用 Vander(V) 生成以向量 V 为基础的**范德蒙(Vandermonde)**矩阵。

    Vander.png

    A=vander(1:5)
    A =
    
         1     1     1     1     1
        16     8     4     2     1
        81    27     9     3     1
       256    64    16     4     1
       625   125    25     5     1
    
  3. 希尔伯特矩阵 (Hilbert)

    • 利用 hilb(n) 可以生成n阶希尔伯特矩阵。

    Hilbert.png

  4. 伴随矩阵

    • 通过 compan(p) 可以生成向量p对应的多项式的伴随矩阵。p向量中高次系数在前,低次系数在后。(我感觉我学过伴随矩阵,但看了之后又感觉没学过QAQ)

    Company.png

  5. 帕斯卡矩阵

    • 通过 pascal(n) 生成一个n阶帕斯卡矩阵。

    Pascal1.png

    Pascal2.png


2.2 矩阵变换

对角阵

  • 对角矩阵:只有对角线上有非0元素的矩阵是对角矩阵。如果对角线上元素相等,则称为数量矩阵。当对角线上元素相等且为1,称为单位矩阵。
  • 提取矩阵的对角线元素
    • diag(A): 提取矩阵A主对角线元素,产生一个列向量。
    • diag(A,k): 提取矩阵A第k条对角线元素,产生一个列向量。主对角线为第0条,往上依次为1,2···n,往下依次为-1,-2 ··· -n。
  • 构造对角矩阵
    • diag(V): 以向量V为主对角线元素,产生对角矩阵。
    • diag(V,k): 以向量V为第k条对角线元素,产生对角矩阵。

三角阵

  • 矩阵对角线以上元素全为0为上三角矩阵,以下全为0为下三角矩阵。
  • 上,下三角矩阵 (上 up,下 low),关于下三角的只需要把 triu 换为 tril
    • triu(A): 提取矩阵A的主对角线及以上的元素。
    • triu(A,k): 提取矩阵A的第k条对角线及以上的元素。

矩阵的转置

  • 普通转置运算符为 .' ,共轭转置为 ' ,它在转置的基础上还会求每个数的复共轭。

矩阵的旋转

  • rot90(A,k): 将矩阵A逆时针方向旋转 $90^{\circ}$ 的k倍,当k为1时可以省略。

矩阵的翻转

  • fliplr(A): 对矩阵A实施左右翻转。
  • flipud(A): 对矩阵A进行上下反转。

矩阵的求逆

  • inv(A): 求A的逆阵。

矩阵的阶梯状

  • rref(A): 将矩阵A化为阶梯状(具体不再解释,不懂可百度)

2.3 矩阵求值

方阵的行列式

  • 通过 det(A) 可以求A矩阵的行列式值。

矩阵的秩

  • 通过 rank(A) 可以求A矩阵的秩。

矩阵的迹

  • 矩阵的迹等于对角线元素之和,也等于特征值之和。通过 trace(A) 可以求A矩阵的迹。

向量和矩阵的范数

  • 范数用来度量矩阵或向量在某种意义下的长度。

  • 向量的范数

    • 向量 1-范数 : 为向量元素的绝对值之和。通过 norm(V,1)计算V的1-范数

    $$ ||V||{_1}=\sum\limits^n_{i=1}|v_i| $$

    • 向量 2-范数 : 为向量元素绝对值的平方和的平方根。通过norm(V)或者norm(V,2)计算向量V的2-范数

    $$ ||V||_2=\sqrt{\sum\limits^n_{i=1}|v_i|^2} $$

    • 向量 ∞-范数 : 所有向量元素绝对值中的最大值。通过norm(V,inf)计算向量V的∞-范数

    $$ ||V||_{\infty}=\mathop{max}\limits_{0<=i<=n}{|v_i|} $$

  • 矩阵的范数**(对不起我实在不想写latex了,直接截图了)**

    • 矩阵的范数求法和向量的一样一样滴

    fanshu.png

矩阵的条件数

  • 用于描述矩阵性能的数,等于矩阵的范数乘逆阵的范数,条件数约接近一,矩阵性能越好。
  • 通过 cond(A,1)cond(A)或cond(A,2) ,cond(A,inf) 分别求矩阵A三种范数下的条件数。

2.4 矩阵的特征值与特征向量

求矩阵的特征值

  • E=eig(A) :求矩阵A的全部特征值,构成向量E。
  • [X,D]=eig(A) :求矩阵A的全部特征值,构成对角阵D,并产生矩阵X,X各列为相应特征值对应的特征向量。

特征值的几何意义

这里没太听懂,回头来补,咕咕咕QAQ。


2.5 稀疏矩阵

稀疏矩阵就是零元素个数远远大于非0元素个数的矩阵

矩阵的存储方式

  • 完全存储方式:把所以元素按列依次存储
  • 稀疏存储方式:只存储非0元素的行列下标和数值,不改变存储顺序,依次按列存储。

稀疏存储方式的产生

  • 完全存储方式与稀疏存储方式的转化

    • 通过 A=sparse(S) 可以将矩阵S转化为稀疏存储方式的矩阵A
    • 通过 S=full(A) 可以将矩阵A转化为完全存储方式的矩阵S。
  • 直接建立稀疏存储矩阵

    • sparse(m,n) 可以建立一个 $m\times n$ 的所有元素都为0的稀疏矩阵。

    • sparse(u,v,S) 其中u,v,S为3个等长向量,分别表示行下标,列下标,非零元素。

    • B=spconvert(A) ,A是一个 $m\times 3$ 或 $m\times4$ 的矩阵,每一行元素依次表示一个稀疏矩阵的非零元素,从1~4列分别为,行下标,列下标,元素实部,元素虚部,若元素为实数,则第四列省略。

  • 单位矩阵的稀疏存储

    • speye(m,n) 可返回一个 $m\times n$ 的稀疏存储单位矩阵。