An underdetermined system derived for rotated coordinate system

65 Views Asked by At

Consider two orthogonal coordinate systems $x_A y_A z_A$ and $x_B y_B z_B$ sharing the same origin. Denote by $\boldsymbol i_A$, $\boldsymbol j_A$, $\boldsymbol k_A$ the set of basis vectors, and assume that $\boldsymbol k_B$ is given in $x_A y_A z_A$. Using directional cosines expansion, I derive the system $$ \begin{cases} \boldsymbol i_B = c_{xx} \boldsymbol i_A + c_{xy} \boldsymbol j_A + c_{xz} \boldsymbol k_A \\ \boldsymbol j_B = c_{yx} \boldsymbol i_A + c_{yy} \boldsymbol j_A + c_{yz} \boldsymbol k_A \\ c_{zx} c_{xx} + c_{zy} c_{xy} + c_{zz} c_{xz} = 0 \\ c_{zx} c_{yx} + c_{zy} c_{yy} + c_{zz} c_{yz} = 0 \\ c_{xx}^2 + c_{xy}^2 + c_{xz}^2 = 1 \\ c_{yx}^2 + c_{yy}^2 + c_{yz}^2 = 1 \end{cases} $$ which is underdetermined, so I need 2 additional constraints.

It is given that each line $AB$ in $x_A y_A z_A$ that is parallel to the $z_A$ axis, is rotated to a line CD in $x_B y_B z_B$, which is parallel to the $z_B$ axis. Moreover, AB and CD intersect.

How to express these constraints in terms of directional cosines? Are there constraints missing from the derived system?

Thank you for your attention and time.

Edit 1

I am not sure, but I think that because of orthogonality of $z_B$ to $x_B y_B$ and $z_A$ to $x_A y_A$, the angle between $x_A$ and $x_B$ is equal to the angle between $y_A$ and $y_B$, so that $c_{xx} = c_{yy}$. This is wrong!

Edit 2 We also need to add $$ \boldsymbol i_B \cdot \boldsymbol j_B = c_{xx} c_{yx} + c_{xy} c_{yy} + c_{xz} c_{yz} = 0 $$ to the system. So, now we have 7 equations for 8 unknowns: $$ \begin{cases} \boldsymbol i_B = c_{xx} \boldsymbol i_A + c_{xy} \boldsymbol j_A + c_{xz} \boldsymbol k_A \\ \boldsymbol j_B = c_{yx} \boldsymbol i_A + c_{yy} \boldsymbol j_A + c_{yz} \boldsymbol k_A \\ c_{zx} c_{xx} + c_{zy} c_{xy} + c_{zz} c_{xz} = 0 \\ c_{zx} c_{yx} + c_{zy} c_{yy} + c_{zz} c_{yz} = 0 \\ c_{xx} c_{yx} + c_{xy} c_{yy} + c_{xz} c_{yz} = 0 \\ c_{xx}^2 + c_{xy}^2 + c_{xz}^2 = 1 \\ c_{yx}^2 + c_{yy}^2 + c_{yz}^2 = 1 \end{cases} $$

1

There are 1 best solutions below

16
On BEST ANSWER

Assuming that your two coordinate systems are right-handed, there exists a rotation $r_{L,\theta}$ with axis $L$ through the origin, and angle $\theta$, such that \begin{align} \mathbf i_B &= r_{L,\theta}(\mathbf i_A)\\ \mathbf j_B &= r_{L,\theta}(\mathbf j_A)\\ \mathbf k_B &= r_{L,\theta}(\mathbf k_A) \end{align} Expressing the rotation for an arbitrary point is a little annoying in general, but we here have the additional constraint that if you rotate a line parallel to $\mathbf k_A$, its image by $r_{L,\theta}$ will always intersect the original line. I don't feel like doing it right now, but you can show that this condition implies that $L$ must be orthogonal to $\mathbf k_A$.

In other words, consider $\mathbf u$ a direction vector of $L$, and let $\mathbf v$ such that $\mathbf u,\mathbf v,\mathbf k_A$ is a (right-handed) orthonormal basis. There exists $\varphi\in\mathbb R$ such that \begin{align} \mathbf u &~=~& \cos(\varphi) \mathbf i_A& +\sin(\varphi)\mathbf j_A\\ \mathbf v &~=~& -\sin(\varphi) \mathbf i_A& +\cos(\varphi)\mathbf j_A\\ \mathbf i_A &~=~& \cos(\varphi)\mathbf u& -\sin(\varphi)\mathbf v\\ \mathbf j_A &~=~& \sin(\varphi)\mathbf u& +\cos(\varphi)\mathbf v \end{align}

Now you get \begin{cases} \mathbf i_B &=& r_{L,\theta}(\mathbf i_A) &=& \cos(\varphi)\mathbf u-\sin(\varphi)\Big( \cos(\theta)\mathbf v+\sin(\theta)\mathbf k_A \Big)\\ \mathbf j_B &=& r_{L,\theta}(\mathbf j_A) &=& \sin(\varphi)\mathbf u+\cos(\varphi)\Big( \cos(\theta)\mathbf v+\sin(\theta)\mathbf k_A \Big)\\ \mathbf k_B &=& r_{L,\theta}(\mathbf k_A) &=& -\sin(\theta)\mathbf v+\cos(\theta)\mathbf k_A \end{cases} If you plug in the expressions of $\mathbf u,\mathbf v$ in the equation above, you'll obtain an expression of $\mathbf i_B,\mathbf j_B,\mathbf k_B$ in terms of $\mathbf i_A,\mathbf j_A,\mathbf k_A,\varphi$ and $\theta$. Basically if you can determine $\varphi$ and $\theta$, you'll get $\mathbf i_B$ and $\mathbf j_B$. In particular $$ \mathbf k_B = \sin(\theta)\sin(\varphi)\mathbf i_A -\sin(\theta)\cos(\varphi)\mathbf j_A +\cos(\theta)\mathbf k_A =c_{zx}\mathbf i_A+c_{zy}\mathbf j_A+c_{zz}\mathbf k_A $$ so you can fairly easily obtain $\varphi$ and $\theta$ in the general case.

Note that your problem statement ensures that we are in the general case, because the thing on the lines parallel to $\mathbf k_A$ guarantees that $\sin(\theta)\neq 0$, meaning that you can always find $\varphi$, from which you can always deduce $\theta$, and everything else from there. I was too lazy to prove the thing on lines parallel to $\mathbf k_A$ then, and I'm still too lazy now. If you really need it and can't figure it out, ping me sometimes next week and I'll have a look.


EDIT: Assuming I didn't mess up somewhere above, you also get $$ c_{xx}=\cos(\varphi)^2+\sin(\varphi)^2\cos(\theta) $$ and $$ c_{yy} = \sin(\varphi)^2+\cos(\varphi)^2\cos(\theta) $$ so in general $c_{xx}\neq c_{yy}$.