1111class DampingTask (PostureTask ):
1212 r"""L2-regularization on joint velocities (a.k.a. *velocity damping*).
1313
14- This low-priority task adds a Tikhonov/Levenberg-Marquardt term to the
15- quadratic program, making the Hessian strictly positive-definite and
16- selecting the **minimum-norm joint velocity ** in any redundant or
17- near-singular situation. Formally it contributes :
14+ This task, typically used with a low priority in the task stack, adds a
15+ Levenberg-Marquardt term to the quadratic program, favoring **minimum-norm
16+ joint velocities ** in redundant or near-singular situations. Formally, it
17+ contributes the following term to the quadratic program :
1818
1919 .. math::
2020 \frac{1}{2}\,\Delta \mathbf{q}^\top \Lambda\,\Delta \mathbf{q},
2121
2222 where :math:`\Delta \mathbf{q}\in\mathbb{R}^{n_v}` is the vector of joint
2323 displacements and :math:`\Lambda = \mathrm{diag}(\lambda_1, \ldots, \lambda_{n_v})`
24- is a diagonal matrix of per-DoF weights provided by ``cost``. A larger
25- :math:`\lambda_i` reduces motion in DoF :math:`i`; with no other active
26- tasks the robot remains at rest.
27-
28- This task does not favor a particular posture—only small instantaneous
29- motion. If you need a posture bias, use an explicit :class:`~.PostureTask`.
24+ is a diagonal matrix of per-DoF damping weights specified via ``cost``. A larger
25+ :math:`\lambda_i` reduces motion in DoF :math:`i`. With no other active
26+ tasks, the robot remains at rest. Unlike the `damping` parameter in
27+ :func:`~.solve_ik`, which is uniformly applied to all DoFs, this task does
28+ not affect the floating-base coordinates.
3029
3130 .. note::
3231
33- Floating-base coordinates are not affected by this task.
32+ This task does not favor a particular posture, only small instantaneous motion.
33+ If you need a posture bias, use :class:`~.PostureTask` instead.
3434
3535 Example:
3636
@@ -53,7 +53,7 @@ def compute_error(self, configuration: Configuration) -> np.ndarray:
5353 r"""Compute the damping task error.
5454
5555 The damping task does not chase a reference; its desired joint velocity
56- is identically **zero**, so the error vector is always
56+ is identically **zero**, so the task error is always:
5757
5858 .. math:: e = \mathbf 0 \in \mathbb R^{n_v}.
5959
0 commit comments