Imports
/- Copyright (c) 2025 Joseph Tooby-Smith. All rights reserved. Released under Apache 2.0 license as described in the file LICENSE. Authors: Joseph Tooby-Smith -/ module public import Physlib.ClassicalMechanics.RigidBody.Basic public import Physlib.SpaceAndTime.Space.Integrals.Basic public import Physlib.Meta.Linters.Sorry

The solid sphere as a rigid body

In this module we consider the solid sphere as a rigid body, and compute its mass, center of mass and inertia tensor.

@[expose] public sectiond:m:ℝ≥0R:ℝ≥0hr:R 0h1:volume.real (Metric.closedBall 0 R) 0m / volume.real (Metric.closedBall 0 R) * volume.real (Metric.closedBall 0 R) = m All goals completed! 🐙

The center of mass of a solid sphere located at the origin is 0.

d:m:ℝ≥0R:ℝ≥0i:Fin d( (x : Space d), if dist (-x) 0 R then (-x).val i else 0) = (x : Space d), if dist x 0 R then -x.val i else 0 All goals completed! 🐙

The moment of inertia tensor of a solid sphere through its center of mass is 2/5 m R^2 * I.

@[sorryful] lemma declaration uses `sorry`solidSphere_inertiaTensor (m R : ℝ≥0) (hr : R 0) : (solidSphere 3 m R).inertiaTensor = (2/5 * m.1 * R.1^2) (1 : Matrix _ _ _) := m:ℝ≥0R:ℝ≥0hr:R 0(solidSphere 3 m R).inertiaTensor = (2 / 5 * m * R ^ 2) 1 All goals completed! 🐙