Contribution should carry force, not only acceleration #22

Closed
opened 2026-09-30 12:48:49 -04:00 by connor · 1 comment
Owner

Force is the better parallel to torque: assembly divides force by mass the same way it will divide torque by the inertia tensor, and the split between translational and rotational kinematics stays visible in one function.

Keep both channels. Gravity and third-body are naturally accelerations, where mass cancels exactly; drag, SRP and thrust are naturally forces. Making gravity multiply by mass so assembly can divide it out again is wasted work and invents a mass dependence the physics does not have.

a_total = contribution.acceleration + contribution.force / m

Needs a mass source: the state when the layout has one, otherwise the spacecraft (#7).

Force is the better parallel to torque: assembly divides force by mass the same way it will divide torque by the inertia tensor, and the split between translational and rotational kinematics stays visible in one function. Keep both channels. Gravity and third-body are naturally accelerations, where mass cancels exactly; drag, SRP and thrust are naturally forces. Making gravity multiply by mass so assembly can divide it out again is wasted work and invents a mass dependence the physics does not have. a_total = contribution.acceleration + contribution.force / m Needs a mass source: the state when the layout has one, otherwise the spacecraft (#7).
connor added this to the M1 milestone 2026-09-30 12:48:49 -04:00
connor added the size/S label 2026-09-30 12:48:49 -04:00
Author
Owner

Done in 77a1539. Both channels kept: gravity stays an acceleration, and assembly sums acceleration + force / mass. A force on a layout with no mass trips a debug_assert.

Done in 77a1539. Both channels kept: gravity stays an acceleration, and assembly sums `acceleration + force / mass`. A force on a layout with no mass trips a `debug_assert`.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: connor/astrokit#22