pub fn semi_implicit_step_jacobians(
model: &Model,
state: &State,
) -> StepJacobiansExpand description
Compute step Jacobians for semi-implicit Euler by chain rule through the integrator.
Semi-implicit Euler: qdd = ABA(q, v, ctrl) v’ = v + dt * qdd q’ = q + dt * v’
The integrator layer is differentiated exactly; the ABA block
(∂qdd/∂q, ∂qdd/∂v, ∂qdd/∂ctrl) is still obtained by central finite
differences on aba, so this routine is not derivative-exact. It is
cheaper and better-conditioned than finite_diff_jacobians, which
perturbs the whole step, but it carries the same truncation/round-off
tradeoff. For exact derivatives use
symbolic::symbolic_step_jacobians.