For $2$ vectors $\, \vec a,\vec b$, both originate at $[0,0,0]$:

If vector $\vec a$ rotates about vector $\vec b$ when observed from a coordinate system fixed to vector $\vec b$,
does vector $\vec b$ rotate the same about vector $\vec a$, when observed from a coordinate system fixed to vector $\vec a$?

  • $\begingroup$ You mean that the rotation axes is perpendicular to a and b? $\endgroup$
    – Eli
    Jul 23 '19 at 12:49

enter image description here

If the rotation axes is perpendicular to vector $\vec{a}$ and vector $\vec{b}$ and the rotation point is the intersection of vector$\vec{a}$ and vector $\vec{b}$, then you can use the

"Rodrigues" rotation matrix $R$



$\tilde{k}=\tilde{\vec{k}}=\left[ \begin {array}{ccc} 0&-k_{{3}}&k_{{2}}\\ k_{ {3}}&0&-k_{{1}}\\ -k_{{2}}&k_{{1}}&0\end {array} \right] $

$\vec{k}$ is the rotation axes that perpendicular to vector $\vec{a}$ and $\vec{b}$

$\vec{k}=\frac{\vec{a}\times \vec{b}}{||\vec{a}\times \vec{b}||}$

$\theta$ is the angel of rotation about this axes.

so to transformation of the vector $\vec{a}$ to the frame where the z-axes is the vector $\vec{k}$ is:


for $\theta=0$ is $R=I_3$, so if you want to rotate the vector $\vec{a}$ to vector $\vec{b}$ you can calculate the rotation angle $\theta_{ab}$ from this equation:

$|\vec{a}\times \vec{b}|=|\vec{a}|\,|\vec{b}|\sin(\theta_{ab})$

if you want to rotate vector $\vec{b}$ to vector $\vec{a}$ use $-\theta_{ab}$

in case of 2D the transformation matrix $R$ is:

$$R=\left[ \begin {array}{ccc} \cos \left( \theta \right) &-\sin \left( \theta \right) &0\\ \sin \left( \theta \right) &\cos \left( \theta \right) &0\\ 0&0&1\end {array} \right] $$

  • $\begingroup$ I prefer the notation $$[\vec{k}\times] = \begin{bmatrix} 0 & -k_3 & k_2 \\ k_3 & 0 & -k_1 \\ -k_2 & k_1 & 0 \end{bmatrix}$$ or sometimes without the brackets $\vec{k} \times $ for the cross product matrix operator. The rotation matrix would then be $$ \mathrm{R} = 1 + (\sin \theta)\, \vec{k} \times + (1-\cos \theta)\, \vec{k} \times \vec{k}\times$$ $\endgroup$ Jul 23 '19 at 16:12
  • $\begingroup$ O.k but this is just notation $\endgroup$
    – Eli
    Jul 23 '19 at 16:23
  • $\begingroup$ But the question says a rotates about b. Not that they both rotate about a common axis. $\endgroup$ Jul 23 '19 at 23:09
  • $\begingroup$ This was for me not clear? $\endgroup$
    – Eli
    Jul 24 '19 at 6:16
  • $\begingroup$ @AaronStevens I think you can use the Rotation Matrix with the rotation axes vector $\vec b$ $\endgroup$
    – Eli
    Jul 24 '19 at 6:59

I'm assuming by "rotate about" you mean if you took one vector and extended a line in its direction that the end of the other vector would trace out a circle perpendicular and centered about that line.

So, without loss of generality let's assume in our $\mathbf b$-fixed frame that $\mathbf b$ points along the z-direction. Then vector $\mathbf a$ must be of the form $$\mathbf a=[r\cos t, r\sin t, z_a]^T$$ where I am taking the angular frequency of the rotation to just be $1$ per unit time.

So, what we want to do now is apply a coordinate transformation to our vectors so that $\mathbf a$ is fixed. This can be done by applying a time-dependent transformation that puts $\mathbf a$ onto the z-axis. We can do this by using three simpler transformations: one that rotates opposite of $\mathbf a$, this fixing both vectors, one that rotates the stationary $\mathbf a$ onto the z-axis, and then one that undoes the first transformation to take us out of the rotating frame back to our fixed frame.

For the first transformation, we just want to "cancel" the rotation of $\mathbf a$. Therefore, we just apply a rotation about the z-axis: $$ T_1=\begin{bmatrix} \cos t & \sin t & 0 \\ -\sin t & \cos t & 0 \\ 0 & 0 & 1 \\ \end{bmatrix} $$

We can see that this fixes $\mathbf a$ in the x-z plane in the rotating frame because $$T_1\mathbf a=[r,0,z_a]^T$$

Now we can apply a rotation about the y-axis over an angle equal to the angle between the two vectors $\theta=\tan^{-1}(r/z_a)$ $$ T_2=\begin{bmatrix} \cos\theta & 0 & -\sin\theta \\ 0 & 1 & 0 \\ \sin\theta & 0 & \cos\theta \\ \end{bmatrix} $$

We can see that this puts $\mathbf a$ onto the z-axis because $$T_2T_1\mathbf a=[0,0,a]^T$$ where $a=\sqrt{r^2+z_a^2}$ is the length of vector $\mathbf a$.

And finally we want to move out of our rotating frame. This is just the inverse of $T_1$

$$ T_3=\begin{bmatrix} \cos t & -\sin t & 0 \\ \sin t & \cos t & 0 \\ 0 & 0 & 1 \\ \end{bmatrix} $$

This leaves $\mathbf a$ unchanged because $$T_3T_2T_1\mathbf a=[0,0,a]^T$$

Ok, so now we are ready to see what this does to vector $\mathbf b$ that started out as $[0,0,b]^T$. It might help to show each outcome separately $$T_1\mathbf b=[0,0,b]^T$$ $$T_2T_1\mathbf b=\left[-\frac {br}a,0,\frac {bz_a}{a}\right]^T$$ $$T_3T_2T_1\mathbf b=\left[-\frac {br}a\cos t,-\frac{br}a\sin t,\frac {bz_a}{a}\right]^T$$

And so you can see that $\mathbf b$ now rotates about $\mathbf a$ with a radius of $br/a$. So what you were interested in is true.

Note that I haven't explicitly done a lot of the math. I leave this for you to verify.

  • $\begingroup$ So how can you explain the contradiction in my other question: $\endgroup$
    – Guy Ab
    Jul 23 '19 at 7:04
  • $\begingroup$ physics.stackexchange.com/questions/493028/… $\endgroup$
    – Guy Ab
    Jul 23 '19 at 7:04
  • $\begingroup$ @GuyAb Comments should be for this question/answer. Not to ask me to answer a different question you posted. If this answer is useful please up vote or even accept it. If not, tell me what I can do to improve it for you. $\endgroup$ Jul 23 '19 at 13:16
  • $\begingroup$ @GuyAb Did I misunderstand your question? The accepted answer doesn't prove what you asked to prove. $\endgroup$ Jul 24 '19 at 11:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.