3.5.9 · D5Guidance, Navigation & Control (GNC)
Question bank — Quaternion kinematics — q̇ = ½ Ξ(q) ω
True or false — justify
The half-angle factor in comes from the same place as the in kinetic energy .
False. It has nothing to do with energy. The quaternion stores ; differentiating the half-angle by the chain rule pulls out a . Pure trigonometry, not dynamics.
For a rotation matrix the kinematics has no , so the quaternion version is "wrong" and must be corrected.
False. Both are correct; they parametrise the same rotation differently. stores the full angle , stores . The is exactly the difference between differentiating and .
is always perpendicular to (as 4-vectors).
True. We showed because . Perpendicular velocity means you slide along the unit sphere, never off it, so stays 1.
If then , i.e. the attitude is frozen.
True. for any . No angular velocity means no change of orientation — physically obvious, and the equation respects it.
is a square matrix so it can be inverted to recover from .
False. is (four rows, three columns) — rectangular, not invertible. You recover via , using .
Since and represent the same physical rotation, they must have the same .
False. , so . The two trajectories are mirror images on the sphere; they represent the same attitude at every instant but are genuinely different points/velocities in quaternion space (the double cover).
The equation is linear in at fixed .
True. Written as it is manifestly linear in — a linear ODE with (time-varying) coefficient matrix . That linearity is exactly what the EKF exploits.
The equation is also linear in at fixed .
True. Written as it is linear in . Both statements hold; whichever variable you "freeze", the map to is a matrix multiply.
Spot the error
"With body-frame gyro rates I integrate ."
Wrong order. Body-frame must post-multiply: . Left-multiplication is for inertial-frame . Swapping them silently integrates the wrong attitude — a classic flight-software bug.
"Quaternion product is basically dot product plus cross product, so it commutes."
Non-commutative. The vector part contains , and the cross product is anti-symmetric. Swapping and flips that term's sign, so — just like composing rotations in a different order.
"I'll just integrate with RK4 and never renormalize, because the math proves ."
Only exact in continuous time. RK4 takes finite steps, so tiny errors push slightly off the sphere and they accumulate. You must renormalize each step.
"The angular-velocity quaternion is ."
Wrong scalar part. It is the pure quaternion — scalar part zero, vector part the full (not the unit axis). A pure quaternion is precisely one with zero scalar part.
" is always zero because norm is preserved."
Only at the identity. ; it vanishes when (the identity ) or when , but is generally nonzero. Norm preservation is , a condition on the whole 4-vector, not on alone.
" and are the same size, so they're interchangeable."
Different shapes and roles. is and multiplies ; is and multiplies . They give the same () but are not interchangeable matrices.
"Because depends on , the kinematics is nonlinear and can't be used in a linear filter."
Misreads which variable is frozen. In the filter's prediction step is the state and a (measured) input, so is linear in the state. The state-dependence of does not break that.
Why questions
Why is the velocity a pure quaternion rather than a full unit quaternion?
Because describes an infinitesimal rotation. Its half-angle , so and the difference from the identity is entirely in the vector part — scalar part contributes nothing to first order.
Why must be tangent to the unit sphere ?
A valid attitude requires at all times. Motion that keeps you on the sphere must have zero radial velocity, i.e. — otherwise drifts off and no longer represents a rotation (SO(3) membership is lost).
Why do we use quaternions here instead of Euler angles?
Euler-angle kinematics blows up at certain orientations (gimbal lock — a division by that goes to zero). The quaternion equation is a smooth polynomial, singularity-free everywhere on the sphere.
Why is the relation packaged as a matrix instead of leaving the Hamilton product?
The Hamilton product is linear in , and every linear map is a matrix. Writing it as hands GNC code a clean matrix–vector multiply that slots directly into linear-algebra libraries and Jacobians.
Why does hold — what makes the two middle terms cancel?
Using the block form from the notation box, (these cancel) plus , since any vector crossed with itself is zero. That algebraic identity is exactly what guarantees norm preservation.
Why does the pure- spin oscillate at frequency , not ?
Because tracks the half-angle: . The physical rotation still advances at ; the quaternion just spins at half that rate — the double-cover in action.
Edge cases
What is when is at the identity and ?
reduces to , so . The scalar part stays put and the vector part starts growing along — the rotation "turning on".
What happens to the kinematics if has drifted to, say, from numerical error?
Because , the map scales linearly with , and still holds — so the radial component of drift is never corrected by the equation itself. It preserves whatever (wrong) norm you have — hence you must renormalize.
Does the formula still work for very large angular rates ?
The continuous equation is exact for any — it's just a linear ODE. The trouble is numerical: large rates mean large per-step rotation angles, so fixed-step integrators lose accuracy and you need smaller steps or a closed-form exponential update.
What does look like the instant becomes anti-parallel to the current rotation axis ?
With and , we get : the scalar part grows, meaning the body is un-rotating back toward the identity. The math correctly reverses the motion.
Is there any on the unit sphere where the kinematics is singular or undefined?
None. is a polynomial in the four components — defined and finite everywhere. Unlike Euler angles, quaternion kinematics has no coordinate singularity anywhere on .
If two bodies have opposite spins and from the same , how do their compare?
They are exact negatives: , by linearity in . One slides forward along the sphere, the other backward along the same great-circle tangent.
Recall Quick self-test
The single fact that makes everything self-consistent ::: , so and is preserved. The single fact people get wrong most in code ::: Multiplication order — body rates use (post-multiply), and you must renormalize each integration step.