- Needs mujoco licence to run.
- Wraps derivative.cpp to call from Python.
- Install mujoco_py
pip install mujoco_py_deriv
Prepare mujoco model.
import mujoco_py as mj
from mujoco_py_deriv import MjDerivative, checkderiv
# Prepare mujoco model and data
model = mj.load_model_from_path("flat_pusher_sample.xml")
sim = mj.MjSim(model, nsubsteps=nstep)
dmain = sim.data
Compute numerical derivative
# To compute δf/δx
f = ["qacc"]
x = ["qfrc_applied", "qvel", "qpos"]
deriv_obj = MjDerivative(model, dmain, f, x)
deriv = deriv_obj.compute()
python test/test_mujoco_py_deriv.py
Take a look at mujoco_py_deriv_dynamics.py