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: tu=cosβ;   tt=cosδ\vec{t}\cdot\vec{u}=\cos\beta;~~~\vec{t}\cdot\vec{t'}=\cos\delta Finding tv\vec{t}\cdot\vec{v'} is a bit more difficult: we need to express vv'. 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γvv=\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γvcosγsinγu\vec{v'}=\frac{1}{\sin\gamma}\vec{v}-\frac{\cos\gamma}{\sin\gamma}\vec{u} giving tv=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=cos2β+(cosαcosγcosβsinγ)2+cos2δ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δ=12cosαcosβcosγcos2αcos2βcos2γ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+sin2γt12cosαcosβcosγcos2αcos2βcos2γ\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}.