四元数基本运算
Published:
四元数基本介绍
四元数的基本形式为:\(A = a_0 + a_1 i + a_2 j + a_3 k\),其中 \(i,j,k\) 为类似于复数中的虚数单位 \(i\),且满足如下规则
\[jk=i,\quad kj=-i, \quad ki = j, \quad ik=-j, \quad ij = k, \quad ji = -k\] \[i^2 = j^2 = k^2 = -1\]这里可以看到,四元数中没有交换律,\(jk \neq kj\),这一点在四元数计算中很容易出错
这里我们可以把四元数分成两部分,实部 \(a_0\) 和矢部 \(a_1 i + a_2 j + a_3 k\),为了书写方便,我们可以简写为:\(A = a_0 + \vec{a}\),其中\(\vec{a} = a_1 i + a_2 j +a_3 k\)
基本运算
加减
四元数的加减法与复数相同,即对应实虚部相加减,对于\(A = a_0 + a_1 i + a_2 j + a_3 k\)和\(B = b_0 + b_1 i + b_2 j + b_3 k\),有
\[A \pm B = (a_0 \pm b_0) + (a_1 \pm b_1) i + (a_2 \pm b_2) j + (a_3 \pm b_3) k = (a_0 \pm b_0) + (\vec{a} \pm \vec{b})\]乘除
四元数的乘法只需正常展开,按前文进行化简即可(注意不可交换顺序)
这里比较特殊的是实部为\(0\)的四元数乘法,对于\(A = 0 + a_1 i + a_2 j + a_3 k\)和\(B = 0 + b_1 i + b_2 j + b_3 k\),有
\[\begin{aligned} A B &= (0 + a_1 i + a_2 j + a_3 k)(0 + b_1 i + b_2 j + b_3 k) \\ &= -(a_1 b_1 + a_2 b_2 + a_3 b_3) + [(a_2 b_3 - a_3 b_2) i - (a_1 b_3 - a_3 b_1) j + (a_1 b_2 - a_2 b_1) k] \\ &= - (\vec{a} \cdot \vec{b}) + (\vec{a} \times \vec{b}) \end{aligned}\]可以看见,点乘其实是只有矢部的四元数相乘的实部,而叉乘其实是相乘后的矢部
这里我们也可以看到,叉乘的反对易其实是四元数反对易的结果
而对于一般的四元数,其乘法得到的结果为
\[AB = (a_0 b_0 + \vec{a} \cdot \vec{b}) + (a_0 \vec{b} + \vec{a} b_0 + \vec{a} \times \vec{b})\]这里的实部可以用矩阵写为
\[(a_0 b_0 + \vec{a} \cdot \vec{b}) = \begin{pmatrix} a_0 & a_1 & a_2 & a_3 \end{pmatrix} \begin{pmatrix} 1 & & & \\ & -1 & & \\ & & -1 & \\ & & & -1 \end{pmatrix} \begin{pmatrix} b_0 \\ b_1 \\ b_2 \\ b_3 \end{pmatrix}\]可以看见这里包含了Minkowski度规,这与四元数与电磁场的紧密关系密不可分
共轭
四元数的共轭与复数相同,即把矢部(虚部)全部取反即可
\[A^{*} = A_0 - \vec{A} = A_0 - A_1 i - A_2 j - A_3 k\]模
四元数的模长与复数相同
\[|A| = \sqrt{A_0^2+A_1^2+A_2^2+A^3} = \sqrt{A A^{*}}\]求导
对于四元数,有如下导数算符
\[D = \frac{\partial}{\partial t} + i \frac{\partial}{\partial x} + j \frac{\partial}{\partial y} + k \frac{\partial}{\partial z} = \frac{\partial}{\partial t} + \nabla\] \[\nabla = i \frac{\partial}{\partial x} + j \frac{\partial}{\partial y} + k \frac{\partial}{\partial z}\]可以看见,\(\nabla\) 算符其实就是四元数求导的空间部分. 这里我们把 \(\nabla\) 算符当成一个普通的无实部四元数矢量,对于矢量\(\vec{a}\),有
\[\nabla \vec{a} = - \nabla \cdot \vec{a} + \nabla \times \vec{a}\]此外有
\[\begin{aligned} \nabla\nabla &=-\frac{\partial^{2}}{\partial x^{2}}-\frac{\partial^{2}}{\partial y^{2}}-\frac{\partial^{2}}{\partial z^{2}}+(ij+ji)(\frac{\partial^{2}}{\partial x \partial y})+(jk+kj)(\frac{\partial^{2}}{\partial y\partial z}) +(ik+ki)(\frac{\partial^2}{\partial x \partial y}) \\ &=-\frac{\partial^{2}}{\partial x^{2}}-\frac{\partial^{2}}{\partial y^{2}}-\frac{\partial^{2}}{\partial z^{2}} \\ &=-\nabla^{2} \end{aligned}\]我们便自然地导出了Laplace算子
对易式
符号定义
在四元数中,记 \(a\) 为算符,\(b\) 为被算符操作的变量,由于不具有交换律,故一般而言 \(ab \neq ba\) ,因此我们引入新的符号“\(\leftarrow\)” 、“\(\rightarrow\)”来指示算符操作的“方向”,由前文知,有
\[\begin{aligned} a\rightarrow b &=a_0 b_0 - a_1 b_1 - a_2 b_2 - a_3 b_3 \\ &+a_0(b_1 i + b_2 j + b_3 k) + (a_1 i + a_2 j + a_3 k) b_0 \\ &+(a_2 b_3 - a_3 b_2) i + (a_3 b_1 - a_1 b_3) j +(a_1 b_2 - a_2 b_1) k \\ \end{aligned}\] \[\begin{aligned} b \leftarrow a &=a_0 b_0 - a_1 b_1 - a_2 b_2 - a_3 b_3 \\ &+a_0(b_1 i + b_2 j + b_3 k) + (a_1 i + a_2 j + a_3 k) b_0 \\ &-(a_2 b_3 - a_3 b_2) i - (a_3 b_1 - a_1 b_3) j - (a_1 b_2 - a_2 b_1) k \\ \end{aligned}\]这里如果算符 \(a\) 是导数算符,那么有
\[\begin{aligned}&D\rightarrow A=\left(D_0A_0-\nabla\cdot\vec{A}\right)+D_0\vec{A}+\nabla A_0+\nabla\times\vec{A}\\&A\leftarrow D=\left(D_0A_0-\nabla\cdot\vec{A}\right)+D_0\vec{A}+\nabla A_0-\nabla\times\vec{A}\end{aligned}\]对易式
在前文中我们可以看见,一般而言,\(a \leftarrow b \neq b \rightarrow a\),为了描述其中的差异,我们定义对易子 \([a,b]\) 和反对易子 \(\{a,b\}\)
\([a,b] =\frac{1}{2}(a\rightarrow b + b\leftarrow a)\) \(\{a,b\} =\frac{1}{2}(a\rightarrow b - b\leftarrow a)\)
对于导数算符,则有
\[\begin{aligned} &[D,A]=\nabla\times\vec{A}\\ &\{D,A\}=\frac{\partial\left(A_0+\vec{A}\right)}{\partial t}-\nabla\cdot\vec{A}+\nabla A_0 \end{aligned}\]