diff --git a/mjx/mujoco/mjx/_src/forward.py b/mjx/mujoco/mjx/_src/forward.py index bb01727d..2a0e946e 100644 --- a/mjx/mujoco/mjx/_src/forward.py +++ b/mjx/mujoco/mjx/_src/forward.py @@ -334,6 +334,9 @@ def _advance( # advance time time = d.time + m.opt.timestep + # save qacc for next step warmstart + d = d.replace(qacc_warmstart=d.qacc) + return d.replace(act=act, qpos=qpos, time=time) diff --git a/mjx/mujoco/mjx/_src/solver.py b/mjx/mujoco/mjx/_src/solver.py index f57dbd1c..6ac37f19 100644 --- a/mjx/mujoco/mjx/_src/solver.py +++ b/mjx/mujoco/mjx/_src/solver.py @@ -602,7 +602,6 @@ def solve(m: Model, d: Data) -> Data: ctx = jax.lax.while_loop(cond, body, ctx) d = d.tree_replace({ - 'qacc_warmstart': ctx.qacc, 'qfrc_constraint': ctx.qfrc_constraint, 'qacc': ctx.qacc, '_impl.efc_force': ctx.efc_force,