A Byte of PhysicsLogo

Rigid body approximation

A rigid-body model treats distances between all modeled points in an object as fixed. That turns a large collection of particle coordinates into position, orientation, and a small set of linear and rotational variables. It is both a compression and a physical contract: geometry is reconstructed from a pose, and internal deformation is deliberately excluded.

Think like a programmer

Serialize body mass, centre of mass, body-frame geometry, pose, linear/angular velocity, inertia representation, force/torque inputs, constraints/contact policy, coordinate frames, integrator/step, and display transform. Advance translational and rotational state in physics coordinates, then reconstruct render points from a named body-to-world transform. Check pairwise-distance/shape invariants and total momentum/energy transfer against the system boundary; never animate vertices independently and call the result rigid-body dynamics.

Model checklist

Inputs
Mass, centre of mass, body-frame vertices, position/orientation, linear/angular velocity, inertia, external forces/torques, contacts/constraints, coordinate-frame convention, integrator/step, and render transform.
State
Pose, linear/angular momentum, velocities, applied/reaction forces/torques, body-to-world vertex positions, invariant residuals, and transfer ledger.
Rule
Integrate centre-of-mass translation from net force and orientation/angular state from torque/inertia under the declared model; map fixed body-frame geometry through the updated pose.
Output
Body pose, reconstructed world geometry, contact/constraint diagnostics, momentum/energy residuals, and shape-invariance check.
Check
Pairwise body-frame distances equal reconstructed world distances within tolerance; translating/rotating pose changes no internal distance; zero net force/torque preserves corresponding ideal momentum quantities; body-frame/world-frame transforms round-trip; external contacts appear as named transfer/reaction terms.
\[\mathbf x_{world}=\mathbf x_{CM}+R(\mathbf q)\mathbf x_{body},\qquad\lVert\mathbf x_i-\mathbf x_j\rVert=\text{constant}\]

Torque updates angular motion

Change torque and moment of inertia. The same torque produces less angular acceleration for a harder-to-rotate body.

Torque 6 N·m; moment of inertia 2 kg·m²; angular acceleration 3.00 rad/s²; rotational energy at 3 rad/s 9.00 J.

A renderer usually needs derived vertex coordinates, normals, and a transform matrix; these should not become authoritative physics state. For a two-dimensional disk, scalar orientation may suffice. General three-dimensional orientation needs a rotation matrix or quaternion with normalization and orthogonality checks. Reference frame must be explicit: torque, angular momentum, and inertia relationships can differ between body and world frames.

Try this experiment

Prediction: A rigid object can translate and rotate at the same time without changing its shape.

Serialize a disk's mass, radius/body geometry, centre of mass, angle, linear/angular velocity, inertia, forces/torques, frame convention, and time step. Reconstruct two body-frame vertices before and after a combined translation/rotation and test distance preservation. Then explain which values are render derivatives and why a vertex edit violates the rigid contract unless it is converted into new body-frame geometry.

Where this model breaks

Soft bodies, springs, bending beams, high-speed impacts, fracture, fluid interaction, and thermal expansion can change shape enough that a rigid representation gives wrong forces or energy. Contact solvers may add approximation/penetration error. A scalar-angle fixed-axis model is insufficient for general 3D gyroscopic motion, asymmetric inertia, and quaternion/matrix drift control.

Summary

Use rigid bodies when shape changes are irrelevant at the required resolution. Keep pose, inertial parameters, frames, and transfers as state; derive every point location from them and verify fixed-distance invariants before trusting a rendered body.

Glossary

Self-check

  1. What state replaces particle positions?
  2. What relationship stays fixed?
  3. Why should render vertices be derived rather than authoritative state?
  4. Name one case where rigidity fails.

Sources

Model contract

Treat the lesson as a small function before treating it as a fact to memorize. Give every value a unit, keep only the state needed for the next step, and make the output easy to inspect.

\[\text{observable output} = f(\text{inputs},\,\text{state})\]
Inputs
Quantities you set or measure, with units and useful bounds.
State
Values the program must retain to reproduce the next result.
Rule
The relationship or update that turns inputs and state into a result.
Check
A known limit, unit check, invariant, or measured result that can expose a bad model.

Implement the idea as a model

For Rigid Body Approximation, write down the quantities you can control, the values your program must retain, and the result a reader could inspect. In Rolling, Angular Momentum, and Gyroscopes, the useful program is not the drawing: it is the smallest explicit model that makes a prediction you can test.

Guided experiment

Prediction: changing one declared input while holding the others fixed should change only the outputs that the model connects to that input. Choose one input, predict the direction of change, then check a limiting case such as zero, a symmetric arrangement, or a familiar low-speed or small-change approximation.

Where this model breaks

This lesson is a teaching model, not a complete simulator. Before using it outside the stated question, check which interactions, scales, uncertainties, boundary conditions, and measurement limits it leaves out.

Summary

Treat Rigid Body Approximation as a contract: named inputs and units enter a rule, the rule produces an observable result, and a known limit or invariant checks whether the implementation deserves trust.

Glossary

  • Input: a measured value or chosen parameter supplied to a model.
  • State: the smallest set of values needed to continue or reproduce a model.
  • Validation: comparing an output with a known result, limit, invariant, or measurement.

Self-check

  1. Which values are inputs, and which values must remain state?
  2. What observable result would tell you the model is behaving as expected?
  3. Which assumption would you test first before applying the model to a real system?

Model review: turn Rigid Body Approximation into a test

Choose a compact pose-based model when an object’s internal distances can be treated as fixed.

  1. Name the inputs and units that the rolling, angular momentum, and gyroscopes model needs.
  2. Separate the state you must keep from values you can calculate when needed.
  3. Write one rule that maps the current state and inputs to an observable result.
  4. Choose a limiting case, unit check, invariant, or known result before trusting an output.
  5. State one assumption you would change before using this simplified model for a real decision.

Share to: