1 votos

¿Las matrices de rotación rotan sobre ángulos inerciales o corporales?

Tengo ángulos de cabeceo, alabeo y guiñada en ese orden (Euler 321) para aplicar a un marco de referencia del cuerpo en el sistema de coordenadas cartesianas. Quiero saber cuáles son las coordenadas vectoriales del marco de referencia del cuerpo después de aplicar esos ángulos.

Comienzo con un marco de referencia ortonormal $R$, aplico las matrices de rotación $R_Z$ luego $R_Y$ y $R_X$, las cuales son: $$R_{X}(\theta) = \begin{pmatrix}1 & 0 & 0 \\ 0 & \cos \theta & -\sin \theta \\ 0 & \sin \theta & \cos \theta\end{pmatrix},\qquad R_{Y}(\theta) = \begin{pmatrix}\cos \theta & 0 & \sin \theta \\ 0 & 1 & 0 \\ -\sin \theta & 0 & \cos \theta\end{pmatrix},\qquad R_{Z}(\theta) = \begin{pmatrix}\cos \theta & -\sin \theta & 0 \\ \sin \theta & \cos \theta & 0 \\ 0 & 0 & 1\end{pmatrix}.$$ He asumido que las matrices de rotación rotan alrededor del eje correspondiente del marco de referencia al que se aplica, no del sistema de coordenadas, sin embargo, Matlab parece decir lo contrario cuando dibujo los marcos de referencia antes y después: la guiñada es correcta porque es la primera operación, pero durante el cabeceo, el eje Y del cuerpo no es invariante, por ejemplo.

En contraste, intenté reemplazar cada una de las matrices de rotación previamente definidas en: $$MarcoRefRotado=R_XR_YR_ZMarcoRef$$ Por la matriz de rotación alrededor de un eje arbitrario: $$R_u = \begin{bmatrix} \cos \theta +u_x^2 \left(1-\cos \theta\right) & u_x u_y \left(1-\cos \theta\right) - u_z \sin \theta & u_x u_z \left(1-\cos \theta\right) + u_y \sin \theta \\ u_y u_x \left(1-\cos \theta\right) + u_z \sin \theta & \cos \theta + u_y^2\left(1-\cos \theta\right) & u_y u_z \left(1-\cos \theta\right) - u_x \sin \theta \\ u_z u_x \left(1-\cos \theta\right) - u_y \sin \theta & u_z u_y \left(1-\cos \theta\right) + u_x \sin \theta & \cos \theta + u_z^2\left(1-\cos \theta\right) \end{bmatrix}$$ Quitando los ejes del marco de referencia, y funciona.

Por lo tanto, mi pregunta es: ¿las matrices de rotación rotan sobre los ejes del CUERPO de la geometría rotada, o sobre ejes INERCIALES? En el primer caso significaría que tengo un error en mi código, pero simplificarlo al límite de ser solo las matemáticas presentadas y depurándolo minuciosamente paso a paso no ha revelado ningún error.

1voto

Bill N Puntos 3533

Supongamos que haces el cálculo $C_{final}=R_xR_yR_zC_{o}$, donde los $C$s son coordenadas. La primera rotación es sobre el eje $z$ de $C_{o}$ y producirá un nuevo sistema de coordenadas en el que el nuevo $z$ es el mismo que el antiguo, pero los ejes $x$ e $y$ son diferentes. La siguiente rotación será sobre el eje $y$ nuevo y producirá un nuevo, nuevo $x$ y un nuevo $z$. La rotación final será sobre el $x$ doblemente rotado.

NOTA: Según Arfken, Métodos Matemáticos para Físicos, y Brink & Satchler, Momento Angular, las rotaciones de Euler ocurren en el orden $R_z(\alpha)$, luego $R_y(\beta)$, y finalmente $R_z(\gamma)$. Entonces, las rotaciones son sobre el $z$ original, $y$ nuevo $y=y'$, y $z$ nuevo $z=z'$.

1voto

Dan Herbert Puntos 38336

Las columnas de una matriz de rotación 3×3 contienen las coordenadas de los ejes locales xyz (expresadas en coordenadas mundiales). Con ángulos de Euler (321) se aplican las rotaciones elementales $R_Z$, $R_Y$, $R_X$ en secuencia para formar la matriz de rotación local → mundial. Es decir

$$ E = R_Z(\varphi) R_Y(\psi) R_X(\theta) $$

Esto se interpreta como que cada rotación ocurre alrededor del eje local actual (eje intermedio). Entonces la primera rotación es alrededor del eje $\bar{Z}$ del mundo, pero la segunda rotación es alrededor del eje rotado $R_Z(\varphi) \bar{Y}$. La convención es que $E$ funciona de local a mundial como en $$(\mbox{vector del mundo}) = E \;(\mbox{vector local})$$ y en sentido inverso $$(\mbox{vector local}) = E^\top \;(\mbox{vector del mundo})$$

Nota que para rotar alrededor de un vector local por $\theta$, por ejemplo el local $\bar{z}$ adjunto a un cuerpo rígido con matriz de orientación $E$ se hace lo siguiente

$$ {\rm Rot}(E \bar{z}, \theta) \equiv E\,R_Z(\theta)\,E^\top $$

lo cual se interpreta como moverse al marco local, rotar alrededor del eje Z local y luego volver al marco mundial.

Así que cuando la matriz de inercia está definida en coordenadas del cuerpo, necesita transformarse a coordenadas mundiales para ser utilizada en la dinámica. Esto se hace con:

$$ I = E I_{cuerpo} E^\top $$

Respuestas relacionadas:

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