四元數

**四元數**（英語：Quaternion）是由愛爾蘭數學家威廉・盧雲・哈密頓在 1843 年創立出的數學概念。通常記為 **H**，或 $\mathbb {H} $ 。

從明確地角度而言，四元數是複數的不可交換延伸。如把四元數的集合考慮成多維實數空間的話，四元數則代表著一個四維空間，相對於複數為二維空間。

作為用於描述現實空間的坐標表示方式，人們在複數的基礎上創造了四元數並以 a+bi+cj+dk 的形式說明空間點所在位置。
i、j、k 作為一種特殊的虛數單位參與運算，並有以下運算規則：i0=j0=k0=1，i2=j2=k2=-1

對於 i、j、k 本身的幾何意義可以理解為一種旋轉，其中 i 旋轉代表 X 軸與 Y 軸相交平面中 X 軸正向向 Y 軸正向的旋轉，j 旋轉代表 Z 軸與 X 軸相交平面中 Z 軸正向向 X 軸正向的旋轉，k 旋轉代表 Y 軸與 Z 軸相交平面中 Y 軸正向向 Z 軸正向的旋轉，-i、-j、-k 分別代表 i、j、k 旋轉的反向旋轉。

## 基礎

### 定義

複數是由實數加上虛數單位 $i$ 組成，其中

　
: $i^{2}=-1\,$ 。

相似地，四元數都是由實數加上三個元素 $i$ 、 $j$ 、 $k$ 組成，而且它們有如下的關係：

　
: $i^{2}=j^{2}=k^{2}=ijk=-1\,$

每個四元數都是 1、 $i$ 、 $j$ 和 $k$ 的線性組合，即是四元數一般可表示為 $a+bi+cj+dk\,$ 。

要把兩個四元數相加只需將相類的係數加起來就可以，就像複數一樣。至於乘法則可跟隨以下的乘法表：

四元數的單位元素的乘法構成了八階四元群， $Q_{8}$ 。

### 性質

四元數不像實數或複數那樣，它的乘法是不可交換的，例如：

　
: $i\,j=k,\,j\,i=-k$ ；

　
: $j\,k=i,\,k\,j=-i$ ；

　
: $k\,i=j,\,i\,k=-j$ 。

四元數是除法環的一個例子。除了沒有乘法的交換律外，除法環與域是相類的。特別地，乘法的結合律仍舊存在、非零元素仍有唯一的反元素。

四元數形成一個在實數上的四維結合代數（事實上是除法代數），並包括複數，但不與複數組成結合代數。
四元數（以及實數和複數）都只是有限維的實數結合除法代數。

四元數的不可交換性往往導致一些令人意外的結果，例如四元數的 _n_- 階多項式能有多於 _n_ 個不同的根。
例如方程式 $h^{2}+1=0\,$ 就有無數多個解。
只要是符合 $b^{2}+c^{2}+d^{2}=1\,$ 的實數，那麼 $h=b\,i+c\,j+d\,k$ 就是一個解。

一個四元數 $h=a+b\,i+c\,j+d\,k$ 的**共軛**值定義為：

 $h^{*}=a-b\,i-c\,j-d\,k$
而它的絕對值則是非負實數，定義為：

 $\left|h\right|={\sqrt {h\cdot h^{*}}}={\sqrt {a^{2}+b^{2}+c^{2}+d^{2}}}$
注意 $(h\,k)^{*}=k^{*}\,h^{*}$ ，一般狀況下不等於 $h^{*}\,k^{*}$ 。

四元數的**乘逆**可以 $h^{-1}={\frac {h^{*}}{\left|h\right|^{2}}}$ 算得。

透過使用距離函數 $d(h,k)=|h-k|\,$ ，四元數便可成為同胚於 $\mathbb {R} ^{4}$ 的度量空間，
並且有連續的算術運算。另外，對於所有四元數 $h\,$ 和 $k\,$ 皆有 $|h\,k|=|h|\,|k|$ 。
若以絕對值為模，則四元數可組成一實數 巴拿赫空間。

### 群旋轉

非零四元數的乘法群在 **R**3 的實部為零的部分上的共軛作用可以實現轉動。單位四元數（絕對值為 1 的四元數）若實部為 cos (_t_)，它的共軛作用是一個角度為 2_t_ 的轉動，轉軸為虛部的方向。四元數的優點是：

1. 表達式無奇異點（和例如歐拉角之類的表示相比）
2. 比矩陣更簡煉（也更快速）
3. 單位四元數的對可以表示四維空間中的一個轉動。

所有單位四元數的集合組成一個三維球 _S_3 和在乘法下的一個群（一個李群）。_S_3 是行列式為 1 的實正交 3×3 正交矩陣的群 _SO_(3,**R**) 的雙重複蓋，因為每_兩個_單位四元數通過上述關係對應於一個轉動。群 _S_3 和 _SU_(2) 同構，_SU_(2) 是行列式為 1 的復酉 2×2 矩陣的群。令 _A_ 為形為 _a_ + _bi_ + _cj_ + _dk_ 的四元數的集合，其中 _a_, _b_, _c_ 和 _d_ 或者都是整數或者都是分子為奇數分母為 2 的有理數。集合 _A_ 是一個環，並且是一個格。該環中存在 24 個四元數，而它們是施萊夫利符號為 {3,4,3} 的正二十四胞體的頂點。

### 以矩陣表示四元數

有兩種方法能以矩陣表示四元數，並以矩陣之加法、乘法應用於四元數之加法、乘法。

第一種是以二階複數矩陣表示。四元數的三個元素 **i**、**j**、**k** 採用矩陣表示法（其中斜體字 $i$ 為 ${\sqrt {-1}}$ ；_σ_x、_σ_y、_σ_z 為包立矩陣）：

　
: $\mathbf {i} =-i\sigma _{x}={\begin{pmatrix}0&-i\\-i&0\end{pmatrix}},\mathbf {j} =-i\sigma _{y}={\begin{pmatrix}0&-1\\1&0\end{pmatrix}},\mathbf {k} =-i\sigma _{z}={\begin{pmatrix}-i&0\\0&i\end{pmatrix}}$ 。

則任意四元數 _h_ = _a_ + _b_**i** + _c_**j** + _d_**k** 的矩陣形式為：

　
: ${\begin{pmatrix}a-di&-c-bi\\c-bi&a+di\end{pmatrix}}$

這種表示法有如下優點：

* 使 _b_ = _d_ = 0，可迴歸到一複數 _h_ = _a_ + _c_**j**，相應於一個實矩陣。（參見複數的矩陣表達式。）
* 四元數的絕對值平方就等於矩陣的行列式。
* 四元數的共軛值就等於矩陣的共軛轉置。
* 對於單位四元數 (|_h_| = 1) 而言，這種表示方式給了四維球體和 SU (2) 之間的一個同型，而後者對於量子力學中的自旋的研究十分重要。（參見包立矩陣）

第二種則是以四階實數矩陣表示（相當與把上述表示中的複數再換成其矩陣表示）： $i\leftrightarrow {\begin{pmatrix}0&-1\\1&\;\;0\end{pmatrix}}$

　
: ${\begin{pmatrix}a&d&-c&b\\-d&a&-b&-c\\c&b&a&-d\\-b&c&d&a\end{pmatrix}}=a{\begin{pmatrix}1&0&0&0\\0&1&0&0\\0&0&1&0\\0&0&0&1\end{pmatrix}}+b{\begin{pmatrix}0&0&0&1\\0&0&-1&0\\0&1&0&0\\-1&0&0&0\end{pmatrix}}+c{\begin{pmatrix}0&0&-1&0\\0&0&0&-1\\1&0&0&0\\0&1&0&0\end{pmatrix}}+d{\begin{pmatrix}0&1&0&0\\-1&0&0&0\\0&0&0&-1\\0&0&1&0\end{pmatrix}}.$

其中四元數的共軛等於矩陣的轉置，模的四次方等於矩陣的行列式。

## 四元數運算

四元數運算在電動力學與廣義相對論中有廣泛的應用。四元數可以用來取代張量表示。有時候採用帶有複數元素之四元數會比較容易，導得結果不為除法代數之形式。然而亦可結合共軛運算以達到相同的運算結果。

此處僅討論具有實數元素之四元數，並將以兩種形式來描述四元數。其中一種是向量與純量的結合，另一形式兩個創建量 (constructor) 與雙向量 (bivector；i、j 與 k) 的結合。

定義兩個四元數:

　
: $q=a+{\vec {u}}=a+bi+cj+dk$

　
: $p=t+{\vec {v}}=t+xi+yj+zk$

其中 ${\vec {u}}$ 表示向量 <b, c, d>，而 ${\vec {v}}$ 表示向量 <x, y, z>.

### 加、乘和一般函數

**四元數加法：_p_ + _q_**
: 跟複數、向量和矩陣一樣，兩個四元數之和需要將不同的元素加起來：

　
: $p+q=a+t+{\vec {u}}+{\vec {v}}=(a+t)+(b+x)i+(c+y)j+(d+z)k$

加法遵循實數和複數的所有交換律和結合律。

**四元數乘法：_qp_**
: 兩個四元數之間的非可換乘積通常被稱為格拉斯曼積，這個積上面已經簡單介紹過，它的完整型態是：

$$
qp=at-{\vec {u}}\cdot {\vec {v}}+a{\vec {v}}+t{\vec {u}}+{\vec {u}}\times {\vec {v}}
$$

$$
qp=(at-bx-cy-dz)+(bt+ax+dy-cz)i+(ct+ay+bz-dx)j+(dt+za+cx-by)k\,
$$

由於四元數乘法的非可換性，pq 並不等於 qp。格拉斯曼積常用在描述許多其他代數函數。qp 乘積的向量部分是:

$$
qp=at-{\vec {u}}\cdot {\vec {v}}+a{\vec {v}}+t{\vec {u}}+{\vec {u}}\times {\vec {v}}
$$

**四元數點積： _p_ · _q_**
: 點積也叫做歐幾里得內積，四元數的點積等同於一個四維向量的點積。點積的值是 p 中每個元素的數值與 q 中相應元素的數值的乘積的和。這是四元數之間的可換積，並返回一個純量。

$$
p\cdot q=at+{\vec {u}}\cdot {\vec {v}}=at+bx+cy+dz
$$

點積可以用格拉斯曼積的形式表示:

$$
p\cdot q={\frac {p^{*}q+q^{*}p}{2}}
$$

這個積對於從四元數分離出一個元素有用。例如，i 項可以從 p 中這樣提出來：

$$
p\cdot i=x
$$

**四元數外積：Outer (p,q)**
:

歐幾里得外積並不常用；然而因為外積和內積的格拉斯曼積形式的相似性。它們總是一同被提及:

$$
\operatorname {Outer} (p,q)={\frac {p^{*}q-q^{*}p}{2}}
$$

$$
\operatorname {Outer} (p,q)=t{\vec {u}}-a{\vec {v}}-{\vec {v}}\times {\vec {u}}
$$

$$
\operatorname {Outer} (p,q)=(tb-ax+cz-dy)i+(tc-ay+dx-bz)j+(td-az+by-xc)k
$$

**四元數偶積：Even (p,q)**
:

四元數偶積也不常用，但是它也會被提到，因為它和奇積的相似性。它是純對稱的積；因此，它是完全可交換的。

$$
\operatorname {Even} (p,q)={\frac {pq+qp}{2}}
$$

$$
\operatorname {Even} (p,q)=at-{\vec {u}}\cdot {\vec {v}}+a{\vec {v}}+t{\vec {u}}
$$

$$
\operatorname {Even} (p,q)=(at-bx-cy-dz)+(ax+tb)i+(ay+tc)j+(az+td)k
$$

**四元數叉積：_p_ × _q_**

四元數叉積也稱為奇積。它和向量叉積等價，並且只返回一個向量值：

$$
p\times q={\frac {pq-qp}{2}}
$$

$$
p\times q={\vec {u}}\times {\vec {v}}
$$

$$
p\times q=(cz-dy)i+(dx-bz)j+(by-xc)k
$$

**四元數的逆：p−1**

四元數的逆通過 p−1p = 1 被定義。 它定義在上面的定義一節，位於屬性之下（注意變數記法的差異）。其建構方式相同於複倒數 (complex inverse) 之構造：

$$
p^{-1}={\frac {p^{*}}{p\cdot p}}
$$

一個四元數的自身點積是個純量。四元數除以一個純量等效於乘上此純量的倒數，而使四元數的每個元素皆除以此一除數。

**四元數除法：p−1q**
:

四元數的不可換性導致了 p−1q 和 qp−1 的不同。 這意味著除非 p 是一個純量，否則不能使用 q/p 這一符號。

**四元數純量部：_Scalar(p)_**
:

四元數的純量部分可以用前面所述的點積來分離出來：

$$
1\cdot p={\frac {p+p^{*}}{2}}=t
$$

**四元數向量部：_Vector(p)_**
:

四元數的向量部分可以用外積提取出來，就象用點積分離純量那樣：

$$
\operatorname {Outer} (1,p)={\frac {p-p^{*}}{2}}={\vec {u}}=bi+cj+dk
$$

**四元數模：|p|**
:

四元數的絕對值是四元數到原點的距離。

$$
|p|={\sqrt {p\cdot p}}={\sqrt {p^{*}p}}={\sqrt {a^{2}+b^{2}+c^{2}+d^{2}}}
$$

**四元數符號數：_sgn(p)_**
:

一複數之符號數乃得出單位圓上，一個方向與原複數相同之複數。四元數的符號數亦產生單位四元數：

$$
\operatorname {sgn}(p)={\frac {p}{|p|}}
$$

**四元數輻角：_arg(p)_**
:

輻角函數可找出一個四元數向量偏離單位純量 (即：1) 之角度。此函數輸出一個純量角度。

$$
\arg(p)=\arccos \left({\frac {\operatorname {Scalar} (p)}{|p|}}\right)
$$

### 冪和對數

因為四元數有除法，所以冪和對數可以定義。

* 自然冪： $\exp(p)=\exp(a)(\cos(|{\vec {u}}|)+\operatorname {sgn}({\vec {u}})\sin(|{\vec {u}}|))$
* 自然對數： $\ln(p)=\ln(|p|)+\operatorname {sgn}({\vec {u}})\arg(p)$
* 冪： $p^{q}=e^{q\ln(p)}\,$

### 三角函數

* 正弦： $\sin(p)=\sin(a)\cosh(|{\vec {u}}|)+\cos(a)\operatorname {sgn}({\vec {u}})\sinh(|{\vec {u}}|)$
* 餘弦： $\cos(p)=\cos(a)\cosh(|{\vec {u}}|)-\sin(a)\operatorname {sgn}({\vec {u}})\sinh(|{\vec {u}}|)$
* 正切： $\tan(p)={\frac {\sin(p)}{\cos(p)}}$

### 雙曲函數

* 雙曲正弦: $\sinh(p)=\sinh(a)\cos(|{\vec {u}}|)+\cosh(a)\operatorname {sgn}(|{\vec {u}}|)\sin(|{\vec {u}}|)$
* 雙曲餘弦: $\cosh(p)=\cosh(a)\cos(|{\vec {u}}|)+\sinh(a)\operatorname {sgn}(|{\vec {u}}|)\sin(|{\vec {u}}|)$
* 雙曲正切: $\tanh(p)={\frac {\sinh(p)}{\cosh(p)}}$

### 反雙曲函數

* 反雙曲正弦: $\operatorname {arcsinh} (p)=\ln(p+{\sqrt {p^{2}+1}})$
* 反雙曲餘弦: $\operatorname {arccosh} (p)=\ln(p+{\sqrt {p^{2}-1}})$
* 反雙曲正切: $\operatorname {arctanh} (p)={\frac {\ln(1+q)-\ln(1-q)}{2}}$

### 反三角函數

將這些被放到最後，是因為需要先定義四元數中的反雙曲三角函數。

* 反正弦函數: $\arcsin(p)=-\operatorname {sgn}({\vec {u}})\operatorname {arcsinh} (p\operatorname {sgn}({\vec {u}}))$
* 反餘弦函數: $\arccos(p)=-\operatorname {sgn}({\vec {u}})\operatorname {arccosh} (p)$
* 反正切函數: $\arctan(p)=-\operatorname {sgn}({\vec {u}})\operatorname {arctanh} (p\operatorname {sgn}({\vec {u}}))$

### 廣義化

若 _F_ 是一個域，且 _a_、_b_ 為 _F_ 的元素，那麼就可在 _F_ 上定義一個四維單一結合代數，而它的產生是由符合 _i_2 = _a_、_j_2 = _b_ 和 _ij = -ji_ 的 _i_、_j_ 而起。
這些代數不是與 _F_ 的二階矩陣代數同型，就是 _F_ 的除法代數。它們稱為「四元數代數」。

## 歷史

**四元數**是由哈密頓在 1843 年愛爾蘭發現的。當時他正研究擴展複數到更高的維次（複數可視為平面上的點）。他不能做到三維空間的例子（即構建不出三元數），但四維則造出四元數。根據哈密頓記述，他於 10 月 16 日跟他的妻子在都柏林的皇家運河（Royal Canal）上散步時突然想到

 $i^{2}=j^{2}=k^{2}=ijk=-1\,$
的方程式解。之後哈密頓立刻將此方程式刻在附近布魯穆橋（Brougham Bridge，現稱為金雀花橋 Broom Bridge）。這條方程式放棄了交換律，是當時一個極端的想法（那時還未發展出向量和矩陣）。

不只如此，哈密頓還創造了向量的內外積。他亦把四元數描繪成一個有序的四重實數：一個純量（_a_）和向量（_bi + cj + dk_）的組合。若兩個純量部為零的四元數相乘，所得的純量部便是原來的兩個向量部的純量積的負值，而向量部則為向量積的值，但它們的重要性仍有待發掘。

哈密頓之後繼續推廣四元數，並出了幾本書。最後一本《四元數的原理》（_Elements of Quaternions_）於他死後不久出版，長達八百多頁。

### 用途爭辯

即使到目前為止四元數在某些領域的用途仍在爭辯之中。一些哈密頓的支持者非常反對奧利弗・黑維塞的向量代數和約西亞・吉布斯的向量分析的發展，以維持四元數的超然地位。對於三維空間這可以討論，但對於更高維四元數就失效了（但可用延伸如八元數和克里福代數）。而事實上，在 20 世紀中葉的科學和工程界中，向量幾乎已完全取代四元數的位置。

詹姆斯・克拉克・馬克士威曾經在他的《電磁場動力理論》（_A Dynamical Theory of Electromagnetic Field_）直接以 20 條有 20 個變數的微分方程式組來解釋電力、磁力和電磁場之間的關係。某些早期的馬克士威方程組使用了四元數來表述，但與後來黑維塞使用四條以向量為基礎的馬克士威方程組表述相比較，使用四元數的表述並沒有流行起來。

事實上，四元數是常被數學家稱為幾何代數的 clifford 代數的一個子代數，而後者已經得到很好的研究和應用，尤其是在理論物理中。例如可以用幾何代數將狹義相對論和古典電動力學表述為非常優美的形式，量子力學中討論自旋常用的包立矩陣實際上也是幾何代數的一個子代數的矩陣表示，類似的例子還有對古典力學中剛體的轉動的不可交換性的表述。

## 應用

四元數大量用於計算機圖形學中，表示三維物件的旋轉及方位。四元數亦見於控制論、信號處理、姿態控制、物理、軌道力學和生物資訊學， 都是用來表示旋轉和方位。

相對於另兩種旋轉表示法（矩陣和歐拉角），四元數具有某些方面的優勢，如速度更快、提供平滑插值、有效避免萬向鎖問題、存儲空間較小等等
。

## 相關條目

* 複數
* 八元數
* 十六元數
* 超複數
* 包立矩陣
* 四平方和定理
* 四元數與空間旋轉

## 外部連結

* （英文）Doing Physics with Quaternions （頁面存檔備份，存於網際網路檔案館）
* （英文）Quaternion Calculator （頁面存檔備份，存於網際網路檔案館） (Java)
* （英文）The Physical Heritage of Sir W. R. Hamilton (PDF)
* （英文）Tait, Peter Guthrie, 「Quaternion. [2016-01-09]. （原始內容存檔於 2014-08-08）. 」. M.A. Sec. R.S.E. Encyclopaedia Britannica, Ninth Edition, 1886, Vol. XX, pp. 160-164. (PostScript)
* Kuipers, Jack (2002). _Quaternions and Rotation Sequences: A Primer With Applications to Orbits, Aerospace, and Virtual Reality (Reprint edition)_. Princeton University Press. ISBN 978-0-691-10298-6
* （簡體中文）關於四元數的幾何意義和物理應用 （頁面存檔備份，存於網際網路檔案館）

## 參考文獻