Add components of qfrc_passive to mjData: qfrc_{spring, damper, gravcomp, fluid}.

PiperOrigin-RevId: 576493532
Change-Id: If8eda1a2bb728fe8ab91b8004f97fc729d999ad9
This commit is contained in:
Yuval Tassa
2023-10-25 05:00:51 -07:00
committed by Copybara-Service
parent 190bfac2d6
commit a89412bb4a
8 changed files with 189 additions and 75 deletions
+13 -6
View File
@@ -5,19 +5,26 @@ Changelog
Upcoming version (not yet released)
-----------------------------------
General
^^^^^^^
1. Added sub-terms of total passive forces in ``mjData.qfrc_passive`` to :ref:`mjData`:
``qfrc_{spring, damper, gravcomp, fluid}``. The sum of these vectors equals ``qfrc_passive``.
Bug fixes
^^^^^^^^^
1. :ref:`simulate<saSimulate>`: correct handling of "Pause update", "Fullscreen" and "VSync" buttons.
2. Fixed typos and supported fields in docs (fixes :github:issue:`1105` and :github:issue:`1106`).
3. Fixed bug where mixed ``jnt_limited`` joints were not being constrained correctly.
4. Made ``device_put`` type validation more verbose (fixes :github:issue:`1113`).
5. Removed empty EFC rows from `MJX`, for joints with no limits (fixes :github:issue:`1117`).
2. :ref:`simulate<saSimulate>`: correct handling of "Pause update", "Fullscreen" and "VSync" buttons.
3. Fixed typos and supported fields in docs (fixes :github:issue:`1105` and :github:issue:`1106`).
4. Fixed bug where mixed ``jnt_limited`` joints were not being constrained correctly.
5. Made ``device_put`` type validation more verbose (fixes :github:issue:`1113`).
6. Removed empty EFC rows from `MJX`, for joints with no limits (fixes :github:issue:`1117`).
Documentation
^^^^^^^^^^^^^
5. Added documentation for the :ref:`UI` framework.
7. Added documentation for the :ref:`UI` framework.
Version 3.0.0 (October 18, 2023)
--------------------------------
+5 -1
View File
@@ -292,7 +292,11 @@ struct mjData_ {
mjtNum* qfrc_bias; // C(qpos,qvel) (nv x 1)
// computed by mj_fwdVelocity/mj_passive
mjtNum* qfrc_passive; // passive force (nv x 1)
mjtNum* qfrc_spring; // passive spring force (nv x 1)
mjtNum* qfrc_damper; // passive damper force (nv x 1)
mjtNum* qfrc_gravcomp; // passive gravity compensation force (nv x 1)
mjtNum* qfrc_fluid; // passive fluid force (nv x 1)
mjtNum* qfrc_passive; // total passive force (nv x 1)
// computed by mj_sensorVel/mj_subtreeVel if needed
mjtNum* subtree_linvel; // linear velocity of subtree com (nbody x 3)