Z

矩阵

矩阵是一系列数字的集合,只不过它们有特定的组织形式与计算方式。矩阵是 mm nn 列的,也就是 m×nm \times n ,就像这样

(123456) \begin{pmatrix} 1 & 2\\ 3 & 4\\ 5 & 6 \end{pmatrix}

这就是一个 3×23 \times 2 的矩阵。

乘以一个数

矩阵乘以一个数非常简单,将矩阵内每一个值都乘以这个数即可,例如:

2×(123456)=(24681012) 2\times \begin{pmatrix} 1 & 2\\ 3 & 4\\ 5 & 6 \end{pmatrix} =\begin{pmatrix} 2 & 4\\ 6 & 8\\ 10 & 12 \end{pmatrix}

乘以矩阵

要想计算矩阵乘以矩阵,首先两个矩阵得能乘才行,这要求第一个矩阵的列数等于第二个矩阵的行数,即 (m×n)(n×p)=(m×p) (m\times n)(n\times p)=(m\times p)

矩阵乘以矩阵结果仍是一个矩阵,结果矩阵的每一个元素,都是第一个矩阵第 ii 行与第二个矩阵第 jj 列的点积,例如

(123456)(642531)=(16104382410603816) \begin{pmatrix} 1 & 2\\ 3 & 4\\ 5 & 6 \end{pmatrix}\begin{pmatrix} 6 & 4 & 2\\ 5 & 3 & 1 \end{pmatrix} =\begin{pmatrix} 16 & 10 & 4\\ 38 & 24 & 10\\ 60 & 38 & 16 \end{pmatrix}

以结果矩阵的第二行第二列为例,它的计算方法就是第一个矩阵的第二行与第二个矩阵的第二行点积,即 34+43 =243\cdotp 4+4\cdotp 3\ =24 ,其他各行各列依此类推。

由此可以看出,矩阵是没有交换律的,除非是一些特殊的矩阵,但结合律与分配律仍然存在。

(AB)C=A(BC) (AB)C=A(BC) A(B+C)=AB+AC A(B+C)=AB+AC (A+B)C=AC+BC (A+B)C=AC+BC

乘以向量

首先向量应该是一个列向量,它可以看作是 (m×1) (m\times 1) 的矩阵。将矩阵放在向量的左边,它是一个 (mn×m) (mn\times m) 的矩阵,这样两者就能相乘了,例如

(1001)(xy)=(xy) \begin{pmatrix} -1 & 0\\ 0 & 1 \end{pmatrix}\begin{pmatrix} x\\ y \end{pmatrix} =\begin{pmatrix} -x\\ y \end{pmatrix}

转置

矩阵的转置很简单,将 mm nn 列变为 nn mm 列即可,例如

(123456)T=(135246) \begin{pmatrix} 1 & 2\\ 3 & 4\\ 5 & 6 \end{pmatrix}^{T} =\begin{pmatrix} 1 & 3 & 5\\ 2 & 4 & 6 \end{pmatrix}

矩阵的转置有一个性质,对两个矩阵的乘积做转置,等于后一个矩阵的转置乘以前一个矩阵的转置,即

(AB)T=BTAT(AB)^{T}=B^{T}A^{T}

单位矩阵

单位矩阵是一个特殊的矩阵,它是一个对角阵,也就是只有对角线(从左上到右下)上才有非零的元素,其余位置全是零

I3×3=(100010001)I_{3\times 3} =\begin{pmatrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 1 \end{pmatrix}

这就是一个 3×3 3\times 3 的单位矩阵。单位矩阵在运算上基本没用。因为任何矩阵乘以单位矩阵仍然等于其自身,但通过单位矩阵我们能定义一些其他的运算,例如矩阵的逆,如果能找到一个矩阵与某一矩阵相乘,不论顺序,得到的结果都是单位矩阵,那么这个矩阵成为原矩阵的逆矩阵,也就是说两个矩阵是互逆的

AA1=A1A=IAA^{-1} =A^{-1} A=I

矩阵的逆的性质与矩阵转置是类似的

(AB)1=B1A1(AB)^{-1}=B^{-1}A^{-1}

向量点积叉积的矩阵表示

向量(列向量)可以看作是 m×1m\times 1 的矩阵,那么点积与叉积自然能用向量形式表示

ab=aTb=(xa ya za)(xbybzb)=(xaxb+yayb+zazb)\vec{a} \cdotp \vec{b} =\vec{a}^{T}\vec{b} =(x_{a} \ y_{a} \ z_{a} )\begin{pmatrix} x_{b}\\ y_{b}\\ z_{b} \end{pmatrix} =(x_{a} x_{b} +y_{a} y_{b} +z_{a} z_{b} ) a×b=Ab=(0zayaza0xayaxa0)(xbybzb)\vec{a} \times \vec{b} =A^{\ast } b=\begin{pmatrix} 0 & -z_{a} & y_{a}\\ z_{a} & 0 & -x_{a}\\ -y_{a} & x_{a} & 0 \end{pmatrix}\begin{pmatrix} x_{b}\\ y_{b}\\ z_{b} \end{pmatrix}

注意这里不是 AA bb 而是 AA^{\ast } 乘b, AA^{\ast } 是我们对 a\vec{a} 重新组织后得出的矩阵,称为dual matrix