Fix doc typos.
PiperOrigin-RevId: 476353794 Change-Id: I37db6c440893db55b2d02f78ce52e554b150fa32
This commit is contained in:
committed by
Copybara-Service
parent
36b47e56d0
commit
fe9bd74d3f
+10
-16
@@ -232,7 +232,7 @@ description of the general framework by summarizing how the above quantities up
|
|||||||
a way that preserves sparsity. When a quantity of the form :math:`M^{-1} x` is needed later, it is computed via
|
a way that preserves sparsity. When a quantity of the form :math:`M^{-1} x` is needed later, it is computed via
|
||||||
sparse back-substitution.
|
sparse back-substitution.
|
||||||
|
|
||||||
Before any of these computations we apply forward kinematics, which compute the global position and orientation of all
|
Before any of these computations we apply forward kinematics, which computes the global position and orientation of all
|
||||||
spatial objects as well as the joint axes. While it is often recommended to apply RNE and CRB in local coordinates, here
|
spatial objects as well as the joint axes. While it is often recommended to apply RNE and CRB in local coordinates, here
|
||||||
we are setting the stage for collision detection which is done in global coordinates, thus RNE and CRB are also
|
we are setting the stage for collision detection which is done in global coordinates, thus RNE and CRB are also
|
||||||
implemented in global coordinates. Nevertheless, to improve floating point accuracy, we represent the data for each
|
implemented in global coordinates. Nevertheless, to improve floating point accuracy, we represent the data for each
|
||||||
@@ -574,11 +574,11 @@ These input fields are set by the user and affect the physics simulation, but ar
|
|||||||
|
|
||||||
Controls: ``ctrl``
|
Controls: ``ctrl``
|
||||||
Controls are defined by the :ref:`actuator<actuator>` section of the XML. ``mjData.ctrl`` values either produce
|
Controls are defined by the :ref:`actuator<actuator>` section of the XML. ``mjData.ctrl`` values either produce
|
||||||
generalized forces directly (stateless actuators), or affects the actuator activations in ``mjData.act``, which then
|
generalized forces directly (stateless actuators), or affect the actuator activations in ``mjData.act``, which then
|
||||||
produce forces.
|
produce forces.
|
||||||
|
|
||||||
Auxillary Controls: ``qfrc_applied`` and ``xfrc_applied``
|
Auxillary Controls: ``qfrc_applied`` and ``xfrc_applied``
|
||||||
| ``mjData.qfrc_applied`` are directly applied generalised forces.
|
| ``mjData.qfrc_applied`` are directly applied generalized forces.
|
||||||
| ``mjData.xfrc_applied`` are Cartesian wrenches applied to the CoM of individual bodies. This field is used for
|
| ``mjData.xfrc_applied`` are Cartesian wrenches applied to the CoM of individual bodies. This field is used for
|
||||||
example, by the :ref:`native viewer<saSimulate>` to apply mouse perturbations.
|
example, by the :ref:`native viewer<saSimulate>` to apply mouse perturbations.
|
||||||
| Note that the effects of ``qfrc_applied`` and ``xfrc_applied`` can usually be recreated by appropriate actuator
|
| Note that the effects of ``qfrc_applied`` and ``xfrc_applied`` can usually be recreated by appropriate actuator
|
||||||
@@ -604,7 +604,7 @@ Warmstart accelerations
|
|||||||
the number of iterations required for convergence. Note however that the default Newton solver converges so quickly
|
the number of iterations required for convergence. Note however that the default Newton solver converges so quickly
|
||||||
(usually 2-3 iterations), that warmstarts often have no effect on speed and can be disabled.
|
(usually 2-3 iterations), that warmstarts often have no effect on speed and can be disabled.
|
||||||
|
|
||||||
Different warmstarts have no preceptible effect on the dynamics but should be saved if perfect numerical
|
Different warmstarts have no perceptible effect on the dynamics but should be saved if perfect numerical
|
||||||
reproducibility is required when loading a non-initial state. Note that even though their effect on physics is
|
reproducibility is required when loading a non-initial state. Note that even though their effect on physics is
|
||||||
negligible, many physical systems will accumulate small differences `exponentially
|
negligible, many physical systems will accumulate small differences `exponentially
|
||||||
<https://en.wikipedia.org/wiki/Lyapunov_exponent>`__ when time-stepping, quickly leading to divergent trajectories
|
<https://en.wikipedia.org/wiki/Lyapunov_exponent>`__ when time-stepping, quickly leading to divergent trajectories
|
||||||
@@ -706,20 +706,14 @@ dimensionality of the constraint residual in each case.
|
|||||||
linear combination of scalar joint positions, or a minimal-length string wrapping around spatial obstacles. Unlike
|
linear combination of scalar joint positions, or a minimal-length string wrapping around spatial obstacles. Unlike
|
||||||
joints whose positions in model configuration ``mjModel.qpos0`` can be read directly from the position vector, the
|
joints whose positions in model configuration ``mjModel.qpos0`` can be read directly from the position vector, the
|
||||||
computation of tendon lengths is less trivial. This is why the "resting lengths" of all tendons are computed by the
|
computation of tendon lengths is less trivial. This is why the "resting lengths" of all tendons are computed by the
|
||||||
compiler and stored in ``mjModel``. In general, all field of ``mjModel`` whose names end with 0 are quantities
|
compiler and stored in ``mjModel``. In general, all fields of ``mjModel`` whose names end with 0 are quantities
|
||||||
computed by the compiler in the initial model configuration ``mjModel.qpos0``.
|
computed by the compiler in the initial model configuration ``mjModel.qpos0``.
|
||||||
|
|
||||||
``distance`` : 1
|
``distance`` : 1
|
||||||
In its default form, this constraint forces two geoms to always touch each other - as if they are magnets but without
|
|
||||||
poles. The point of contact is not specified, so the two geoms are free to slide and rotate relative to each other.
|
.. attention::
|
||||||
The scalar residual is computed by using the collision detector in a special mode, where it returns the nearest
|
Distance equality constraints were removed in MuJoCo version 2.2.2. If you are using an earlier version, please
|
||||||
distance between the geoms even when they do not collide. A target value is then subtracted from this nearest
|
switch to the corresponding version of the documentation.
|
||||||
distance. By default the target value is 0, but we could for example create a distance constraint forcing the two
|
|
||||||
geom surfaces to remain 1 cm apart at all times. The specific reason we introduced this constraint was to estimate
|
|
||||||
the position and orientation of a body from motion capture markers attached to its surface, without knowing where
|
|
||||||
exactly the markers are attached. In that case the physics simulation ends up solving the estimation problem for us.
|
|
||||||
This could more generally be used when an object is supposed to slide over a surface and remain in contact with it;
|
|
||||||
for example the scapula in biomechanical models of the arm can be modeled as such a surface.
|
|
||||||
|
|
||||||
.. _coFriction:
|
.. _coFriction:
|
||||||
|
|
||||||
@@ -738,7 +732,7 @@ with it; so we formally set the corresponding components of :math:`r(q)` to zero
|
|||||||
constraint solver formulation needs to be extended in an unusual way to incorporate this constraint. Nevertheless the
|
constraint solver formulation needs to be extended in an unusual way to incorporate this constraint. Nevertheless the
|
||||||
velocity of the affected joint or tendon acts as a velocity "residual" - because the effect of the constraint is to
|
velocity of the affected joint or tendon acts as a velocity "residual" - because the effect of the constraint is to
|
||||||
reduce this velocity and ideally keep it at zero. Thus the corresponding block in the constraint Jacobian is simply the
|
reduce this velocity and ideally keep it at zero. Thus the corresponding block in the constraint Jacobian is simply the
|
||||||
Jacobian of the joint position (or tendon length) with respect to :math:`q`. For scalar joints this is a vector of 0's
|
Jacobian of the joint position (or tendon length) with respect to :math:`q`. For scalar joints this is a vector of 0s
|
||||||
with a 1 at the joint address. For tendons this is known as the moment arm vector.
|
with a 1 at the joint address. For tendons this is known as the moment arm vector.
|
||||||
|
|
||||||
``joint`` : 1, 3 or 6
|
``joint`` : 1, 3 or 6
|
||||||
|
|||||||
Reference in New Issue
Block a user