google-deepmind / google-deepmind/mujoco
Mujoco (implicit) integration does not offer a mechanism to take into account custom passive forces in `qDeriv` calculation
- Dominant language
- C++
- Stars
- 15.2k
- Forks
- 1.8k
- Avg merge
- 10d 16h
- Merged PRs (30d)
- 25
Description
### The feature, motivation and pitch
While constant stiffness and damping are the most common model for passive forces, there does exist needs for more complex passive forces (piecewise linear, nonlinear, lookup, etc.). Mujoco offers two mechanisms, `mjcb_passive` callback and passive force plugin, to calculate custom passive forces at maximum flexibility. However, in integration step, if I understand correctly, only simple damping is considered in `qDeriv` calculation via `mjd_smooth_vel -> mjd_passive_vel`. This makes the implicit integration less accurate, and may lead to divergence.
### Alternatives
_No response_
### Additional context
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.