28 votos

Matriz de rotación en coordenadas esféricas

Cuando se tiene un punto arbitrario en una esfera unitaria $a = (\theta, \phi)$ y un eje arbitrario $\vec{A}=(\Theta, \Phi)$, ¿podemos tener una expresión algebraica para $a_1=(\theta_1, \phi_1)$ que sea una rotación de $a$ alrededor de $\vec{A}$ al ángulo $\beta$?

Los puntos y ejes no están en los planos de coordenadas, los valores no son triviales: $\theta \neq 0$, $\phi \neq 0$, $\Theta \neq 0$, $\Phi \neq 0$, $\beta \neq 0$.

¿Se puede hacer esto sin transformación a través de cartesiano? De lo contrario, la forma analítica se vuelve demasiado complicada. Si hay un caso particular para $\Phi \rightarrow 0$ ($\sin{\Phi} \approx \Phi$, pero no para los otros valores) también está bien.

Gracias

21voto

Jakob W Puntos 2197

Creo que lo que estás buscando es Fórmula de rotación de Rodrigues. Usando coordenadas esféricas:

Tu punto arbitrario en la esfera unitaria es: $$ \mathbf{a} = (\sin\theta\cos\phi, \sin\theta\sin\phi, \cos\theta) $$

Tu eje arbitrario está representado por el vector unitario: $$ \hat{\mathbf{k}} = (\sin\Theta\cos\Phi, \sin\Theta\sin\Phi, \cos\Theta) $$

Luego, el resultado de rotar $\mathbf{a}$ alrededor de $\hat{\mathbf{k}}$ por el ángulo $\beta$, utilizando la regla de la mano derecha, está dado por

$$ \mathbf{b} = \cos\beta\,\mathbf{a} + \sin\beta\,(\hat{\mathbf{k}} \times \mathbf{a}) + (\hat{\mathbf{k}}\cdot\mathbf{a})(1-\cos\beta)\,\hat{\mathbf{k}} $$

Por supuesto, ahora las coordenadas cartesianas de $\mathbf{b}$ deben convertirse a esféricas: $$ \tan\phi' = \frac{b_y}{b_x} \qquad\mbox{y}\qquad \tan\theta' = \frac{\sqrt{b_x^2 + b_y^2}}{b_z} $$ entonces $$ \mathbf{b} = (\sin\theta'\cos\phi', \sin\theta'\sin\phi', \cos\theta') $$

El mismo artículo sobre la Fórmula de Rodrigues también discute una representación matricial de la operación de rotación en cuestión.

1voto

Stann0rz Puntos 482

Las rotaciones en coordenadas esféricas son transformaciones afines, por lo que no hay una matriz para representar esto en la base estándar $(\theta, \phi)$, deberás introducir otro coeficiente aquí: $(\theta, \phi, 1)$, la matriz de rotación en la dirección $\theta$ es entonces, por ejemplo, rotar por $\alpha$ es;
$R(\alpha) = \left( \begin{array}{ccc} 1 & 0 & \alpha \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{array} \right) $

1voto

Stéphane Laurent Puntos 589

En este artículo explico cómo lidiar cuando el eje de rotación es uno de los ejes cartesianos.

Para un eje de rotación arbitrario $\vec{A}=(\Theta,\Phi)$, usando las mismas notaciones, la fórmula es $$ (\theta', \phi') = (Q^{-1} \circ R_{\vec{A}}(\beta) \circ Q)(\theta,\phi) $$ donde el operador de rotación $R_{\vec{A}}(\beta)$ es $$ R_{\vec{A}}(\beta) = R_z(\Phi)R_y(\Theta)R_z(\beta){R_y(\Theta)}^\dagger{R_z(\Phi)}^\dagger $$ ("${}^\dagger$" es la notación para la transpuesta conjugada).

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X