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 同类型的零矩阵,其余函数和此类似。
用于专门学科的特殊矩阵
魔方/幻方矩阵 (Magic Square)
- n阶幻方矩阵每行,每列,主副对角线的和相等。
- n阶幻方矩阵每行每列的元素之和为 $(1+2+3+\cdots+n^2)/n=(n+n^3)/2$
范德蒙矩阵 (Vandermonde)
- 利用 Vander(V) 生成以向量 V 为基础的**范德蒙(Vandermonde)**矩阵。
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
希尔伯特矩阵 (Hilbert)
- 利用 hilb(n) 可以生成n阶希尔伯特矩阵。
伴随矩阵
- 通过 compan(p) 可以生成向量p对应的多项式的伴随矩阵。p向量中高次系数在前,低次系数在后。(我感觉我学过伴随矩阵,但看了之后又感觉没学过QAQ)
帕斯卡矩阵
- 通过 pascal(n) 生成一个n阶帕斯卡矩阵。
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了,直接截图了)**
- 矩阵的范数求法和向量的一样一样滴
矩阵的条件数
- 用于描述矩阵性能的数,等于矩阵的范数乘逆阵的范数,条件数约接近一,矩阵性能越好。
- 通过 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$ 的稀疏存储单位矩阵。