Multibody Dynamics · Module 2 of 10
Rigid-Body Kinematics: Position and Orientation
Before forces, get the geometry right. A rigid body’s state is where its origin is and how it is turned. Rotation matrices, angle sets, and Euler parameters are the language for that turn.
Readiness check
Tick only what you can do closed-notes before starting.
- Multiply a 2 by 2 matrix by a vector.
- Recall the sine and cosine of 30, 45, and 90 degrees.
- State that a rotation matrix is orthogonal with determinant one.
- Describe angular velocity as a vector.
- Recall that a planar rotation has one angle, a spatial rotation three.
The core idea
The configuration of a rigid body is a translation of its origin plus a rotation of its frame. The rotation can be stored as a matrix, a set of angles, or four Euler parameters; the choice trades simplicity for freedom from singularities.
global point: r = r_O + R p_bodyR orthogonal: RTR = I, det R = +1Euler parameters: e02 + e12 + e22 + e32 = 1A rigid body never changes shape, so its position in space is fully known once you know where a reference point (the origin of a body-fixed frame) sits and how that frame is turned relative to the world. The turn is a rotation. A rotation matrix R maps any vector written in body coordinates into world coordinates, and it is orthogonal with determinant one, which keeps lengths and angles fixed. In three dimensions you need three numbers for orientation, and Euler angles or Bryan (roll-pitch-yaw) angles supply them, but every three-angle set has orientations where two axes line up and the description breaks down, a gimbal-lock singularity. Euler parameters, a unit quaternion of four numbers with one normalization constraint, remove that singularity and are what most multibody codes actually integrate. Angular velocity ties orientation to time: it is the vector whose direction is the instantaneous axis of rotation and whose length is the spin rate.
The skills, taught in order
Five skills describe where a body is and which way it points.
2.1 The rotation matrix
Build R from the body axes expressed in world coordinates. Its columns are the body unit vectors seen from the world, and RT rotates the other way. Orthogonality is the check that a matrix is a valid rotation.
2.2 Position of a body point
A point fixed in the body at p_body appears in the world at r = r_O + R p_body. This one relation places every feature of a body once the origin and rotation are known.
2.3 Euler and Bryan angles
Three successive rotations about chosen axes give three angles. Bryan (yaw-pitch-roll) angles are common for vehicles. They are compact but singular at certain orientations, so watch the pitch near ninety degrees.
2.4 Euler parameters
Store the rotation as an angle about an axis: e0 = cos(φ/2) and the vector part e = sin(φ/2) n. Four numbers with unit norm, no singularity, and clean composition make these the working choice for simulation.
2.5 Angular velocity
The angular velocity vector links orientation to its rate of change. Kinematic differential equations relate it to the time derivatives of angles or of Euler parameters, and they are what the integrator advances.
| Representation | Numbers | Singularity? |
|---|---|---|
| Rotation matrix | 9 (with 6 constraints) | No |
| Euler / Bryan angles | 3 | Yes (gimbal lock) |
| Euler parameters | 4 (with 1 constraint) | No |
Fewer numbers are easier to read but risk singularities; Euler parameters are the usual compromise inside a solver.
Engineering connection: a flight or vehicle simulator that tumbles through all orientations uses Euler parameters precisely so the model never hits gimbal lock at a critical moment.
Worked example 1: placing a body point in the world
A planar link has its origin at (1, 0) m and is rotated 30 degrees. A feature is fixed in the body at p_body = (0.5, 0.2) m. Find the feature’s global position.
- ProblemLocate the body point of Figure 1 in world coordinates.
- Given / findr_O = (1, 0), θ = 30°, p_body = (0.5, 0.2). Find r.
- AssumptionsRigid body, planar motion, angle measured counterclockwise from the world x-axis.
- Modelr = r_O + R(θ) p_body, with R(θ) = [[cosθ, −sinθ], [sinθ, cosθ]].
- EquationsR p = (cosθ·0.5 − sinθ·0.2, sinθ·0.5 + cosθ·0.2)
- SolveR p = (0.866·0.5 − 0.5·0.2, 0.5·0.5 + 0.866·0.2) = (0.333, 0.423). Add the origin: r = (1.333, 0.423) m.
- CheckThe feature stays 0.539 m from the origin before and after rotation (√(0.52+0.22) = 0.539), as a rigid rotation must preserve.
- ConclusionThe feature sits at (1.333, 0.423) m. Rotate the body vector, then translate: that two-step rule places every point on every body.
Worked example 2: a rotation as Euler parameters
A body is rotated 120 degrees about the axis (1, 1, 1). Write the Euler parameters and confirm they form a unit quaternion.
- ProblemExpress the rotation of Figure 2 as Euler parameters.
- Given / findφ = 120°, axis direction (1, 1, 1). Find e0, e1, e2, e3 and check the norm.
- AssumptionsThe axis is a unit vector after normalization; the rotation is a single turn about it.
- Modele0 = cos(φ/2); the vector part e = sin(φ/2) n with n the unit axis.
- Equationsn = (1,1,1)/√3, e0 = cos60° = 0.5e = sin60°·n = 0.866·0.577 = 0.5 each
- Solvee = (e0, e1, e2, e3) = (0.5, 0.5, 0.5, 0.5).
- CheckNorm squared = 0.52 × 4 = 1, so the quaternion is unit length, as every valid rotation requires.
- ConclusionThe rotation is the unit quaternion (0.5, 0.5, 0.5, 0.5). Four numbers describe the turn with no singularity, which is why solvers integrate these instead of angles.
Misconceptions and diagnostics
| Mistake | Symptom | Diagnostic question | Correction |
|---|---|---|---|
| Mixing body and world frames | Adding vectors that live in different frames | Which frame is this vector written in? | Use R to bring both vectors into the same frame first. |
| Transposing the rotation the wrong way | Points rotate backwards | Am I mapping body to world or world to body? | R maps body to world; RT maps world to body. |
| Ignoring gimbal lock | Rates explode near a certain pitch angle | Is any angle near its singular value? | Switch to Euler parameters for large-range motion. |
| Letting the quaternion drift | The norm slips away from one during integration | Is the quaternion still unit length? | Renormalize the Euler parameters each step. |
Practice ladder
A planar body is rotated 90 degrees. Where does the body vector (2, 0) point in the world?
Show answer
R(90°)(2,0) = (0, 2). The vector rotates onto the world y-axis.
A rotation matrix has columns (0.8, 0.6) and (−0.6, 0.8). Is it a valid rotation?
Show answer
Yes: columns are unit length and orthogonal, and the determinant is 0.8·0.8 − (−0.6)·0.6 = 1.
A body turns 180 degrees about the z-axis. Write its Euler parameters.
Show answer
e0 = cos90° = 0, e = sin90°·(0,0,1) = (0,0,1); quaternion (0, 0, 0, 1), norm 1.
Take a vehicle heading you know (yaw, pitch, roll) and explain which maneuver would push it toward gimbal lock and how Euler parameters avoid it.
What good work looks like
A good answer identifies a pitch near ninety degrees as the singular case, shows the angle rates growing, and notes that Euler parameters carry four numbers with no such singularity.
Working with AI, and proving it yourself
Ask AI to check a rotation, not to invent your convention
Portfolio task
Take a body from your own model, pick a representation, and write its orientation both as a matrix and as Euler parameters, showing they agree on one test vector.
Retrieval and spaced review
Closed notes. Answer out loud, then reveal.
1. What is the configuration of a rigid body?
A translation of its origin plus a rotation of its frame.
2. Write the position of a body point in the world.
r = r_O + R p_body.
3. What two properties define a rotation matrix?
Orthogonality (RTR = I) and determinant +1.
4. Why prefer Euler parameters to three angles?
They avoid the gimbal-lock singularity of any three-angle set.
5. What does angular velocity connect?
Orientation to its rate of change over time.
Textbook mapping
Orientation is the subject of Wittenburg’s kinematics chapter. Use these references to read further.
| Topic in this module | Where to read more |
|---|---|
| Direction cosines, Euler and Bryan angles | Wittenburg, Dynamics of Multibody Systems, ch. 2 |
| Euler parameters and quaternions | Wittenburg, Dynamics of Multibody Systems, ch. 2 (2nd ed. additions) |
| Angular velocity and kinematic equations | Standard rigid-body dynamics texts on rotational kinematics |
Chapter references are to Wittenburg, Dynamics of Multibody Systems (Springer).