Here n^ means a unit axis (length 1). The little hat ^ is just a reminder
"this arrow has length one." θ is the turn angle, and 2θ is the half-angle
that lives inside q because q is used twice in the sandwich.
Can you read a quaternion and spot what rotation it encodes?
Recall Solution L1.1
WHAT we do: match q=(w,v)=(cos2θ,sin2θn^).
The scalar part is w=cos2θ=23, so 2θ=30∘ and
θ=60∘.
The vector part is (0,0,21)=sin2θn^. Since sin30∘=21,
the axis is n^=(0,0,1) — the z-axis.
Answer: a 60∘ rotation about +z.
Recall Solution L1.2
A rotation quaternion must have length 1. Compute
∥q∥=12+12+02+02=2=1.
So no, it is not valid. Normalize by dividing by the length:
qunit=21(1,1,0,0)=(22,22,0,0).
Now w=cos2θ=22⇒θ=90∘ about the x-axis.
Recall Solution L1.3
For a unit quaternion, inverse = conjugate = flip the sign of the vector part only:
q−1=q∗=(22,0,−22,0).
Geometric read: q rotates +90∘ about +y; q−1 rotates −90∘ about +y — the undo.
Use Rodrigues with θ=90∘ (cos=0,sin=1), n^=(0,0,1), v=(1,0,0).
n^⋅v=0 (so the last term vanishes),
n^×v=(0,0,1)×(1,0,0)=(0,1,0).
v′=vcos90∘+(n^×v)sin90∘=0+(0,1,0)=(0,1,0).What it looks like: the +x arrow swings a quarter-turn counter-clockwise onto +y (see figure below).
Recall Solution L2.2
Here v points along the axis n^=(0,0,1).
n^×v=0, n^⋅v=5.
v′=(0,0,5)cos90∘+0+n^(5)(1−cos90∘)=(0,0,0)+(0,0,5)=(0,0,5).Unchanged. A spin about z cannot move something already pointing along z.
Term by term:
vcosθ=(−21,0,0),(n^×v)sinθ=31(0,1,−1)⋅23=(0,21,−21),n^(n^⋅v)(1−cosθ)=31(1,1,1)⋅31⋅23=(21,21,21).
Add: v′=(−21+0+21,0+21+21,0−21+21)=(0,1,0).What it looks like: a 120∘ turn about the body-diagonal cyclically maps
x→y→z→x; indeed +x→+y. ✓
The sandwich is (−q)v(−q)−1. Because (−q)−1=−q−1 (flipping every entry flips
the inverse too),
(−q)v(−q)−1=(−1)(−1)qvq−1=qvq−1.
The two minus signs cancel. Numerically both give (0,1,0) from L2.1.
Meaning:q and −q are the same physical rotation — quaternions double-cover rotations.
Recall Solution L3.2
qx=(22,22,0,0), qz=(22,0,0,22).
(a) x first. Rotate (0,0,1) by 90∘ about x: n^=(1,0,0),
n^×v=(0,−1,0), n^⋅v=0 ⇒
(0,0,1)→(0,−1,0). Then 90∘ about z: n^=(0,0,1),
(0,0,1)×(0,−1,0)=(1,0,0) ⇒ (0,−1,0)→(1,0,0).
Result (a): (1,0,0).
(b) z first. Rotate (0,0,1) by 90∘ about z: it's on-axis ⇒ stays (0,0,1).
Then 90∘ about x: (0,0,1)→(0,−1,0).
Result (b): (0,−1,0).
(1,0,0)=(0,−1,0) ⇒ order matters. The single-quaternion form makes it obvious:
(a) is qzqx, (b) is qxqz, and qzqx=qxqz.
Recall Solution L3.3
Take the conjugate of a product (it reverses order): (qvq−1)∗=(q−1)∗v∗q∗.
For unit q: q−1=q∗, so (q−1)∗=q and q∗=q−1. A pure quaternion satisfies
v∗=−v. Substitute:
(qvq−1)∗=q(−v)q−1=−qvq−1.
A quaternion equal to minus its own conjugate has scalar part w with w=−w⇒w=0.
Hence v′ is pure — a legal 3D vector. ∎
Combine several ideas or build a quaternion from scratch.
Recall Solution L4.1
Axis: perpendicular to both vectors ⇒ their cross product direction.
n^∝(1,0,0)×(0,1,0)=(0,0,1), already unit.
Angle: between (1,0,0) and (0,1,0) the angle is 90∘ (dot product =0).
Half-angle build:q=(cos45∘,sin45∘(0,0,1))=(22,0,0,22).
Check with L2.1: this q indeed sends (1,0,0)→(0,1,0). ✓
Recall Solution L4.2
q1=(22,0,0,22), q2=(22,22,0,0).
Hamilton product q2q1=(w2w1−v2⋅v1,w2v1+w1v2+v2×v1)
with w1=w2=22, v1=(0,0,22), v2=(22,0,0):
So q=(21,21,−21,21). Check norm: 4⋅41=1 ✓.
Axis–angle: cos2θ=21⇒θ=120∘; vector length
sin2θ=23, so
n^=3/2(21,−21,21)=31(1,−1,1).Read: two 90∘ turns fuse into one 120∘ turn about 31(1,−1,1).
Recall Solution L4.3
Apply q then q−1: the combined quaternion (rightmost first) is q−1q. But
q−1q=(1,0,0,0), the identity quaternion. Then
v′=(q−1q)v(q−1q)−1=1⋅v⋅1=v.
Every vector comes home. This is why q−1 is literally the "undo" rotation.
cos2θ=1⇒θ=0: the identity (no rotation). The vector part is
(0,0,0), so sin2θ=0 and the axis is undefined — you cannot divide by zero.
Interpretation: a zero-angle rotation has no preferred axis; every axis works because
nothing moves. Software must special-case this (e.g. return the identity axis) instead of
dividing (0,0,0)/0.
Recall Solution L5.2
cos90∘=0, sin90∘=1, so q=(0,n^) — a pure quaternion (zero scalar).
This is the borderline where q and −q are hardest to tell apart, and where the scalar
carries no angle info; the axis lives entirely in the vector part.
With n^=(0,0,1), Rodrigues: cos180∘=−1,sin180∘=0, n^⋅v=0:
v′=(1,0,0)(−1)+0+0=(−1,0,0).
A half-turn about z flips +x to −x. ✓ (See figure.)
Recall Solution L5.3
From L2.3, x^=(1,0,0)→(0,1,0). By the same cyclic symmetry, y^=(0,1,0)→(0,0,1).
Lengths: ∣(0,1,0)∣=1, ∣(0,0,1)∣=1 — preserved.
Dot product: (0,1,0)⋅(0,0,1)=0 — still perpendicular.
Why this must happen:qvq−1 preserves dot products (it's an orthogonal transformation),
so angles and lengths are untouched — this is what makes it a genuine rotation and not a stretch.
This is the quaternion route to Rotation matrices & orthogonality.
Recall Solution L5.4
With constant ω along z, the solution of q˙=21qω is a
steady rotation whose angle grows as θ(t)=Ωt about z:
q(t)=(cos2Ωt,0,0,sin2Ωt).
At t=0 this is (1,0,0,0) ✓. The half-angle reappears — the rate is 21Ω inside
q but the body physically turns at Ω. This connects to
> Angular velocity & quaternion kinematics $\dot q=\tfrac12 q\omega$ and
> Spacecraft attitude determination (GNC).