Notation

This explains the notation in the book. The mathematical symbol is shown and then an example of a variable name that we use in the code.

General

\(x\), x, notation-scalar

Scalars are normal mathematical font.

\(\mathbf{R}\), R

Matrices are capitalized letters in bold font.

\(\mathbf{J}_{\bar{v},\bar{u}}\)

The Jacobian of the vector function \(\bar{v}\) with respect to the entries in vector \(\bar{u}\) where the \((i,j)\) entries of the Jacobian are \(\mathbf{J}_{ij} = \frac{\partial v_i}{\partial u_j}\).

Orientation of Reference Frames

\(A\), A, notation-ref-frame

Reference frame \(A\).

\(\hat{a}_x,\hat{a}_y,\hat{a}_z\), A.x, A.y, A.z, notation-ref-frame-unit-vec

Right handed mutually perpendicular unit vectors fixed in reference frame \(A\).

\({}^A\mathbf{C}^B\), A_C_B, notation-dcm

Direction cosine matrix relating reference frames (or rigid bodies) \(B\) and \(A\) where this relation between the right handed mutually perpendicular unit vectors fixed in the two reference frames follow this relationship:

(250)\[\begin{split}\begin{bmatrix} \hat{a}_x \\ \hat{a}_y \\ \hat{a}_z \end{bmatrix} = {}^A\mathbf{C}^B \begin{bmatrix} \hat{b}_x \\ \hat{b}_y \\ \hat{b}_z \end{bmatrix}\end{split}\]

Vectors and Vector Differentiation

\(\bar{v}\), v, notation-vector

Vectors are indicated with a bar.

\(\hat{u}\), uhat = u.normalize(), notation-unit-vec

Unit vectors are indicated with a hat.

\(|\bar{v}|\), v.magnitude(), notation-vec-mag

Magnitude of a vector; Euclidean norm (2-norm).

\(\bar{u} \cdot \bar{v}\), u.dot(v), notation-vec-dot

Dot product of two vectors.

\(\bar{u} \times \bar{v}\), u.cross(v), notation-vec-cross

Cross product of two vectors.

\(\bar{u} \otimes \bar{v}\), u.outer(v), notation-vec-outer

Outer product of two vectors.

\(\frac{{}^A\partial \bar{v}}{\partial q}\), dvdqA = v.diff(q, A), notation-vec-par-diff

Partial derivative of \(\bar{v}\) with respect to \(q\) when observed from \(A\).

\(\frac{{}^A d \bar{v}}{dt}\), dvdtA = v.dt(A), notation-vec-time-diff

Time derivative of \(\bar{v}\) when observed from \(A\).

Angular and Translational Kinematics

\({}^A\bar{\omega}^B\), A_w_B

Angular velocity vector of reference frame or rigid body \(B\) when observed from reference frame or rigid body \(A\).

\({}^A\bar{\alpha}^B\), A_alp_B

Angular acceleration vector of reference frame or rigid body \(B\) when observed from reference frame or rigid body \(A\).

\(\bar{r}^{P/O}\), r_O_P, notation-pos-vec

Vector from point \(O\) to point \(P\).

\({}^A\bar{v}^P\), A_v_P

Translational velocity of point \(P\) when observed from reference frame or rigid body \(A\).

\({}^A\bar{a}^P\), A_a_P

Translational acceleration of point \(P\) when observed from reference frame or rigid body \(A\).

Constraints

\(N,M,n,m,p\)

\(N\) coordinates, \(M\) holonomic constraints, \(n\) generalized coordinates and generalized speeds, \(m\) nonholonomic constraints, and \(p\) degrees of freedom. These are related by the two equations \(n=N-M\) and \(p=n-m\).

\(\bar{f}_h(q_1, \ldots, q_N, t) = 0 \textrm{ where } \bar{f}_h \in \mathbb{R}^M\), fh

Vector function of \(M\) holonomic constraint equations among the \(N\) coordinates.

\(\bar{f}_n(u_1, \ldots, u_n, q_1, \ldots, q_n, t) = 0 \textrm{ where } \bar{f}_n \in \mathbb{R}^m\), fn

Vector function of \(m\) nonholonomic constraint equations among the \(n\) generalized speeds and generalized coordinates.

\(\mathbf{A}_r\)

Linear coefficient matrix for \(\bar{u}_r\) in the nonholonomic constraint equations.

\(\mathbf{A}_s\)

Linear coefficient matrix for \(\bar{u}_s\) in the nonholonomic constraint equations.

\(\bar{b}_{rs}\)

Terms not linear in \(\bar{u}_s\) or \(\bar{u}_r\) in the nonholonomic constraint equations.

\(\mathbf{A}_n\)

Linear coefficient matrix for \(\bar{u}_s\) in the equation for \(\bar{u}_r=\mathbf{A}_n\bar{u}_s + \bar{b}_n\).

\(\bar{b}_n\)

Terms not linear in \(\bar{u}_s\) in the equation for \(\bar{u}_r=\mathbf{A}_n\bar{u}_s + \bar{b}_n\).

Mass Distribution

\(\bar{I}^{B/O}_a\), I_B_O_a

Inertia vector of rigid body \(B\) or set of particles \(B\) with respect to point \(O\) about the unit vector \(\hat{n}_a\).

\(\breve{Q}\), Q

Dyadics are indicated with a breve accent.

\(\breve{I}^{B/O}\), I_B_O

Inertia dyadic of body \(B\) or set of particles \(B\) with respect to point \(O\).

\(\breve{I}^{B/B_o}\), I_B_Bo

Central inertia dyadic of body \(B\) or set of particles \(B\) with respect to mass center \(B_o\).

\({}^A \bar{H}^{B/O}\), A_H_B_O

Angular momentum of rigid body \(B\) with respect to point \(O\) in reference frame \(A\).

Force, Moment, and Torque

\(\bar{R}^{S}\), R_S

Resultant of the vector set \(S\).

\(\bar{R}^{S/Q}\), R_S_Q

Resultant of the vector set \(S\) bound to a line of action through point \(Q\).

\(\bar{M}^{S/P}\), M_S_P

Moment of the resultant of the vector set \(S\) about point \(P\).

\(\bar{T}^{B}\), T_B

Torque of couple acting on reference frame or body \(B\).

Generalized Forces

\({}^A\bar{v}_r^P\), v_P_r

rth holonomic partial velocity of point \(P\) in reference frame \(A\) associated with the generalized speed \(u_r\).

\({}^A\bar{\omega}_r^B\), w_B_r

rth holonomic partial angular velocity of reference frame \(B\) in reference frame \(A\) associated with the generalized speed \(u_r\).

\({}^A\tilde{v}_r^P\), v_P_r

rth nonholonomic partial velocity of point \(P\) in reference frame \(A\) associated with the generalized speed \(u_r\).

\({}^A\tilde{\omega}_r^B\), w_B_r

rth nonholonomic partial angular velocity of reference frame \(B\) in reference frame \(A\) associated with the generalized speed \(u_r\).

\(F_r\), F1

rth holonomic generalized active force associated with the generalized speed \(u_r\).

\(\tilde{F}_r\), F1

rth nonholonomic generalized active force associated with the generalized speed \(u_r\).

\(\bar{F}_r\), Fr

Column vector of all generalized active forces (holonomic or nonholonomic).

\(F^*_r\), F1s

rth holonomic generalized inertia force associated with the generalized speed \(u_r\).

\(\tilde{F}^*_r\), F1s

rth nonholonomic generalized inertia force associated with the generalized speed \(u_r\).

\(\bar{F}^*_r\), Frs

Column vector of all generalized active forces (holonomic or nonholonomic).

Unconstrained Equations of Motion

\(\bar{f}_k(\dot{\bar{q}}, \bar{u}, \bar{q}, t) = 0\)

Kinematical differential equations.

\(\mathbf{M}_k\)

Linear coefficient matrix for \(\dot{\bar{q}}\) in the kinematical differential equations.

\(\bar{g}_k\)

Terms not linear in \(\dot{\bar{q}}\) in the kinematical differential equations.

\(\bar{f}_d(\dot{\bar{u}}, \bar{u}, \bar{q}, t) = 0\)

Dynamical differential equations.

\(\mathbf{M}_d\)

Linear coefficient matrix for \(\dot{\bar{u}}\) in the dynamical differential equations, often called the “mass matrix”.

\(\bar{g}_d\)

Terms not linear in \(\dot{\bar{u}}\) in the dynamical differential equations.

\(\bar{x}=[\bar{q} \quad \bar{u}]^T\)

State of a multibody system.

\(\mathbf{M}_m\)

Linear coefficient matrix for \(\dot{\bar{x}}\) in the equations of motion.

\(\bar{g}_m\)

Terms not linear in \(\dot{\bar{x}}\) in the equations of motion.

Equations of Motion with Nonholonomic Constraints

\(\bar{f}_n(\bar{u}_s, \bar{u}_r, \bar{q}, t) = 0\)

Nonholonomic constraint equations.

\(\mathbf{M}_n=\mathbf{A}_r\)

Linear coefficient matrix for \(\bar{u}_r\) in the nonholonomic constraint equations.

\(\bar{g}_n=\mathbf{A}_s\bar{u}_s+\bar{b}_{rs}\)

Terms not linear in \(\bar{u}_r\) in the nonholonomic constraint equations.

\(\dot{\bar{f}}_n(\dot{\bar{u}}_s, \dot{\bar{u}}_r, \bar{u}_s, \bar{u}_r, \bar{q}, t) = 0\)

Time derivative of the nonholonomic constraint equations.

\(\mathbf{M}_{nd}\)

Linear coefficient matrix for \(\dot{\bar{u}}_r\) in the time differentiated nonholonomic constraint equations.

\(\bar{g}_{nd}\)

Terms not linear in \(\dot{\bar{u}}_r\) in the time differentiated nonholonomic constraint equations.

Equations of Motion with Holonomic Constraints

\(\dot{\bar{f}}_h(\bar{u}, \bar{u}_r, \bar{q}, \bar{q}_r, t) = 0\)

Time derivative of the holonomic constraints.

\(\mathbf{M}_{hd}\)

Linear coefficient matrix for \(\bar{u}_r\) in the time differentiated holonomic constraints.

\(\bar{g}_{hd}\)

Terms not inear in \(\bar{u}_r\) in the time differentiated holonomic constraints.

Energy and Power

\(P\), P

Power

\(W\), W

Work

\(K,K_Q,K_B\), K,KQ,KB

Kinetic energy, kinetic energy of particle \(Q\), kinetic energy of body \(B\)

\(V\), V

Potential energy

\(E\), E

Total energy, i.e. \(E=K+V\)

Lagrange’s method

\(L\), L

Lagrangian the difference between the kinetic energy and the potential energy: \(L = K - V\)

\(a_r\)

Multiplicative term associated with generalized speed \(q_r\) in a constraint equation

\(\lambda\)

Lagrange multiplier, variable encoding the (scaled) magnitude of a constraint force

\(\bar{f}_{hn}\)

Combined time-derivatives of holonomic constraints and non-holonomic constraints

\(\boldsymbol{M}_{hn}\), M_hn

Jacobian of constraint equations with respect to \(\dot{\bar{q}}\)

\(\bar{p}\), p

Generalized momenta ssociated with the \(\bar{q}\) generalized coordinates

\(\bar{g}_d\)

Dynamic bias, the sum of terms not linear in $ddot{bar{q}}$ in the inertial forces and the generalized conservative forces considered in the Lagrangian.

Figure Sign Conventions

Vectors

In figure Fig. 56 various vectors are shown. Vectors are always drawn with a single arrow to indicate the positive sense of the vector. In a) the vector acting on body \(A\) is \(-F\hat{n}_x\) and the vector acting on body \(B\) is \(F\hat{n}_x\). The variable \(F\) indicated beside the arrow means that a positive value of \(F\) has the corresponding sense as the vector arrow head. The sense changes for both vectors in b) and for one vector in c). In d), a negative \(F\) is indicated. This makes d) equivalent to a). The negative sense for that vector is shown when \(-F\) is beside it.

_images/notation-vector-sign-convention.svg

Fig. 56 Various ways to draw vector arrows, where the arrow head indicates the positive sense of the vector if the variable has no sign and negative sense if the variable has a negative sign.

Dimensions

When we draw dimensions (linear or angular) the arrow heads (or absence of arrow heads) do not indicate anything about the “sense” of the dimension. A dimension can take on positive and negative values and you have to rely on the sense of reference frame unit vectors to know what configuration occurs if a positive or negative value is given for a dimension.

Fig. 57 shows three ways to indicate leader arrows on the dimension for the distance between points \(P\) and \(Q\) parallel to \(\hat{n}_x\). A positive value of \(q\) indicates that point \(Q\) is to the right of point \(P\) and that \(\bar{r}^{Q/P} \cdot \hat{n}_x = q\) and \(\bar{r}^{P/Q} \cdot \hat{n}_x = -q\).

_images/notation-linear-dimension-sign-convention.svg

Fig. 57 Three options for adding arrows to linear dimensions which all have the same meaning. Follow the right hand rule to know the positive sense of an orientation.

In the first row (a, b, c) of Fig. 58 there are three ways to indicate leader arrows on the angular dimension \(q\) for a positive right handed orientation of \(A\) with respect to \(N\). A positive value of \(q\) gives a positive right handed orientation in a), b), and c). This corresponds to the SymPy Mechanics command A.orient_axis(N, q, N.z). In the second row (d, e, f), three ways are shown to indicate leader arrows on the angular dimension \(q\) for a negative right handed orientation of \(A\) with respect to \(N\). A positive value of \(q\) causes a negative right handed orientation. This row corresponds to the SymPy Mechanics commands A.orient_axis(N, -q, N.z) or A.orient_axis(N, q, -N.z). In g) a negative sign is indicated on \(q\). It is sometimes convenient to draw the rotation in negative right handed rotation and by labeling the value \(-q\). This means that g) is equivalent to a). We try to do this sparingly.

_images/notation-rotation-dimension-sign-convention.svg

Fig. 58 Options for adding arrows to angular dimensions for positive (first row) and negative (second row) orientations.