A ring habitat spins to fake gravity by centripetal acceleration: at radius R and angular speed ω the rim feels g = ω²R. Every module you add is a rigid point mass placed at radius R, so total moment of inertia is I = ΣmᵢR² and the station's center of mass is the mass-weighted vector sum of module positions divided by total mass — the core hub ring is treated as uniform and contributes nothing to that offset, so any offset you see comes purely from how the modules are arranged.
g(rim) = ω² R
v(rim) = ω R
I = Σ mᵢ R² (thin-ring approx, all mass at R)
α = τ / I, τ = F_thrust · R (tug torque about spin axis)
σ(hoop) = ρ_shell · v² (thin rotating shell, standard flywheel formula)
COM = (Σ mᵢ·Rᵢ_vec) / M
When you add a module, angular momentum L = Iω is conserved for that instant (the tug hasn't fired yet) — so a heavier ring spins down slightly the moment new mass joins it, exactly like a spinning skater's arms going out. The thruster then works to restore the target spin rate at α = torque / I, so a heavier station with the same tug accelerates more slowly.
- Symmetric build — modules alternate to opposite sides of the ring, keeping the center of mass near the spin axis throughout construction.
- Sequential build — modules are bolted on in order around one arc, so the station is lopsided until the ring closes; watch the COM marker drift and the hoop-stress/gravity readouts stay correct even as the geometry is unbalanced.
- Hoop stress uses an aluminum-alloy shell (ρ≈2700 kg/m³, yield ≈270 MPa) as a reference material; the readout turns amber/red as the rim speed pushes stress toward that limit.