@@ -1956,14 +1956,14 @@ R"""(Returns the owning MultibodyPlant LeafSystem.
19561956 // Source: drake/multibody/tree/force_element.h
19571957 const char * doc =
19581958R"""( A ForceElement allows modeling state and time dependent forces in a
1959- MultibodyTree model. Examples of such forces are springs, dampers,
1959+ MultibodyPlant model. Examples of such forces are springs, dampers,
19601960drag and gravity. Forces that depend on accelerations such as virtual
19611961mass cannot be modeled with a ForceElement. This abstract class
19621962provides an API that all force elements subclasses must implement in
19631963order to be fully defined. These are:
19641964
19651965- CalcAndAddForceContribution(): computes the force contribution of a force
1966- element in a MultibodyTree model.
1966+ element in a MultibodyPlant model.
19671967- CalcPotentialEnergy(): computes a force element potential energy
19681968 contribution.
19691969- CalcConservativePower(): computes the power generated by conservative
@@ -1980,7 +1980,7 @@ model, different force elements may write into the array of spatial
19801980forces ``F_B_W`` or the array of generalized forces ``tau``.
19811981
19821982Parameter ``context``:
1983- The context containing the state of the MultibodyTree model.
1983+ The context containing the state of the MultibodyPlant model.
19841984
19851985Parameter ``pc``:
19861986 A position kinematics cache object already updated to be in sync
@@ -1995,7 +1995,7 @@ Parameter ``forces``:
19951995 output ``this`` force element adds its contribution into
19961996 ``forces``. This method will abort if the ``forces`` pointer is
19971997 null or if the forces object is not compatible with ``this``
1998- MultibodyTree , see MultibodyForces∷CheckInvariants().
1998+ MultibodyPlant , see MultibodyForces∷CheckInvariants().
19991999
20002000Precondition:
20012001 The position kinematics ``pc`` must have been previously updated
@@ -2076,6 +2076,13 @@ parameters of this method. It assumes ``forces`` to be a valid pointer
20762076to a MultibodyForces object compatible with the MultibodyTree model
20772077owning ``this`` force element.
20782078
2079+ Note:
2080+ Although spatial forces are applied to *links*, it is the
2081+ responsibility of the implementation to shift those forces to the
2082+ mobilized bodies that the links follow. When we are combining
2083+ welded-together links into composites, there can be multiple links
2084+ on the same mobilized body.
2085+
20792086Precondition:
20802087 The position kinematics ``pc`` must have been previously updated
20812088 with a call to CalcPositionKinematicsCache().
@@ -4596,16 +4603,16 @@ class documentation states that a Space-fixed (extrinsic) X-Y-Z
45964603rotation with roll-pitch-yaw angles [q₀ q₁ q₂] is equivalent to a
45974604Body-fixed (intrinsic) Z-Y-X rotation by yaw-pitch-roll angles [q₂ q₁
45984605q₀]. In the context of "gimbal torques", the Body-fixed Z-Y-X rotation
4599- sequence with angles [q₂ q₁ q₀] is physical meaningful as it produces
4600- torques associated with successive frames in a gimbal as τ₂ 𝐀𝐳, τ₁ 𝐏𝐲,
4601- τ ₀ 𝐂𝐱, where each of 𝐀𝐳, 𝐏𝐲, 𝐂𝐱 are unit vectors associated with a
4602- frame in the yaw-pitch-roll rotation sequence and 𝐏𝐲 is a unit vector
4603- of the "pitch" intermediate frame. As described earlier, torque 𝐭 is
4604- the moment of the bushing forces on frame C about Cp. Scalars tx, ty ,
4605- tz are defined so 𝐭 can be expressed ``𝐭 = [tx ty tz]ᴀ = tx 𝐀𝐱 + ty 𝐀𝐲
4606- + tz 𝐀𝐳``. As shown in code documentation, the relationship of [tx ty
4607- tz] to [τ₀ τ₁ τ₂] was found by equating 𝐭's power to τ's power as 𝐭 ⋅
4608- w_AC = τ ⋅ q̇.
4606+ sequence with angles [q₂ q₁ q₀] is physically meaningful as it
4607+ produces torques associated with successive frames in a gimbal as τ₂
4608+ 𝐀𝐳, τ₁ 𝐏𝐲, τ ₀ 𝐂𝐱, where each of 𝐀𝐳, 𝐏𝐲, 𝐂𝐱 are unit vectors associated
4609+ with a frame in the yaw-pitch-roll rotation sequence and 𝐏𝐲 is a unit
4610+ vector of the "pitch" intermediate frame. As described earlier, torque
4611+ 𝐭 is the moment of the bushing forces on frame C about Cp. Scalars tx,
4612+ ty, tz are defined so 𝐭 can be expressed ``𝐭 = [tx ty tz]ᴀ = tx 𝐀𝐱 +
4613+ ty 𝐀𝐲 + tz 𝐀𝐳``. As shown in code documentation, the relationship of
4614+ [tx ty tz] to [τ₀ τ₁ τ₂] was found by equating 𝐭's power to τ's power
4615+ as 𝐭 ⋅ w_AC = τ ⋅ q̇.
46094616
46104617
46114618.. raw:: html
@@ -5438,11 +5445,11 @@ that is added during Finalize() should set this flag to ``True``.)""";
54385445 struct /* MultibodyForces */ {
54395446 // Source: drake/multibody/tree/multibody_forces.h
54405447 const char * doc =
5441- R"""( A class to hold a set of forces applied to a MultibodyTree system.
5442- Forces can include generalized forces as well as body spatial forces.
5443- MultibodyPlant∷CalcGeneralizedForces() can be used to compute the
5444- *total* generalized force, combining generalized_forces() and
5445- body_forces().)""" ;
5448+ R"""( Holds a set of forces applied to a MultibodyTree system. Forces can
5449+ include generalized forces as well as mobilized body (mobod) spatial
5450+ forces. MultibodyPlant∷CalcGeneralizedForces() can be used to compute
5451+ the *total* generalized force, combining generalized_forces() with the
5452+ generalized force equivalent of the body_forces().)""" ;
54465453 // Symbol: drake::multibody::MultibodyForces::AddInForces
54475454 struct /* AddInForces */ {
54485455 // Source: drake/multibody/tree/multibody_forces.h
@@ -5475,9 +5482,13 @@ abort.)""";
54755482 const char * doc_1args_model = R"""( (Advanced) Tree overload.)""" ;
54765483 // Source: drake/multibody/tree/multibody_forces.h
54775484 const char * doc_2args_nb_nv =
5478- R"""( Number of bodies and number of generalized velocities overload. This
5479- constructor is useful for constructing the MultibodyForces structure
5480- before a MultibodyPlant has been constructed.)""" ;
5485+ R"""( (Advanced) Constructs a force object with a given number of mobilized
5486+ bodies and corresponding mobilities (number of generalized
5487+ velocities). This constructor may be useful for constructing the
5488+ MultibodyForces structure before a MultibodyPlant has been
5489+ constructed. However, this must be used cautiously since the number of
5490+ mobilized bodies and their mobilities are not known until after
5491+ Finalize().)""" ;
54815492 } ctor;
54825493 // Symbol: drake::multibody::MultibodyForces::SetZero
54835494 struct /* SetZero */ {
0 commit comments