1 对偶数的定义
当我们在讨论复数时,我们引入了虚数单位 i i i,并定义 i 2 = − 1 i^2 = -1 i2=−1,将实数与虚数组合成为复数。对偶数和复数类似,通常我们将对偶数写作 d = a + b ε d = a+b\varepsilon d=a+bε,其中 d ∈ d , a , b ∈ R d\in \mathbb{d},a,b \in \mathbb{R} d∈d,a,b∈R。对偶四元数由两个部分组成:实数部分 a a a,对偶数部分 b ε b\varepsilon bε,也可以写成 d = < a , b > d = <a,b> d=<a,b>,对偶数部分的 ε \varepsilon ε 是一个与实数域 R R R 垂直的维度单位长度,它满足: ε 2 = 0 \varepsilon ^ 2 = 0 ε2=0。
2 对偶数基本运算
现规定存在对偶数 d , d 1 , d 2 d,d_1,d_2 d,d1,d2,单元运算使用对偶数 d d d,多元运算使用对偶数 d 1 , d 2 d_1,d_2 d1,d2。
其中 d = a + b ε , d 1 = a 1 + b 1 ε , d 2 = a 2 + b 2 ε d = a + b\varepsilon,d_1 = a_1 + b_1\varepsilon, d_2 = a_2 + b_2\varepsilon d=a+bε,d1=a1+b1ε,d2=a2+b2ε。
-
加减法:
d 1 ± d 2 = ( a 1 + b 1 ε ) ± ( a 2 + b 2 ε ) = ( a 1 ± a 2 ) + ( b 1 ± b 2 ) ε (2.1) \begin{equation} \begin{split} d_1 \pm d_2 &= (a_1 + b_1 \varepsilon) \pm (a_2 + b_2 \varepsilon) \\ & = (a_1 \pm a_2) + (b_1 \pm b_2) \varepsilon \end{split} \end{equation} \tag{2.1} d1±d2=(a1+b1ε)±(a2+b2ε)=(a1±a2)+(b1±b2)ε(2.1) -
乘法:
d 1 d 2 = ( a 1 + b 1 ε ) ( a 2 + b 2 ε ) = a 1 a 2 + ( a 1 b 2 + a 2 b 1 ) ε (2.2) \begin{equation} \begin{split} d_1d_2 &= (a_1 + b_1\varepsilon)(a_2 + b_2\varepsilon) \\ &= a_1a_2 + (a_1b_2 + a_2b_1)\varepsilon \end{split} \end{equation} \tag{2.2} d1d2=(a1+b1ε)(a2+b2ε)=a1a2+(a1b2+a2b1)ε(2.2) -
共轭:
d = ( a + b ε ) d ∗ = ( a − b ε ) (2.3) \begin{equation} \begin{split} d &= (a + b \varepsilon) \\ d^* &= (a - b \varepsilon) \end{split} \end{equation} \tag{2.3} dd∗=(a+bε)=(a−bε)(2.3) -
模长或范数:
d = ( a + b ε ) ∣ ∣ d ∣ ∣ = ∣ a ∣ (2.4) \begin{equation} \begin{split} d &= (a + b\varepsilon) \\ ||d|| &= |a| \end{split} \end{equation} \tag{2.4} d∣∣d∣∣=(a+bε)=∣a∣(2.4)
模长为 1 的对偶数即为单位对偶数,即 d = 1 + b ε d = 1+b\varepsilon d=1+bε。 -
逆:
d = ( a + b ε ) d − 1 = d ∗ ∣ ∣ d ∣ ∣ 2 = ( a − b ε ) a 2 (2.5) \begin{equation} \begin{split} d &= (a+b\varepsilon) \\ d^{-1} &= \frac{d^*}{||d||^2} = \frac{(a - b\varepsilon)}{a^2} \end{split} \end{equation} \tag{2.5} dd−1=(a+bε)=∣∣d∣∣2d∗=a2(a−bε)(2.5) -
除法:
严格意义来讲,对偶数并没有除法,对于 d 1 / d 2 d_1/d_2 d1/d2 我们只是将它转换成 d 1 ∗ ( d 2 − 1 ) d_1 * (d_2^{-1}) d1∗(d2−1) 进行计算:
d 1 / d 2 = ( a 1 + b 1 ε ) ( a 2 − b 2 ε ) a 2 2 , a 2 ≠ 0 (2.6) d_1/d_2 = \frac{(a_1+b_1\varepsilon)(a_2 - b_2\varepsilon)}{a_2^2},a_2 \neq 0 \tag{2.6} d1/d2=a22(a1+b1ε)(a2−b2ε),a2=0(2.6)
3 对偶数的特殊性质
对偶数的性质和四元数非常类似,但是对偶数还是有一些优异的性质,如果我们将它作为函数的参数进行泰勒展开,就发现了对偶数的强大之处。
对于函数
f
(
a
+
b
ε
)
f(a + b\varepsilon)
f(a+bε) ,我们将它在
x
=
a
x = a
x=a 处进行泰勒展开:
f
(
a
+
b
ε
)
=
f
(
a
)
+
f
′
(
a
)
(
b
ε
)
+
f
′
′
(
a
)
2
!
(
b
ε
)
2
+
f
′
′
′
(
a
)
3
!
(
b
ε
)
3
+
.
.
.
+
R
n
(
a
)
(2.7)
f(a + b\varepsilon) = f(a) + f'(a)(b\varepsilon) + \frac{f''(a)}{2!}(b\varepsilon)^2 + \frac{f'''(a)}{3!}(b\varepsilon)^3 + ...+R_n(a) \tag{2.7}
f(a+bε)=f(a)+f′(a)(bε)+2!f′′(a)(bε)2+3!f′′′(a)(bε)3+...+Rn(a)(2.7)
由
ε
2
=
0
\varepsilon^2 = 0
ε2=0 可知,二阶以上的泰勒多项式都为 0。
而泰勒余项 R n ( a ) = f n + 1 ( η ) ( n + 1 ) ! ( ( b ε ) n + 1 ) R_n(a) = \frac{f^{n+1}(\eta)}{(n+1)!}((b\varepsilon)^{n+1}) Rn(a)=(n+1)!fn+1(η)((bε)n+1),其中 η \eta η 为介于 a + b ε a + b\varepsilon a+bε 和 a a a 的数。
因泰勒余项也可以拆成 ε 2 \varepsilon^2 ε2 与某个多项式相乘,所以泰勒余项 R n ( a ) = 0 R_n(a) = 0 Rn(a)=0 。
由此可以得出一个非常重要的公式:
f
(
a
+
b
ε
)
=
f
(
a
)
+
f
′
(
a
)
(
b
ε
)
(2.8)
f(a + b\varepsilon) = f(a) + f'(a)(b\varepsilon) \tag{2.8}
f(a+bε)=f(a)+f′(a)(bε)(2.8)
由上述公式可以推导出一些常见函数的对偶展开:
-
正弦函数:
s i n ( x + y ε ) = s i n ( x ) + c o s ( x ) y ε sin(x+y\varepsilon) = sin(x) + cos(x)y\varepsilon sin(x+yε)=sin(x)+cos(x)yε -
对数函数
l n ( x + y ε ) = l n ( x ) + y x ε ln(x+y\varepsilon) = ln(x) + \frac{y}{x}\varepsilon ln(x+yε)=ln(x)+xyε -
指数函数
e x + y ε = e x + y ∗ e x ε e^{x+y\varepsilon} = e^x + y * e^x\varepsilon ex+yε=ex+y∗exε
我们可以令
a
=
x
,
b
=
1
a = x, b = 1
a=x,b=1 带入 公式2.8
可得:
f
(
x
+
ε
)
=
f
(
x
)
+
f
′
(
x
)
ε
f(x + \varepsilon) = f(x) + f'(x)\varepsilon
f(x+ε)=f(x)+f′(x)ε
也就是说,对于任意函数
f
(
x
)
f(x)
f(x) ,求其导数,可以直接将
x
=
x
+
ε
x = x+\varepsilon
x=x+ε 带入,展开,得到一个对偶数函数,其中该对偶数函数的对偶部分即是其导数。
4 对偶四元数的定义
对偶四元数可以表示如下:
u
=
q
r
+
q
d
ε
u = q_r + q_d\varepsilon
u=qr+qdε
其中,
q
r
q_r
qr 和
q
d
q_d
qd 都是四元数,
ε
2
=
0
,
ε
≠
0
\varepsilon^2 = 0, \varepsilon \neq 0
ε2=0,ε=0,下标
r
,
d
r,d
r,d 分别表示实部(real)和对偶部(dual)。
对偶四元数还可以写作: u = [ q r , q d ] u = [q_r,q_d] u=[qr,qd]。
5 对偶四元数的基本运算
现规定存在对偶四元数 u , u 1 , u 2 u,u_1,u_2 u,u1,u2,单元运算使用对偶数 u u u,多元运算使用对偶数 u 1 , u 2 u_1,u_2 u1,u2。
其中 u = q r + q d ε , u 1 = q r 1 + q d 1 ε , u 2 = q r 2 + q d 2 ε u = q_r + q_d\varepsilon,u_1 = q_{r1} + q_{d1}\varepsilon, u_2 = q_{r2} + q_{d2}\varepsilon u=qr+qdε,u1=qr1+qd1ε,u2=qr2+qd2ε。
-
共轭:
u ∗ = [ q r ∗ , q d ∗ ] (2.9) u^* = [q_r^*, q_d^*] \tag{2.9} u∗=[qr∗,qd∗](2.9) -
对偶共轭:
u ˉ = [ q r , − q d ] (2.10) \bar{u} = [q_r, -q_d] \tag{2.10} uˉ=[qr,−qd](2.10) -
复共轭:
u ∗ ˉ = u ˉ ∗ = [ q r ∗ , − q d ∗ ] (2.11) \bar{u^*} = {\bar{u}}^* = [q_r^*, - q_d^*] \tag{2.11} u∗ˉ=uˉ∗=[qr∗,−qd∗](2.11) -
模长或范数:
∣ ∣ u ∣ ∣ = [ ∣ ∣ q r ∣ ∣ , q r ⋅ q d ∣ ∣ q r ∣ ∣ ] = [ ∣ ∣ q r ∣ ∣ , q d q r ∗ + q r q d ∗ 2 ∣ ∣ q r ∣ ∣ ] , ∣ ∣ q r ∣ ∣ ≠ 0 (2.12) \begin{equation} \begin{split} ||u|| &= [||q_r||, \frac{q_r \cdot q_d}{||q_r||}] \\ &=[||q_r||,\frac{q_dq_r^* + q_rq_d^*}{2||q_r||}],||q_r|| \neq 0 \end{split} \end{equation} \tag{2.12} ∣∣u∣∣=[∣∣qr∣∣,∣∣qr∣∣qr⋅qd]=[∣∣qr∣∣,2∣∣qr∣∣qdqr∗+qrqd∗],∣∣qr∣∣=0(2.12)
满足 ∣ ∣ u ∣ ∣ = 1 ||u|| = 1 ∣∣u∣∣=1 的对偶四元数,称为单位对偶四元数,即:
∣ ∣ u ∣ ∣ = [ ∣ ∣ q r ∣ ∣ , q r ⋅ q d ∣ ∣ q r ∣ ∣ ] = 1 → { ∣ ∣ q r ∣ ∣ = 1 q r ⋅ q d = 0 ||u|| =[||q_r||, \frac{q_r \cdot q_d}{||q_r||}] = 1 \rightarrow \left\{\begin{matrix} ||q_r|| = 1 \\ q_r \cdot q_d = 0 \end{matrix}\right. ∣∣u∣∣=[∣∣qr∣∣,∣∣qr∣∣qr⋅qd]=1→{∣∣qr∣∣=1qr⋅qd=0 -
逆:
u − 1 = u ∗ ∣ ∣ u ∣ ∣ 2 (2.13) u^{-1} = \frac{u^*}{||u||^2} \tag{2.13} u−1=∣∣u∣∣2u∗(2.13) -
数乘:
k u = [ k q r , k q d ] (2.14) ku = [kq_r, kq_d] \tag{2.14} ku=[kqr,kqd](2.14) -
加法:
u 1 + u 2 = [ q r 1 + q r 2 , q d 1 + q d 2 ] (2.15) u_1 + u_2 = [q_{r1}+q_{r2}, q_{d1}+q_{d2}] \tag{2.15} u1+u2=[qr1+qr2,qd1+qd2](2.15) -
乘法:
u 1 u 2 = [ q r 1 q r 2 , q r 1 q d 2 + q d 1 q r 2 ] (2.16) u_1u_2= [q_{r1}q_{r2},q_{r1}q_{d2} + q_{d1}q_{r2}] \tag{2.16} u1u2=[qr1qr2,qr1qd2+qd1qr2](2.16) -
共轭性质:
( u 1 u 2 ) ∗ = u 2 ∗ u 1 ∗ , u 1 u 2 ˉ = u 1 ˉ u 2 ˉ , ( u 1 u 2 ) ∗ ˉ = u 2 ∗ ˉ u 1 ∗ ˉ (2.17) (u_1u_2)^* = u_2^*u_1^*,\bar{u_1u_2} = \bar{u_1}\bar{u_2}, \bar{(u_1u_2)^*} = \bar{u_2^*}\bar{u_1^*} \tag{2.17} (u1u2)∗=u2∗u1∗,u1u2ˉ=u1ˉu2ˉ,(u1u2)∗ˉ=u2∗ˉu1∗ˉ(2.17)
6 纯旋转的对偶四元数
存在一个单位四元数 q q q,将它扩展成对偶四元数 u q = [ q , 0 ] u_q = [q,0] uq=[q,0],则 u q u_q uq 表示一个纯旋转的对偶四元数,它是个单位对偶四元数。
6.1 旋转证明
若某点坐标 [ x , y , z ] [x,y,z] [x,y,z] ,将它扩展成四元数 v 0 = [ 0 , x , y , z ] v_0 = [0,x,y,z] v0=[0,x,y,z],经过单位四元数 q q q 旋转后得到 v 0 ′ v_0' v0′,满足 v 0 ′ = q v 0 q ∗ v_0' = qv_0q^* v0′=qv0q∗。
如果该四元数 v 0 v_0 v0 经过对偶四元数 u q = [ q , 0 ] u_q = [q,0] uq=[q,0] 旋转后,也能得到一样的值,则可以得证。
我们先把四元数 v 0 v_0 v0 扩展成对偶四元数 v = [ 1 , v 0 ] v = [1,v_0] v=[1,v0]。经过旋转后的新对偶四元数为 v ′ v' v′,则应当满足 v ′ = u q v u q ∗ ˉ v' = u_qv\bar{u_q^*} v′=uqvuq∗ˉ。
其中, u q u_q uq 的双共轭 u q ∗ ˉ = [ u q r ∗ , − u q d ∗ ] = [ q ∗ , 0 ] \bar{u_q^*} = [u_{qr}^*, -u_{qd}^*] = [q^*,0] uq∗ˉ=[uqr∗,−uqd∗]=[q∗,0],带入上述公式可得:
v
′
=
[
q
,
0
]
[
1
,
v
0
]
[
q
∗
,
0
]
v' = [q,0][1,v_0][q^*,0]
v′=[q,0][1,v0][q∗,0]
展开可得:
v
′
=
[
q
,
0
]
[
q
∗
,
v
0
q
∗
]
=
[
1
,
q
v
0
q
∗
]
=
[
1
,
v
0
′
]
v' = [q,0][q^*,v_0q^*] = [1,qv_0q^*] = [1,v_0']
v′=[q,0][q∗,v0q∗]=[1,qv0q∗]=[1,v0′]
即得证。
7 纯位移的对偶四元数
对于某个位移 ( t 1 , t 2 , t 3 ) (t_1,t_2,t_3) (t1,t2,t3) ,将它扩展成四元数 t = [ 0 , t 1 , t 2 , t 3 ] t = [0,t_1,t_2,t_3] t=[0,t1,t2,t3],它所对应的对偶四元数 u t = [ 1 , 0.5 t ] u_t = [1,0.5t] ut=[1,0.5t],即 u t u_t ut 表示位移为 ( t 1 , t 2 , t 3 ) (t_1,t_2,t_3) (t1,t2,t3) 的对偶四元数。
7.1 纯位移对偶四元数的特殊性质
对偶四元数
u
t
=
[
1
,
0.5
t
]
u_t = [1,0.5t]
ut=[1,0.5t],则其对应的双共轭对偶四元数为
u
∗
ˉ
=
[
1
,
0.5
t
]
∗
ˉ
\bar{u^*} = \bar{[1,0.5t]^*}
u∗ˉ=[1,0.5t]∗ˉ,展开可得:
u
t
∗
ˉ
=
[
1
,
−
0.5
t
]
∗
=
[
1
,
−
0.5
t
∗
]
\bar{u_t^*} = [1,-0.5t]^* = [1,-0.5t^*]
ut∗ˉ=[1,−0.5t]∗=[1,−0.5t∗]
又因为:
t
∗
=
[
0
,
−
t
1
,
−
t
2
,
−
t
3
]
=
−
t
t^* = [0,-t_1,-t_2,-t_3] = -t
t∗=[0,−t1,−t2,−t3]=−t
所以:
u
t
∗
ˉ
=
[
1
,
−
0.5
t
∗
]
=
[
1
,
0.5
t
]
=
u
t
\bar{u_t^*} = [1,-0.5t^*] = [1,0.5t] = u_t
ut∗ˉ=[1,−0.5t∗]=[1,0.5t]=ut
由此可见,对偶四元数
u
t
u_t
ut 的双共轭
u
t
∗
ˉ
\bar{u_t^*}
ut∗ˉ 等于其本身,且
u
t
u_t
ut 为单位对偶四元数。
7.2 位移证明
设某点坐标
[
x
,
y
,
z
]
[x,y,z]
[x,y,z] ,把它扩展成四元数
v
0
=
[
0
,
x
,
y
,
z
]
v_0 = [0,x,y,z]
v0=[0,x,y,z],然后再把四元数
v
0
v_0
v0 扩展成对偶四元数
v
=
[
1
,
v
0
]
v = [1,v_0]
v=[1,v0] 来和
u
t
u_t
ut 进行计算。
u
t
v
u
t
∗
ˉ
=
u
t
v
u
t
=
[
1
,
0.5
t
]
[
1
,
v
0
]
[
1
,
0.5
t
]
=
[
1
,
0.5
t
]
[
1
,
v
0
+
0.5
t
]
=
[
1
,
v
0
+
t
]
\begin{equation} \begin{split} u_tv\bar{u_t^*} &= u_tvu_t \\ &= [1,0.5t][1,v_0][1,0.5t] \\ &=[1,0.5t][1,v_0 + 0.5t] \\ &= [1,v_0 + t] \end{split} \end{equation}
utvut∗ˉ=utvut=[1,0.5t][1,v0][1,0.5t]=[1,0.5t][1,v0+0.5t]=[1,v0+t]
则点
[
x
,
y
,
z
]
[x,y,z]
[x,y,z] 经过变换后的位置为
v
0
+
t
=
[
x
+
t
1
,
y
+
t
2
,
z
+
t
3
]
v_0 + t = [x+t_1,y+t_2,z+t_3]
v0+t=[x+t1,y+t2,z+t3] 得证。
8 旋转位移对应的对偶四元数
先进行旋转变换,再进行位移变换可写作如下:
u
t
(
u
q
v
u
q
∗
ˉ
)
u
t
∗
ˉ
=
(
u
t
u
q
)
v
(
u
q
∗
ˉ
u
t
∗
ˉ
)
=
(
u
t
u
q
)
v
(
u
q
∗
u
t
∗
ˉ
)
=
(
u
t
u
q
)
v
(
u
q
u
t
ˉ
)
∗
u_t(u_qv\bar{u_q^*})\bar{u_t^*} = (u_tu_q)v(\bar{u_q^*}\bar{u_t^*}) = (u_tu_q)v(\bar{u_q^*u_t^*}) = (u_tu_q)v(\bar{u_qu_t})^*
ut(uqvuq∗ˉ)ut∗ˉ=(utuq)v(uq∗ˉut∗ˉ)=(utuq)v(uq∗ut∗ˉ)=(utuq)v(uqutˉ)∗
令
u
=
u
t
u
q
u = u_tu_q
u=utuq ,则
u
v
u
ˉ
∗
uv\bar{u}^*
uvuˉ∗ 表示对定点
[
x
,
y
,
z
]
[x,y,z]
[x,y,z] 的位移 + 旋转变换。
u
=
u
t
u
q
=
[
1
,
0.5
t
]
[
q
,
0
]
=
[
q
,
0.5
t
q
]
u= u_tu_q = [1,0.5t][q,0] = [q,0.5tq]
u=utuq=[1,0.5t][q,0]=[q,0.5tq]
注意:该对偶四元数依旧为单位对偶四元数。
8.1 已知单位对偶四元数,推出对应的旋转和位移
已知某单位对偶四元数为 u = [ q r , q d ] u = [q_r,q_d] u=[qr,qd],则:
其对应的旋转四元数为: q r q_r qr
其对应的位移四元数为: 2 q d q r ∗ 2q_dq_r^* 2qdqr∗(此处存疑,一说 2 q r ∗ q d 2q_r^*q_d 2qr∗qd,尚未验证)