Is it true that for every dual quaternion $Q$ I can find it's inverse such that $QQ^{-1} = 1?$ Using the usual definition $Q^{-1}=\frac{Q^{*}}{||Q||^2}$ doesn't work for me, since the dual part doesn't generally cancel out, and also $QQ^{-1}Q {\neq} {Q} $
At least, that's what my implementation in code says.
2 Answers
No, the dual quaternions contain zero divisors, one of which is a nonzero element $\epsilon$ with square zero. Such elements cannot have inverses.
It turns out that the units are exactly the $a+\epsilon b$ where $a$ is nonzero. To see this, first notice that $1+\epsilon b$ has the obvious inverse $1-\epsilon b$. Suppose now $a\neq0$. Then $1+\epsilon ba^{-1}$ is a unit, and so is its product with $a$, which is $a+\epsilon b$ . Working through this, it's easy to see why $a^{-1}(1-\epsilon ba^{-1})$ is the inverse of $a+\epsilon b$ .
Trying to establish an inverse with the formula you gave would be circular since you need to establish the inverse of $\|Q\|^2$ before you can divide by it, and that is, generally, just some other dual quaternion.
If the inverse of Q exists, then $QQ^{-1}Q=Q$. The product of the first two things is $1$, and the product of $1$ with Q is Q. If you believe in associativity and multiplicative identity in the dual quaternions, and you know the definition of inverse, it has to hold.
There are useful applications of dual quaternions to geometry and mechanics that use assignments and interpretations that constrain the forms and tame the unruliness.
Nomenclature:
- dual quantity d = a + ε b, ε ≠ 0, ε² = 0.
The monstrously confusing industry standard is to call a and b the 'real' and 'dual' parts, but I'll call them the 'primary' and 'secondary' parts. - dual sum d1 + d2 = (a1 + a2) + ε (b1 + b2)
- dual product d1 d2 = (a1 a2) + ε (a1 b2 + b1 a2)
- dual conjugate d* = (a + ε b)* = (a - ε b)
- dual norm = |d| = √(d d*) = √(a2 + ε (a b - b a))
If (a b) is commutative then |d| = √a2 - dual inverse 1/d = (1/a + ε ((1/a) b (1/a)) if a has an inverse
- quaternion U = {u, u}, u a one-dimension form, u a three-vector.
- quaternion conjugate U* = {u, -u}
- quaternion norm |U| = √(U U*)
- unit quaternion |U| = 1
- unit vector quaternion {0, u}, |u|=1.
- dual quaternion Q = U + ε V
- dual quaternion inverse Q-1 = (U0 + ε V0)
(U + ε V) (U0 + ε V0) = 1
1.) U U0 = 1, U0 = U*
2.) V U0 + U V0 = 0 = V U* + U V0,
V0 = - U* V U*
Q-1 = (U* - ε U* V U*)
An example is the system described by Michael McCarthy here and loosely interpreted below.
In the usual way, a unit vector quaternion U expresses a direction, R its spherical transform about the origin, a rotation expressed as a quaternion product:
U2 = R12 U1 R12*
R12 = {cos(θ/2), sin(θ/2) n}, where θ = the rotation angle and n = the axis vector direction.
The norm of R = 1 and R-1 = R*
Exploiting the constrained forms and the condition that the rotation axis n is normal to both u1 and u2, the rotation quaternion R12 can be computed directly, given U1 and U2 as
R12 = √(U2 U1*)
A dual quaternion line has both orientation and position in space. It's defined as L = U + ε V, where U as above is a dimensionless unit vector quaternion with u expressing the line's orientation and where V is a vector quaternion with units of length, the vector v expressing the moment of the line about the origin.
By the nature of the geometrical definition, u.v = 0., |L| = 1 and L-1 = L*.
As an example of the form, a line in direction u passing through point p, the dual quaternion expression is L = {0, u} + ε {0, p × u}
Any rigid spatial transform can be resolved to a screw transform - a combined rotation about and translation along an axis. Dual quaternion lines can undergo rigid transformations, combining rotation and translation, by a screw quaternion of the form Q = {cos(θ/2), sin(θ/2) n), where θ is a dual angle, the primary part being the angle of rotation, the secondary part being the translation distance measured along the axis, and n a dual vector, the primary part being the direction of the rotation axis and the secondary part the moment of the axis line about the origin.
L2 = Q12 L1 Q12*
Again, because of the constrained forms and recognizing that the screw axis {0, n} intersects and is normal to both L1 and L2, this equation can be solved directly for Q12
Q12 = √(L2 L1*)
In computation, it seems to be an advantage to perform these functions on their matrix forms, expressing both the geometric objects and their transformations as octonions.
--
Fred Klingener