Physlib

Physlib.ClassicalMechanics.RigidBody.AngularVelocity

The angular velocity of a rigid body

For a rigid body in motion the orientation `R(t) = orientation t` is a time-dependent rotation. Its instantaneous rate of change is encoded by the *angular velocity tensor* `Ω(t) = Ṙ(t) R(t)ᵀ`, the antisymmetric tensor `Ω` appearing in the Landau–Lifshitz decomposition `v = V + Ω × r` of the velocity of a point of the body.

A basic consistency check is that `Ω` is skew-symmetric, `Ωᵀ = -Ω` (equivalently `Ω ∈ 𝔰𝔬(d)`); this follows by differentiating the orthogonality identity `R Rᵀ = 1`. The general product and transpose rules for time derivatives of matrices used for this live in `Physlib.SpaceAndTime.Time.MatrixDerivatives`.

In three dimensions the skew-symmetric tensor `Ω` is dual to the *angular velocity vector* `ω(t) = Ωᵛ` via the hat map (`Physlib.Mathematics.CrossProductMatrix`), with `[ω]ₓ = Ω`; `ω` is the angular velocity proper, appearing in the decomposition `v = V + ω × r` as an honest cross product.

References

22 declarations

definition

Angular velocity tensor Ω(t)=R˙(t)R(t)\Omega(t) = \dot{R}(t) R(t)^\top

For a rigid body motion MM in dd dimensions and a time tt, the **angular velocity tensor** Ω(t)Rd×d\Omega(t) \in \mathbb{R}^{d \times d} is defined as the product of the time derivative of the body's orientation matrix R(t)R(t) and its transpose: Ω(t)=R˙(t)R(t)\Omega(t) = \dot{R}(t) R(t)^\top where R(t)R(t) is the rotation matrix representing the orientation of the rigid body at time tt. This skew-symmetric tensor characterizes the instantaneous rate of change of the orientation and appears in the Landau–Lifshitz decomposition of the velocity of a point in the body: v=V+Ωrv = V + \Omega r.

theorem

Ω(t)=R˙(t)R(t)\Omega(t) = \dot{R}(t) R(t)^\top

For a rigid body motion MM in dd dimensions and a time tt, the angular velocity tensor Ω(t)\Omega(t) is equal to the matrix product of the time derivative of the orientation matrix R(t)R(t) and its transpose: Ω(t)=R˙(t)R(t)\Omega(t) = \dot{R}(t) R(t)^\top where R(t)R(t) denotes the orientation of the rigid body at time tt and R˙(t)\dot{R}(t) is its derivative with respect to time.

theorem

The angular velocity tensor is skew-symmetric: Ω=Ω\Omega^\top = -\Omega

Consider a rigid body motion MM in dd dimensions. Let R(t)R(t) be the orientation matrix of the body at time tt. If R(t)R(t) is differentiable at time tt, then the angular velocity tensor Ω(t)=R˙(t)R(t)\Omega(t) = \dot{R}(t)R(t)^\top is skew-symmetric, satisfying: Ω(t)=Ω(t)\Omega(t)^\top = -\Omega(t) Equivalently, the tensor Ω(t)\Omega(t) lies in the Lie algebra so(d)\mathfrak{so}(d).

theorem

Constant Orientation Implies Ω=0\Omega = 0

For a rigid body motion MM in dd dimensions, if the orientation R(t)R(t) of the body is constant for all time tt, such that R(t)=RR(t) = R for some fixed rotation matrix RSO(d)R \in \text{SO}(d), then the angular velocity tensor Ω(t)\Omega(t) is zero for all tt.

definition

Angular velocity vector ω(t)=Ω(t)\omega(t) = \Omega(t)^\vee

For a rigid body motion MM in three-dimensional space and a time tt, the **angular velocity vector** ω(t)R3\omega(t) \in \mathbb{R}^3 is defined as the vector dual to the angular velocity tensor Ω(t)\Omega(t) via the vee map: ω(t)=(Ω(t))\omega(t) = (\Omega(t))^\vee where Ω(t)=R˙(t)R(t)\Omega(t) = \dot{R}(t)R(t)^\top is the angular velocity tensor and R(t)R(t) is the orientation matrix of the body. This vector ω(t)\omega(t) satisfies the property that for any vector rR3r \in \mathbb{R}^3, the product Ω(t)r\Omega(t)r is equal to the cross product ω(t)×r\omega(t) \times r, appearing in the Landau–Lifshitz decomposition of the velocity of a point in the body.

theorem

Relation between Angular Velocity Vector and Tensor: ω(t)=Ω(t)\omega(t) = \Omega(t)^\vee

For a rigid body motion MM in three-dimensional space and a time tt, the angular velocity vector ω(t)\omega(t) is equal to the result of applying the vee map ()(\cdot)^\vee to the angular velocity tensor Ω(t)\Omega(t): ω(t)=(Ω(t))\omega(t) = (\Omega(t))^\vee where the angular velocity tensor is defined as Ω(t)=R˙(t)R(t)\Omega(t) = \dot{R}(t)R(t)^\top and the vee map `crossProductVee` is the left inverse of the hat map (the cross-product matrix map).

theorem

[ω(t)]×=Ω(t)[\omega(t)]_{\times} = \Omega(t)

For a rigid body motion MM in three dimensions, let ω(t)\omega(t) be the angular velocity vector and Ω(t)\Omega(t) be the angular velocity tensor. If the orientation matrix R(t)R(t) of the rigid body is differentiable at time tt, then the cross product matrix (or hat map) of the angular velocity vector is equal to the angular velocity tensor: [ω(t)]×=Ω(t) [\omega(t)]_{\times} = \Omega(t)

theorem

Constant orientation implies ω=0\omega = 0

For a rigid body motion MM in three-dimensional space, if the orientation of the body is constant over time, i.e., there exists a fixed rotation matrix RSO(3)R \in \mathrm{SO}(3) such that the orientation R(t)=RR(t) = R for all tt, then the angular velocity vector ω\omega is zero (ω=0\omega = 0).

theorem

R˙(t)=Ω(t)R(t)\dot{R}(t) = \Omega(t) R(t)

For a rigid body motion MM in dd dimensions, let R(t)R(t) be the orientation matrix (a rotation matrix) at time tt. The time derivative of the orientation matrix, denoted R˙(t)\dot{R}(t), is equal to the product of the angular velocity tensor Ω(t)\Omega(t) and the orientation matrix R(t)R(t): Ω(t)R(t)=R˙(t)\Omega(t) R(t) = \dot{R}(t) This relationship allows the orientation path to be recovered from the angular velocity tensor, given the orthogonality condition R(t)R(t)=IR(t) R(t)^\top = I.

theorem

Landau–Lifshitz Velocity Decomposition v=V+ω×r\mathbf{v} = \mathbf{V} + \boldsymbol{\omega} \times \mathbf{r}

For a rigid body motion MM in three-dimensional space, let vy(t)\mathbf{v}_y(t) be the velocity of a material point yy at time tt. Suppose the orientation R(t)R(t) and the center-of-mass trajectory Rcom(t)\mathbf{R}_{\text{com}}(t) are differentiable. Then the velocity of the point yy is given by the sum of the center-of-mass velocity V(t)\mathbf{V}(t) and the cross product of the angular velocity vector ω(t)\boldsymbol{\omega}(t) with the point's position relative to the center of mass: vy(t)=V(t)+ω(t)×(ry(t)Rcom(t))\mathbf{v}_y(t) = \mathbf{V}(t) + \boldsymbol{\omega}(t) \times (\mathbf{r}_y(t) - \mathbf{R}_{\text{com}}(t)) where ry(t)\mathbf{r}_y(t) is the displacement of the point yy in the inertial frame at time tt. In component form, for each i{1,2,3}i \in \{1, 2, 3\}: (vy(t))i=(V(t))i+(ω(t)×(ry(t)Rcom(t)))i(\mathbf{v}_y(t))_i = (\mathbf{V}(t))_i + \left(\boldsymbol{\omega}(t) \times \left(\mathbf{r}_y(t) - \mathbf{R}_{\text{com}}(t)\right)\right)_i

definition

Body-frame angular velocity tensor Ωbody(t)=R(t)TR˙(t)\Omega_{\text{body}}(t) = R(t)^T \dot{R}(t)

For a rigid body motion MM in dd dimensions and a time tt, the body-frame (co-rotating) angular velocity tensor Ωbody(t)\Omega_{\text{body}}(t) is the d×dd \times d real matrix defined by Ωbody(t)=R(t)TddtR(t)\Omega_{\text{body}}(t) = R(t)^T \frac{d}{dt}R(t) where R(t)R(t) is the orientation matrix of the rigid body at time tt. Unlike the spatial angular velocity tensor, this tensor is expressed with respect to the body's own rotating frame of reference.

theorem

Ωbody(t)=R(t)TR˙(t)\Omega_{\text{body}}(t) = R(t)^T \dot{R}(t)

For a rigid body motion MM in dd dimensions, the body-frame angular velocity tensor Ωbody(t)\Omega_{\text{body}}(t) at time tt is equal to the product of the transpose of the orientation matrix R(t)TR(t)^T and the time derivative of the orientation matrix R˙(t)\dot{R}(t): Ωbody(t)=R(t)TddtR(t)\Omega_{\text{body}}(t) = R(t)^T \frac{d}{dt}R(t)

theorem

R˙=RΩbody\dot{R} = R \Omega_{\text{body}}

For a rigid body motion MM in dd dimensions, let R(t)R(t) be the orientation matrix at time tt, and let Ωbody(t)\Omega_{\text{body}}(t) be the body-frame angular velocity tensor. The time derivative of the orientation matrix, R˙(t)\dot{R}(t), is related to the orientation and the body-frame angular velocity tensor by the equation: R˙(t)=R(t)Ωbody(t)\dot{R}(t) = R(t) \Omega_{\text{body}}(t)

theorem

Relation between spatial and body angular velocity tensors: Ω=RΩbodyR\Omega = R \Omega_{\text{body}} R^\top

For a rigid body motion MM in dd dimensions at time tt, let R(t)R(t) be the orientation matrix of the body. The spatial angular velocity tensor Ω(t)\Omega(t) is equal to the body-frame angular velocity tensor Ωbody(t)\Omega_{\text{body}}(t) rotated into the inertial frame via the conjugation: Ω(t)=R(t)Ωbody(t)R(t)\Omega(t) = R(t) \Omega_{\text{body}}(t) R(t)^\top

theorem

Ωbody=RΩR\Omega_{\text{body}} = R^\top \Omega R

For a rigid body motion in dd dimensions, the body-frame angular velocity tensor Ωbody(t)\Omega_{\text{body}}(t) at time tt is the spatial angular velocity tensor Ω(t)\Omega(t) conjugated into the body frame by the orientation matrix R(t)R(t): Ωbody(t)=R(t)Ω(t)R(t)\Omega_{\text{body}}(t) = R(t)^\top \Omega(t) R(t) where R(t)R(t) is the rotation matrix representing the orientation of the body at time tt.

theorem

The body-frame angular velocity tensor is skew-symmetric: Ωbody(t)T=Ωbody(t)\Omega_{\text{body}}(t)^T = -\Omega_{\text{body}}(t)

Consider a rigid body MM in dd-dimensional space with an orientation matrix R(t)R(t) at time tt. If the orientation R(t)R(t) is differentiable with respect to time at tt, then the body-frame angular velocity tensor Ωbody(t)=R(t)TR˙(t)\Omega_{\text{body}}(t) = R(t)^T \dot{R}(t) is skew-symmetric, meaning: Ωbody(t)T=Ωbody(t)\Omega_{\text{body}}(t)^T = -\Omega_{\text{body}}(t) This property implies that the tensor Ωbody(t)\Omega_{\text{body}}(t) resides in the Lie algebra so(d)\mathfrak{so}(d).

definition

Body-frame angular velocity vector ωbody(t)\omega_{\text{body}}(t)

For a rigid body motion MM in three dimensions and a time tt, the body-frame angular velocity vector ωbody(t)R3\omega_{\text{body}}(t) \in \mathbb{R}^3 is defined as the vector dual to the body-frame angular velocity tensor Ωbody(t)\Omega_{\text{body}}(t) under the vee map: ωbody(t)=(Ωbody(t))\omega_{\text{body}}(t) = (\Omega_{\text{body}}(t))^\vee where Ωbody(t)=R(t)TR˙(t)\Omega_{\text{body}}(t) = R(t)^T \dot{R}(t) is the 3×33 \times 3 skew-symmetric tensor representing the angular velocity in the body's rotating frame of reference, and R(t)R(t) is the orientation matrix of the body at time tt.

theorem

The body-frame angular velocity vector is the vee of the body-frame angular velocity tensor: ωbody(t)=(Ωbody(t))\omega_{\text{body}}(t) = (\Omega_{\text{body}}(t))^\vee

For a rigid body MM in three-dimensional space at time tt, the body-frame angular velocity vector ωbody(t)\omega_{\text{body}}(t) is equal to the result of applying the vee map to the body-frame angular velocity tensor Ωbody(t)\Omega_{\text{body}}(t): ωbody(t)=(Ωbody(t))\omega_{\text{body}}(t) = (\Omega_{\text{body}}(t))^\vee where Ωbody(t)=R(t)TR˙(t)\Omega_{\text{body}}(t) = R(t)^T \dot{R}(t) is the 3×33 \times 3 skew-symmetric matrix representing the angular velocity in the body's rotating frame, and the vee map ()(\cdot)^\vee is the operation that extracts a vector from a 3×33 \times 3 matrix.

theorem

The cross product matrix of the body angular velocity vector equals the body angular velocity tensor: [ωbody]×=Ωbody[\omega_{\text{body}}]_{\times} = \Omega_{\text{body}}

Consider a rigid body MM in three-dimensional space. Let R(t)R(t) denote its orientation at time tt. If R(t)R(t) is differentiable at time tt, then the cross product matrix (also known as the hat map) of the body-frame angular velocity vector ωbody(t)\omega_{\text{body}}(t) is equal to the body-frame angular velocity tensor Ωbody(t)\Omega_{\text{body}}(t): [ωbody(t)]×=Ωbody(t) [\omega_{\text{body}}(t)]_{\times} = \Omega_{\text{body}}(t) where Ωbody(t)=R(t)TR˙(t)\Omega_{\text{body}}(t) = R(t)^T \dot{R}(t).

theorem

Constant orientation implies Ωbody=0\Omega_{\text{body}} = 0

For a rigid body motion MM in dd dimensions, if the orientation R(t)R(t) is constant in time (i.e., R(t)=RR(t) = R for some fixed special orthogonal matrix RR and all times tt), then the body-frame angular velocity tensor Ωbody\Omega_{\text{body}} is the zero matrix.

theorem

Constant orientation implies ωbody=0\omega_{\text{body}} = 0

For a rigid body motion MM in three dimensions, if the orientation R(t)R(t) is constant in time (i.e., there exists a fixed rotation matrix RSO(3)R \in SO(3) such that R(t)=RR(t) = R for all tt), then the body-frame angular velocity vector ωbody\omega_{\text{body}} is zero.

theorem

R˙(t)v=R(t)(ωbody(t)×v)\dot{R}(t) \mathbf{v} = R(t) (\boldsymbol{\omega}_{\text{body}}(t) \times \mathbf{v})

For a 3D rigid body motion MM with orientation R(t)R(t) and body-frame angular velocity vector ωbody(t)\boldsymbol{\omega}_{\text{body}}(t), let vR3\mathbf{v} \in \mathbb{R}^3 be a constant vector. If the orientation RR is differentiable at time tt, then the time derivative of the orientation matrix R˙(t)\dot{R}(t) applied to v\mathbf{v} is given by: R˙(t)v=R(t)(ωbody(t)×v)\dot{R}(t) \mathbf{v} = R(t) (\boldsymbol{\omega}_{\text{body}}(t) \times \mathbf{v}) where R˙(t)=ddtR(t)\dot{R}(t) = \frac{d}{dt} R(t) and ×\times denotes the cross product in R3\mathbb{R}^3.