avr 13, 2022

An expression of the vector cross product in non-orthogonal basis systems

I came accross this problem in an old french textbook: Traité de mathématiques spéciales, Georges Cagnac, Joanny Commeau, Edmond Ramis, 1967, Masson.

I got stuck on it, finding one reference to it online in the form of a question at https://math.stackexchange.com. I ended up finding a solution that I will now detail.

We are in R3\mathbb{R}^3. Suppose you are given a basis (u⃗,v⃗,t⃗)(\vec{u},\vec{v},\vec{t}). Let us note α=(v⃗,t⃗);   β=(t⃗,u⃗);   γ=(u⃗,v⃗)\alpha=(\vec{v},\vec{t});~~~\beta=(\vec{t},\vec{u});~~~\gamma=(\vec{u},\vec{v}) the corresponding angles.

In order to simplify let me suppose u⃗\vec{u}, v⃗\vec{v}, and t⃗\vec{t} are unit vectors. The solution will be complicated enough. It is always possible to swap the vectors so as to get a right-handed basis. Thus, without lost of generality (wlog) the considered basis is supposed right-handed.

Then let t′⃗\vec{t'} be a unit vector of same direction and sense than u⃗×v⃗\vec{u}\times\vec{v}, and let v′⃗\vec{v'} be a unit vector in the same plane than u⃗\vec{u} and v⃗\vec{v} such that u⃗\vec{u}, v′⃗\vec{v'}, t′⃗\vec{t'} is orthonormal. Note that as t′⃗\vec{t'} is colinear to u⃗×v⃗\vec{u}\times\vec{v} it is orthogonal to the plane containing u⃗\vec{u} and v⃗\vec{v} so that v′⃗=t′⃗×u⃗\vec{v'}=\vec{t'}\times\vec{u} exists. Finally let δ\delta be the angle (t⃗,t′⃗)(\vec{t},\vec{t'}).

Now that notations are set let me express t⃗\vec{t} in the basis u⃗\vec{u}, v′⃗\vec{v'}, t′⃗\vec{t'}. As it is orthonormal we can use the scalar product: t⃗⋅u⃗=cos⁡β;   t⃗⋅t′⃗=cos⁡δ\vec{t}\cdot\vec{u}=\cos\beta;~~~\vec{t}\cdot\vec{t'}=\cos\delta Finding t⃗⋅v′⃗\vec{t}\cdot\vec{v'} is a bit more difficult: we need to express v′v'. As it is in the same plane than u⃗\vec{u} and v⃗\vec{v}, as it is orthogonal to u⃗\vec{u}, and as α=(u⃗,v⃗)\alpha=(\vec{u},\vec{v}), we get v=cos⁡γu⃗+sin⁡γv′⃗v=\cos\gamma\vec{u}+\sin\gamma\vec{v'} But sin⁡γ≠0\sin\gamma\neq 0 as u⃗\vec{u} and v⃗\vec{v} are not colinear. Thus, v′⃗=1sin⁡γv⃗−cos⁡γsin⁡γu⃗\vec{v'}=\frac{1}{\sin\gamma}\vec{v}-\frac{\cos\gamma}{\sin\gamma}\vec{u} giving t⃗⋅v′⃗=−cos⁡γcos⁡βsin⁡γ+cos⁡αsin⁡γ\vec{t}\cdot\vec{v'}=-\frac{\cos\gamma\cos\beta}{\sin\gamma}+\frac{\cos\alpha}{\sin\gamma} and t⃗=cos⁡βi⃗+(cos⁡α−cos⁡γcos⁡βsin⁡γ)v′⃗+cos⁡δt′⃗    (1)\vec{t}=\cos\beta\vec{i}+\left(\frac{\cos\alpha-\cos\gamma\cos\beta}{\sin\gamma}\right)\vec{v'}+\cos\delta\vec{t'}~~~~(1) This equality between vectors means equality of their squared norm: 1=cos⁡2β+(cos⁡α−cos⁡γcos⁡βsin⁡γ)2+cos⁡2δ1=\cos^2\beta+\left(\frac{\cos\alpha-\cos\gamma\cos\beta}{\sin\gamma}\right)^2+\cos^2\delta I will spare the details but it gives cos⁡δ=1−2cos⁡αcos⁡βcos⁡γ−cos⁡2α−cos⁡2β−cos⁡2γsin⁡γ\cos\delta=\frac{\sqrt{1-2\cos\alpha\cos\beta\cos\gamma-\cos^2\alpha-\cos^2\beta-\cos^2\gamma}}{\sin\gamma} Note that the choice of orientation of the two basis ensure that cos⁡δ≥0\cos\delta\ge 0 making sure we chose the right squared root.

By definition of t′⃗\vec{t'} we have u⃗×v⃗=sin⁡γt′⃗\vec{u}\times\vec{v}=\sin\gamma\vec{t'} Using (1)(1) and after some more involved calculus we get u⃗×v⃗=(cos⁡αcos⁡γ−cos⁡β)u⃗+(cos⁡γcos⁡β−cos⁡α)v⃗+sin⁡2γt⃗1−2cos⁡αcos⁡βcos⁡γ−cos⁡2α−cos⁡2β−cos⁡2γ\vec{u}\times\vec{v}=\frac{(\cos\alpha\cos\gamma-\cos\beta)\vec{u}+(\cos\gamma\cos\beta-\cos\alpha)\vec{v}+\sin^2\gamma\vec{t}}{\sqrt{1-2\cos\alpha\cos\beta\cos\gamma-\cos^2\alpha-\cos^2\beta-\cos^2\gamma}} Using symmetry arguments this easily gives v⃗×t⃗\vec{v}\times\vec{t} and t⃗×u⃗\vec{t}\times\vec{u}. Note also that when the original basis is orthonormal, all cosines are equal to 00 and the sine is equal to 11: we find the usual u⃗×v⃗=t⃗\vec{u}\times\vec{v}=\vec{t}.