pub fn quat_conj<const D: usize>(q: Tensor<D>) -> Tensor<D>Expand description
Quaternion conjugate q* = (w, −x, −y, −z) (shape [..., 4]).
For a unit quaternion q* = q⁻¹, and the corresponding rotation matrix
satisfies Lₚ⋆ = Lₚᵀ = Lₚ⁻¹. Hence rotating by the inverse cumulative
rotation (B̄ = Pᵀ B) is rotate_state_rank_blocks(B, conj(Q)).