"""Bench-grade simulators used by Sprint 2+ to validate the PID without the AR-NMEA-IO board attached. Modules: - :mod:`~arautopilot.studio.simulator.rudder_dynamics` Minimal physical model of a hydraulic rudder actuator: rotational inertia, viscous friction, hydraulic deadband, port/stbd asymmetry, mechanical end-stops. - :mod:`~arautopilot.studio.simulator.pid_inner` Pure-Python reference implementation of the inner (rudder-position) PID. Used to iterate on the algorithm and cross-validate the C++ firmware port. """