When given arbitrary point on a unit sphere $a = (\theta, \phi)$ and an arbitrary axis $\vec{A}=(\Theta, \Phi)$, can we have an algebraic expression for $a_1=(\theta_1, \phi_1)$ which is a rotation of $a$ around $\vec{A}$ to the angle $\beta$?
Points and axes are not on the coordinate planes, values are not trivial: $\theta \neq 0$, $\phi \neq 0$, $\Theta \neq 0$, $\Phi \neq 0$, $\beta \neq 0$.
Can this be done without transformation through Cartesian? Otherwise the analytic form becomes too complicated. If there is a particular case for $\Phi \rightarrow 0$ ($\sin{\Phi} \approx \Phi$, but not for the other values) it is also fine.
Thanks
Best Answer
I think what you might be looking for is Rodrigues' Rotation Formula. Using spherical coordinates:
Your arbitrary point on the unit sphere is: $$ \mathbf{a} = (\sin\theta\cos\phi, \sin\theta\sin\phi, \cos\theta) $$
Your arbitrary axis is represented by the unit vector: $$ \hat{\mathbf{k}} = (\sin\Theta\cos\Phi, \sin\Theta\sin\Phi, \cos\Theta) $$
Then the result of rotating $\mathbf{a}$ around $\hat{\mathbf{k}}$ by the angle $\beta$, using the right-hand-rule, is given by
Of course, now $\mathbf{b}$'s Cartesian coordinates need to be converted to spherical: $$ \tan\phi' = \frac{b_y}{b_x} \qquad\mbox{and}\qquad \tan\theta' = \frac{\sqrt{b_x^2 + b_y^2}}{b_z} $$ so that $$ \mathbf{b} = (\sin\theta'\cos\phi', \sin\theta'\sin\phi', \cos\theta') $$
The same article on Rodrigues' Formula also discusses a matrix representation of the rotation operation in question.