Drake

Scalar quantities: The ordinary first timederivative of the scalar x is denoted xdot or xDt whereas the ordinary second timederivative of x is denoted xddot or xDDt.
Vector quantities (Advanced topic): The ordinary timederivative of a vector v (such as position or velocity) is different than the derivative of a scalar. A vector has direction whereas a scalar does not. The derivative of a vector requires a frame in which the derivative is being taken. The typeset notation for the ordinary timederivative in frame \( G \) of a vector \( v \) is \( \frac{^Gd}{dt}\,v \) and its monogram notation is DtG_v
. Since the derivative of a vector is a vector, we need to specify an expressedin frame E. The typeset notation is \( [\frac{^Gd}{dt}\,v]_E \) whereas the monogram notation is DtG_v_E
. In unicode comments (e.g., in a header or source file), use [ᴳd/dt v]_E
or DtG(v)_E
(see below).†
Important note: The derivative operator applies to the vector, not the computational representation of the vector. It is misleading to include an expressedin frame in the symbol name for the vector v. The expressedin frame applies only to the final derived quantity. For example, consider V_BC
, frame C's spatial velocity in frame B (a spatial velocity contains two vectors, namely angular velocity and velocity). In code, you may express V_BC
in frame E as V_BC_E
. The definition of the spatial acceleration A_BC
is the derivative in frame B of V_BC
(the derivative must be in B). However, the resulting expressedin frame is arbitrary, e.g., a frame F. The expressedin frame E for V_BC
does not impact the final result. The monogram notation for this derivative is DtB_V_BC_F
which is interpreted as \( [\frac{^Bd}{dt}\,^BV^C]_F \); the _F
goes with the result, not the quantity being differentiated. The resulting vector happens to be A_BC_F
, but that is only because the derivative was taken in frame B. If the derivative was taken in F (or C or E or any frame other than B), there is no conventional spatial acceleration name or notation for the result DtF_V_BC
.
When using this DtFrame derivative notation in code, the expressedin frame is always specified at the end of the symbol. However there is never an expressedin frame specified for the quantity being differentiated. For example, given a vector v, the expression DtG(v_E)_F
is misleading. Instead, use DtG(v)_F
.
† In unicode comments for the derivative in frame A of a vector v, use ᴬd/dt v
(preferred if available) or DtA(v)
. Although the former is preferred, not all uppercase letters are available as superscripts in unicode. Consider choosing frame names to accommodate this strange quirk in unicode.
Next topic: Spatial Algebra