En álgebra lineal , una matriz de rotación es una matriz de transformación que se utiliza para realizar una rotación en el espacio euclidiano . Por ejemplo, utilizando la convención siguiente, la matriz
rota puntos en el plano xy en sentido antihorario a través de un ángulo θ alrededor del origen de un sistema de coordenadas cartesianas bidimensionales . Para realizar la rotación en un punto del plano con coordenadas estándar v = ( x , y ) , debe escribirse como un vector columna y multiplicarse por la matriz R :
Si x e y son las coordenadas de los extremos de un vector, donde x es coseno e y es seno, entonces las ecuaciones anteriores se convierten en las fórmulas trigonométricas de suma de ángulos . De hecho, una matriz de rotación puede verse como las fórmulas trigonométricas de suma de ángulos en forma matricial. Una forma de entender esto es decir que tenemos un vector en un ángulo de 30° desde el eje x , y deseamos rotar ese ángulo otros 45°. Simplemente necesitamos calcular las coordenadas del extremo del vector en 75°.
Los ejemplos de este artículo se aplican a rotaciones activas de vectores en sentido antihorario en un sistema de coordenadas diestro ( y en sentido antihorario desde x ) por premultiplicación ( R a la izquierda). Si se cambia alguno de estos (como rotar ejes en lugar de vectores, una transformación pasiva ), entonces se debe utilizar la inversa de la matriz de ejemplo, que coincide con su transpuesta .
Dado que la multiplicación de matrices no tiene efecto sobre el vector cero (las coordenadas del origen), las matrices de rotación describen rotaciones sobre el origen. Las matrices de rotación proporcionan una descripción algebraica de dichas rotaciones y se utilizan ampliamente para cálculos en geometría , física y gráficos por computadora . En alguna literatura, el término rotación se generaliza para incluir rotaciones impropias , caracterizadas por matrices ortogonales con un determinante de −1 (en lugar de +1). Estas combinan rotaciones propias con reflexiones (que invierten la orientación ). En otros casos, donde no se consideran las reflexiones, se puede omitir la etiqueta de propias . Esta última convención se sigue en este artículo.
Las matrices de rotación son matrices cuadradas , con entradas reales . Más específicamente, se pueden caracterizar como matrices ortogonales con determinante 1; es decir, una matriz cuadrada R es una matriz de rotación si y solo si R T = R −1 y det R = 1 . El conjunto de todas las matrices ortogonales de tamaño n con determinante +1 es una representación de un grupo conocido como el grupo ortogonal especial SO( n ) , un ejemplo del cual es el grupo de rotación SO(3) . El conjunto de todas las matrices ortogonales de tamaño n con determinante +1 o −1 es una representación del grupo ortogonal (general) O( n ) .
En dos dimensiones, la matriz de rotación estándar tiene la siguiente forma:
Esto rota los vectores columna mediante la siguiente multiplicación de matrices ,
Por lo tanto, las nuevas coordenadas ( x ′, y ′) de un punto ( x , y ) después de la rotación son
Por ejemplo, cuando el vector
se gira un ángulo θ , sus nuevas coordenadas son
y cuando el vector
se gira un ángulo θ , sus nuevas coordenadas son
La dirección de rotación del vector es en sentido antihorario si θ es positivo (por ejemplo, 90°) y en sentido horario si θ es negativo (por ejemplo, −90°) para . Por lo tanto, la matriz de rotación en sentido horario se obtiene como
El caso bidimensional es el único caso no trivial (es decir, no unidimensional) en el que el grupo de matrices de rotación es conmutativo, de modo que no importa en qué orden se realizan las rotaciones múltiples. Una convención alternativa utiliza ejes rotatorios, [1] y las matrices anteriores también representan una rotación de los ejes en el sentido de las agujas del reloj a través de un ángulo θ .
Si se utiliza un sistema de coordenadas cartesiano estándar para diestros , con el eje x a la derecha y el eje y hacia arriba, la rotación R ( θ ) es en sentido antihorario. Si se utiliza un sistema de coordenadas cartesiano para zurdos, con x dirigida a la derecha pero y dirigida hacia abajo, R ( θ ) es en el sentido de las agujas del reloj. Estas orientaciones no estándar rara vez se utilizan en matemáticas, pero son comunes en gráficos de computadora 2D , que a menudo tienen el origen en la esquina superior izquierda y el eje y hacia abajo en la pantalla o página. [2]
Consulte a continuación otras convenciones alternativas que pueden cambiar el sentido de la rotación producida por una matriz de rotación.
Especialmente útiles son las matrices
para rotaciones en sentido antihorario de 90°, 180° y 270°.
Desde
Las matrices de la forma
forman un anillo isomorfo al cuerpo de los números complejos . Bajo este isomorfismo, las matrices de rotación corresponden al círculo de los números complejos unitarios , los números complejos de módulo 1 .
Si se identifica con a través del isomorfismo lineal la acción de una matriz de la forma anterior sobre vectores de corresponde a la multiplicación por el número complejo x + iy , y las rotaciones corresponden a la multiplicación por números complejos de módulo 1 .
Como toda matriz de rotación se puede escribir
La correspondencia anterior asocia dicha matriz con el número complejo
(esta última igualdad es la fórmula de Euler ).
Una rotación 3D básica (también llamada rotación elemental) es una rotación sobre uno de los ejes de un sistema de coordenadas. Las siguientes tres matrices de rotación básicas rotan vectores en un ángulo θ sobre el eje x , y o z , en tres dimensiones, utilizando la regla de la mano derecha , que codifica sus signos alternos. Observe que la regla de la mano derecha solo funciona cuando se multiplican . (Las mismas matrices también pueden representar una rotación en el sentido de las agujas del reloj de los ejes. [nb 1] )
En el caso de los vectores columna , cada una de estas rotaciones básicas de vector aparece en sentido antihorario cuando el eje sobre el que se producen apunta hacia el observador, el sistema de coordenadas es diestro y el ángulo θ es positivo. R z , por ejemplo, rotaría hacia el eje y un vector alineado con el eje x , como se puede comprobar fácilmente operando con R z sobre el vector (1,0,0) :
Esto es similar a la rotación producida por la matriz de rotación bidimensional mencionada anteriormente. Vea a continuación convenciones alternativas que pueden, aparentemente o en realidad, invertir el sentido de la rotación producida por estas matrices.
Se pueden obtener otras matrices de rotación 3D a partir de estas tres mediante la multiplicación de matrices . Por ejemplo, el producto
representa una rotación cuyos ángulos de guiñada, cabeceo y balanceo son α , β y γ , respectivamente. Más formalmente, es una rotación intrínseca cuyos ángulos de Tait-Bryan son α , β , γ , alrededor de los ejes z , y , x , respectivamente. De manera similar, el producto
representa una rotación extrínseca cuyos ángulos de Euler (impropios) son α , β , γ , alrededor de los ejes x , y , z .
Estas matrices producen el efecto deseado sólo si se utilizan para premultiplicar vectores columna y (ya que en general la multiplicación de matrices no es conmutativa ) sólo si se aplican en el orden especificado (ver Ambigüedades para más detalles). El orden de las operaciones de rotación es de derecha a izquierda; la matriz adyacente al vector columna es la primera en aplicarse, y luego la de la izquierda. [3]
Cada rotación en tres dimensiones está definida por su eje (un vector a lo largo de este eje no cambia con la rotación) y su ángulo , la cantidad de rotación alrededor de ese eje ( teorema de rotación de Euler ).
Existen varios métodos para calcular el eje y el ángulo a partir de una matriz de rotación (véase también la representación eje-ángulo ). Aquí, solo describimos el método basado en el cálculo de los vectores y valores propios de la matriz de rotación. También es posible utilizar la traza de la matriz de rotación.
Dada una matriz de rotación R de 3 × 3 , un vector u paralelo al eje de rotación debe satisfacer
ya que la rotación de u alrededor del eje de rotación debe dar como resultado u . La ecuación anterior se puede resolver para u , que es único hasta un factor escalar a menos que R = I .
Además, la ecuación puede reescribirse
lo que demuestra que u se encuentra en el espacio nulo de R − I .
Visto de otra manera, u es un vector propio de R correspondiente al valor propio λ = 1. Toda matriz de rotación debe tener este valor propio, siendo los otros dos valores propios conjugados complejos entre sí. De ello se deduce que una matriz de rotación general en tres dimensiones tiene, salvo una constante multiplicativa, un solo vector propio real.
Una forma de determinar el eje de rotación es demostrando que:
Dado que ( R − R T ) es una matriz antisimétrica , podemos elegir u tal que
El producto matriz-vector se convierte en un producto vectorial de un vector consigo mismo, lo que garantiza que el resultado sea cero:
Por lo tanto, si
entonces
La magnitud de u calculada de esta manera es ‖ u ‖ = 2 sen θ , donde θ es el ángulo de rotación.
Esto no funciona si R es simétrico. En el caso anterior, si R − R T es cero, todos los pasos subsiguientes son inválidos. En este caso, es necesario diagonalizar R y encontrar el vector propio correspondiente a un valor propio de 1.
Para hallar el ángulo de una rotación, una vez conocido el eje de rotación, se selecciona un vector v perpendicular al eje. Entonces el ángulo de rotación es el ángulo entre v y R v .
Sin embargo, un método más directo consiste en calcular simplemente la traza : la suma de los elementos diagonales de la matriz de rotación. Se debe tener cuidado de seleccionar el signo correcto para el ángulo θ para que coincida con el eje elegido:
de lo cual se deduce que el valor absoluto del ángulo es
Para el eje de rotación , puede obtener el ángulo correcto [4] a partir de
dónde
La matriz de una rotación propia R por un ángulo θ alrededor del eje u = ( u x , u y , u z ) , un vector unitario con u2x
+ tú2
años+ tú2z
= 1 , viene dado por: [5] [6] [7] [8]
Una derivación de esta matriz a partir de los primeros principios se puede encontrar en la sección 9.2 aquí. [9] La idea básica para derivar esta matriz es dividir el problema en unos pocos pasos simples conocidos.
Esto se puede escribir de forma más concisa como [10]
donde [ u ] × es la matriz de producto vectorial de u ; la expresión u ⊗ u es el producto externo e I es la matriz identidad . Alternativamente, las entradas de la matriz son:
donde ε jkl es el símbolo de Levi-Civita con ε 123 = 1. Esta es una forma matricial de la fórmula de rotación de Rodrigues (o la fórmula de Euler-Rodrigues equivalente, parametrizada de manera diferente ) con [nb 2]
En la rotación de un vector x alrededor del eje u un ángulo θ se puede escribir como:
o equivalentemente:
Esto también se puede escribir en notación tensorial como: [11]
Si el espacio 3D es dextrógiro y θ > 0 , esta rotación será en sentido antihorario cuando u apunte hacia el observador ( regla de la mano derecha ). Explícitamente, con una base ortonormal dextrógira,
Obsérvense las sorprendentes diferencias, meramente aparentes, con la formulación algebraica de Lie equivalente que aparece a continuación.
Para cualquier matriz de rotación n -dimensional R que actúa sobre
Resulta que:
Una rotación se denomina propia si det R = 1 , e impropia (o roto-reflexión) si det R = –1 . Para dimensiones pares n = 2 k , los n valores propios λ de una rotación propia ocurren como pares de conjugados complejos que son raíces de la unidad: λ = e ± iθ j para j = 1, ..., k , que es real solo para λ = ±1 . Por lo tanto, puede que no haya vectores fijados por la rotación ( λ = 1 ), y por lo tanto no hay eje de rotación. Cualquier vector propio fijo ocurre en pares, y el eje de rotación es un subespacio de dimensión par.
Para dimensiones impares n = 2 k + 1 , una rotación propia R tendrá un número impar de valores propios, con al menos un λ = 1 y el eje de rotación será un subespacio de dimensión impar. Demostración:
Aquí I es la matriz identidad, y usamos det( R T ) = det( R ) = 1 , así como (−1) n = −1 ya que n es impar. Por lo tanto, det( R – I ) = 0 , lo que significa que hay un vector distinto de cero v con ( R – I ) v = 0 , es decir R v = v , un vector propio fijo. También puede haber pares de vectores propios fijos en el subespacio de dimensión par ortogonal a v , por lo que la dimensión total de los vectores propios fijos es impar.
Por ejemplo, en el 2-espacio n = 2 , una rotación por un ángulo θ tiene valores propios λ = e iθ y λ = e − iθ , por lo que no hay eje de rotación excepto cuando θ = 0 , el caso de la rotación nula. En el 3-espacio n = 3 , el eje de una rotación propia no nula es siempre una línea única, y una rotación alrededor de este eje por un ángulo θ tiene valores propios λ = 1, e iθ , e − iθ . En el 4-espacio n = 4 , los cuatro valores propios son de la forma e ± iθ , e ± iφ . La rotación nula tiene θ = φ = 0 . El caso de θ = 0, φ ≠ 0 se denomina rotación simple , con dos valores propios unitarios que forman un plano de eje , y una rotación bidimensional ortogonal al plano de eje. De lo contrario, no hay plano de eje. El caso de θ = φ se denomina rotación isoclínica , que tiene valores propios e ± iθ repetidos dos veces, por lo que cada vector rota un ángulo θ .
La traza de una matriz de rotación es igual a la suma de sus valores propios. Para n = 2 , una rotación en un ángulo θ tiene una traza 2 cos θ . Para n = 3 , una rotación alrededor de cualquier eje en un ángulo θ tiene una traza 1 + 2 cos θ . Para n = 4 , la traza es 2(cos θ + cos φ ) , que se convierte en 4 cos θ para una rotación isoclínica.
En geometría euclidiana , una rotación es un ejemplo de isometría , una transformación que mueve puntos sin cambiar las distancias entre ellos. Las rotaciones se distinguen de otras isometrías por dos propiedades adicionales: dejan (al menos) un punto fijo y dejan la " lateralidad " sin cambios. Por el contrario, una traslación mueve todos los puntos, una reflexión intercambia el orden hacia la izquierda y hacia la derecha, una reflexión de deslizamiento hace ambas cosas y una rotación impropia combina un cambio en la lateralidad con una rotación normal.
Si se toma un punto fijo como origen de un sistema de coordenadas cartesianas , entonces a cada punto se le pueden dar coordenadas como un desplazamiento desde el origen. De este modo, se puede trabajar con el espacio vectorial de desplazamientos en lugar de con los puntos mismos. Ahora supongamos que ( p 1 , ..., p n ) son las coordenadas del vector p desde el origen O hasta el punto P . Elijamos una base ortonormal para nuestras coordenadas; entonces, la distancia al cuadrado a P , según Pitágoras , es
que se puede calcular mediante la multiplicación de matrices
Una rotación geométrica transforma las líneas en líneas y conserva las razones de las distancias entre los puntos. A partir de estas propiedades se puede demostrar que una rotación es una transformación lineal de los vectores y, por lo tanto, se puede escribir en forma matricial , Q p . El hecho de que una rotación conserve, no solo las razones, sino también las distancias mismas, se enuncia como
o
Como esta ecuación es válida para todos los vectores, p , se concluye que cada matriz de rotación, Q , satisface la condición de ortogonalidad ,
Las rotaciones preservan la lateralidad porque no pueden cambiar el orden de los ejes, lo que implica la condición especial de la matriz ,
Igualmente importante es que se puede demostrar que cualquier matriz que satisfaga estas dos condiciones actúa como una rotación.
La inversa de una matriz de rotación es su transpuesta, que también es una matriz de rotación:
El producto de dos matrices de rotación es una matriz de rotación:
Para n > 2 , la multiplicación de matrices de rotación n × n generalmente no es conmutativa .
Observando que cualquier matriz identidad es una matriz de rotación, y que la multiplicación de matrices es asociativa , podemos resumir todas estas propiedades diciendo que las matrices de rotación n × n forman un grupo , que para n > 2 es no abeliano , llamado grupo ortogonal especial , y denotado por SO( n ) , SO( n , R ) , SO n o SO n ( R ) , el grupo de matrices de rotación n × n es isomorfo al grupo de rotaciones en un espacio n -dimensional . Esto significa que la multiplicación de matrices de rotación corresponde a la composición de rotaciones, aplicada en orden de izquierda a derecha de sus matrices correspondientes.
La interpretación de una matriz de rotación puede estar sujeta a muchas ambigüedades.
En la mayoría de los casos el efecto de la ambigüedad es equivalente al efecto de una inversión de la matriz de rotación (para estas matrices ortogonales es equivalente la matriz transpuesta ).
Considere la matriz de rotación 3 × 3
Si Q actúa en una determinada dirección, v , puramente como una escala por un factor λ , entonces tenemos
de modo que
Por lo tanto, λ es una raíz del polinomio característico de Q ,
Dos características son dignas de mención. Primero, una de las raíces (o valores propios ) es 1, lo que nos dice que alguna dirección no se ve afectada por la matriz. Para rotaciones en tres dimensiones, este es el eje de la rotación (un concepto que no tiene significado en ninguna otra dimensión). Segundo, las otras dos raíces son un par de conjugados complejos, cuyo producto es 1 (el término constante de la cuadrática), y cuya suma es 2 cos θ (el término lineal negado). Esta factorización es de interés para matrices de rotación 3 × 3 porque ocurre lo mismo para todas ellas. (Como casos especiales, para una rotación nula los "conjugados complejos" son ambos 1, y para una rotación de 180° son ambos −1.) Además, una factorización similar se cumple para cualquier matriz de rotación n × n . Si la dimensión, n , es impar, habrá un valor propio "colgando" de 1; y para cualquier dimensión el resto de los factores polinomiales en términos cuadráticos como el de aquí (con los dos casos especiales anotados). Tenemos la garantía de que el polinomio característico tendrá grado n y por lo tanto n valores propios. Y como una matriz de rotación conmuta con su transpuesta, es una matriz normal , por lo que se puede diagonalizar. Concluimos que toda matriz de rotación, cuando se expresa en un sistema de coordenadas adecuado, se divide en rotaciones independientes de subespacios bidimensionales, como máximo norte/2 de ellos.
La suma de las entradas en la diagonal principal de una matriz se llama traza ; no cambia si reorientamos el sistema de coordenadas, y siempre es igual a la suma de los valores propios. Esto tiene la implicación conveniente para las matrices de rotación 2 × 2 y 3 × 3 de que la traza revela el ángulo de rotación , θ , en el espacio bidimensional (o subespacio). Para una matriz 2 × 2 la traza es 2 cos θ , y para una matriz 3 × 3 es 1 + 2 cos θ . En el caso tridimensional, el subespacio consiste en todos los vectores perpendiculares al eje de rotación (la dirección invariante, con valor propio 1). Por lo tanto, podemos extraer de cualquier matriz de rotación 3 × 3 un eje de rotación y un ángulo, y estos determinan completamente la rotación.
Las restricciones de una matriz de rotación 2 × 2 implican que debe tener la forma
con a 2 + b 2 = 1 . Por lo tanto, podemos establecer a = cos θ y b = sen θ , para algún ángulo θ . Para resolver θ no es suficiente observar a solo o b solo; debemos considerar ambos juntos para colocar el ángulo en el cuadrante correcto , utilizando una función arcotangente de dos argumentos .
Ahora consideremos la primera columna de una matriz de rotación de 3 × 3 ,
Aunque a 2 + b 2 probablemente no será igual a 1, sino algún valor r 2 < 1 , podemos usar una ligera variación del cálculo anterior para encontrar una llamada rotación de Givens que transforma la columna a
Poniendo a cero b . Esto actúa sobre el subespacio abarcado por los ejes x e y . Podemos repetir el proceso para el subespacio xz hasta poner a cero c . Al actuar sobre la matriz completa, estas dos rotaciones producen la forma esquemática
Si nos centramos en la segunda columna, una rotación de Givens del subespacio yz puede ahora poner a cero el valor z . Esto hace que la matriz completa adopte la forma
que es una matriz identidad. Por lo tanto, hemos descompuesto Q como
Una matriz de rotación n × n tendrá ( n − 1) + ( n − 2) + ⋯ + 2 + 1 , o
entradas debajo de la diagonal a cero. Podemos ponerlas a cero extendiendo la misma idea de recorrer las columnas con una serie de rotaciones en una secuencia fija de planos. Concluimos que el conjunto de matrices de rotación n × n , cada una de las cuales tiene n 2 entradas, se puede parametrizar mediante 1/2 n ( n − 1) ángulos.
En tres dimensiones, esto replantea en forma matricial una observación hecha por Euler , por lo que los matemáticos llaman a la secuencia ordenada de tres ángulos ángulos de Euler . Sin embargo, la situación es algo más complicada de lo que hemos indicado hasta ahora. A pesar de la pequeña dimensión, en realidad tenemos una libertad considerable en la secuencia de pares de ejes que usamos; y también tenemos cierta libertad en la elección de los ángulos. Por lo tanto, encontramos muchas convenciones diferentes empleadas cuando se parametrizan rotaciones tridimensionales para física, o medicina, o química, u otras disciplinas. Cuando incluimos la opción de ejes del mundo o ejes del cuerpo, son posibles 24 secuencias diferentes. Y mientras que algunas disciplinas llaman a cualquier secuencia ángulos de Euler, otras dan nombres diferentes (Cardano, Tait–Bryan, balanceo-cabeceo-guiñada ) a diferentes secuencias.
Una razón para la gran cantidad de opciones es que, como se señaló anteriormente, las rotaciones en tres dimensiones (y superiores) no conmutan. Si invertimos una secuencia dada de rotaciones, obtenemos un resultado diferente. Esto también implica que no podemos componer dos rotaciones sumando sus ángulos correspondientes. Por lo tanto, los ángulos de Euler no son vectores , a pesar de una similitud en apariencia como un triplete de números.
Una matriz de rotación de 3 × 3 como
sugiere una matriz de rotación de 2 × 2 ,
Está incrustado en la esquina superior izquierda:
Esto no es una ilusión; no sólo una, sino muchas copias de rotaciones n -dimensionales se encuentran dentro de rotaciones ( n + 1) -dimensionales, como subgrupos . Cada incrustación deja una dirección fija, que en el caso de matrices 3 × 3 es el eje de rotación. Por ejemplo, tenemos
fijando el eje x , el eje y y el eje z , respectivamente. El eje de rotación no necesita ser un eje de coordenadas; si u = ( x , y , z ) es un vector unitario en la dirección deseada, entonces
donde c θ = cos θ , s θ = sin θ , es una rotación de ángulo θ dejando fijo el eje u .
Una dirección en un espacio de dimensión ( n + 1) será un vector de magnitud unitaria, que podemos considerar un punto en una esfera generalizada, S n . Por lo tanto, es natural describir el grupo de rotación SO( n + 1) como una combinación de SO( n ) y S n . Un formalismo adecuado es el fibrado ,
donde para cada dirección en el espacio base, S n , la fibra sobre ella en el espacio total, SO( n + 1) , es una copia del espacio de la fibra, SO( n ) , es decir, las rotaciones que mantienen fija esa dirección.
Así, podemos construir una matriz de rotación n × n comenzando con una matriz 2 × 2 , apuntando su eje fijo a S 2 (la esfera ordinaria en el espacio tridimensional), apuntando la rotación resultante a S 3 , y así sucesivamente hasta S n −1 . Se puede seleccionar un punto en S n usando n números, por lo que nuevamente tenemos 1/2 n ( n − 1) números para describir cualquiermatriz de rotación n × n .
De hecho, podemos considerar la descomposición angular secuencial, analizada previamente, como una inversión de este proceso. La composición de n − 1 rotaciones de Givens lleva la primera columna (y fila) a (1, 0, ..., 0) , de modo que el resto de la matriz es una matriz de rotación de dimensión uno menos, incrustada de modo que (1, 0, ..., 0) quede fija.
Cuando una matriz de rotación n × n Q , no incluye un valor propio −1, por lo que ninguna de las rotaciones planares que comprende son rotaciones de 180°, entonces Q + I es una matriz invertible . La mayoría de las matrices de rotación se ajustan a esta descripción, y para ellas se puede demostrar que ( Q − I )( Q + I ) −1 es una matriz antisimétrica , A . Por lo tanto A T = − A ; y dado que la diagonal es necesariamente cero, y dado que el triángulo superior determina el inferior, A contiene 1/2 n ( n − 1) números independientes.
Convenientemente, I − A es invertible siempre que A sea antisimétrico; por lo tanto, podemos recuperar la matriz original utilizando la transformada de Cayley ,
que convierte cualquier matriz A antisimétrica en una matriz de rotación. De hecho, aparte de las excepciones señaladas, podemos producir cualquier matriz de rotación de esta manera. Aunque en aplicaciones prácticas difícilmente podemos permitirnos ignorar las rotaciones de 180°, la transformada de Cayley sigue siendo una herramienta potencialmente útil, que proporciona una parametrización de la mayoría de las matrices de rotación sin funciones trigonométricas.
En tres dimensiones, por ejemplo, tenemos (Cayley 1846)
Si condensamos las entradas oblicuas en un vector, ( x , y , z ) , entonces producimos una rotación de 90° alrededor del eje x para (1, 0, 0), alrededor del eje y para (0, 1, 0), y alrededor del eje z para (0, 0, 1). Las rotaciones de 180° están fuera de alcance; porque, en el límite cuando x → ∞ , ( x , 0, 0) se aproxima a una rotación de 180° alrededor del eje x , y de manera similar para otras direcciones.
Para el caso 2D, una matriz de rotación se puede descomponer en tres matrices de corte (Paeth 1986):
Esto es útil, por ejemplo, en gráficos de computadora, ya que las operaciones de corte se pueden implementar con menos instrucciones de multiplicación que rotando un mapa de bits directamente. En las computadoras modernas, esto puede no tener importancia, pero puede ser relevante para microprocesadores muy antiguos o de gama baja.
Una rotación también puede escribirse como dos cortes y escalas (Daubechies y Sweldens 1998):
A continuación se presentan algunos datos básicos sobre el papel de la colección de todas las matrices de rotación de una dimensión fija (aquí principalmente 3) en matemáticas y particularmente en física donde la simetría rotacional es un requisito de cada ley verdaderamente fundamental (debido al supuesto de isotropía del espacio ), y donde la misma simetría, cuando está presente, es una propiedad simplificadora de muchos problemas de naturaleza menos fundamental. Los ejemplos abundan en la mecánica clásica y la mecánica cuántica . El conocimiento de la parte de las soluciones perteneciente a esta simetría se aplica (con salvedades) a todos esos problemas y se puede factorizar de un problema específico en cuestión, reduciendo así su complejidad. Un excelente ejemplo, en matemáticas y física, sería la teoría de los armónicos esféricos . Su papel en la teoría de grupos de los grupos de rotación es el de ser un espacio de representación para todo el conjunto de representaciones irreducibles de dimensión finita del grupo de rotación SO(3). Para este tema, consulte Grupo de rotación SO(3) § Armónicos esféricos .
Para obtener más detalles se hace referencia a los artículos principales enumerados en cada subsección.
Las matrices de rotación n × n para cada n forman un grupo , el grupo ortogonal especial , SO( n ) . Esta estructura algebraica está acoplada con una estructura topológica heredada de de tal manera que las operaciones de multiplicación y toma de la inversa son funciones analíticas de las entradas de la matriz. Por lo tanto, SO( n ) es para cada n un grupo de Lie . Es compacto y conexo , pero no simplemente conexo . También es un grupo semisimple , de hecho un grupo simple con la excepción de SO(4). [12] La relevancia de esto es que todos los teoremas y toda la maquinaria de la teoría de variedades analíticas (las variedades analíticas son en particular variedades suaves ) se aplican y la teoría de representación bien desarrollada de grupos semisimples compactos está lista para su uso.
El álgebra de Lie so ( n ) de SO( n ) está dada por
y es el espacio de matrices antisimétricas de dimensión n , véase grupo clásico , donde o ( n ) es el álgebra de Lie de O( n ) , el grupo ortogonal . Como referencia, la base más común para ( 3) es
La conexión del álgebra de Lie con el grupo de Lie es el mapa exponencial , que se define utilizando la serie exponencial matricial estándar para e A [13] Para cualquier matriz antisimétrica A , exp( A ) es siempre una matriz de rotación. [nb 3]
Un ejemplo práctico importante es el caso 3 × 3. En el grupo de rotación SO(3) , se muestra que se puede identificar cada A ∈ so (3) con un vector de Euler ω = θ u , donde u = ( x , y , z ) es un vector de magnitud unitaria.
Por las propiedades de la identificación , u está en el espacio nulo de A. Por lo tanto, u queda invariante por exp( A ) y, por lo tanto, es un eje de rotación.
Según la fórmula de rotación de Rodrigues en forma matricial , se obtiene,
dónde
Esta es la matriz para una rotación alrededor del eje u con un ángulo θ . Para obtener más detalles, consulte el mapa exponencial SO(3) .
La fórmula BCH proporciona una expresión explícita para Z = log( e X e Y ) en términos de una expansión en serie de conmutadores anidados de X e Y . [14] Esta expansión general se desarrolla como [nb 4]
En el caso 3 × 3 , la expansión infinita general tiene una forma compacta, [15]
para coeficientes de funciones trigonométricas adecuados, detallados en la fórmula de Baker–Campbell–Hausdorff para SO(3) .
Como identidad de grupo, lo anterior se cumple para todas las representaciones fieles , incluido el doblete (representación de espinor), que es más simple. La misma fórmula explícita se deduce directamente a través de las matrices de Pauli; véase la derivación 2 × 2 para SU(2) . Para el caso general n × n , se podría utilizar la Ref. [16]
El grupo de Lie de matrices de rotación n × n , SO( n ) , no está simplemente conexo , por lo que la teoría de Lie nos dice que es una imagen homomórfica de un grupo de recubrimiento universal . A menudo, el grupo de recubrimiento, que en este caso se denomina grupo de espín denotado por Spin( n ) , es más simple y más natural para trabajar. [17]
En el caso de rotaciones planares, SO(2) es topológicamente un círculo , S 1 . Su grupo de recubrimiento universal, Spin(2), es isomorfo a la línea real , R , bajo la adición. Siempre que se utilizan ángulos de magnitud arbitraria, se aprovecha la conveniencia del recubrimiento universal. Cada matriz de rotación 2 × 2 se produce por una infinidad contable de ángulos, separados por múltiplos enteros de 2 π . En consecuencia, el grupo fundamental de SO(2) es isomorfo a los números enteros, Z .
En el caso de rotaciones espaciales, SO(3) es topológicamente equivalente al espacio proyectivo real tridimensional , RP 3 . Su grupo de recubrimiento universal, Spin(3), es isomorfo a la 3-esfera , S 3 . Toda matriz de rotación 3 × 3 se produce por dos puntos opuestos en la esfera. En consecuencia, el grupo fundamental de SO(3) es isomorfo al grupo de dos elementos, Z 2 .
También podemos describir Spin(3) como isomorfo a los cuaterniones de norma unitaria bajo multiplicación, o a ciertas matrices reales de 4 × 4 , o a matrices unitarias especiales complejas de 2 × 2 , a saber, SU(2). Las funciones de recubrimiento para el primer y el último caso se dan por
y
Para una descripción detallada de la cobertura SU(2) y la cobertura cuaterniónica, véase el grupo de espín SO(3) .
Muchas características de estos casos son las mismas para dimensiones superiores. Los recubrimientos son todos de dos a uno, con SO( n ) , n > 2 , que tiene un grupo fundamental Z 2 . El entorno natural para estos grupos está dentro de un álgebra de Clifford . Un tipo de acción de las rotaciones se produce por una especie de "sándwich", denotado por qvq ∗ . Más importante aún en aplicaciones a la física, la representación de espín correspondiente del álgebra de Lie se encuentra dentro del álgebra de Clifford. Puede ser exponenciada de la manera habitual para dar lugar a una representación de 2 valores , también conocida como representación proyectiva del grupo de rotación. Este es el caso de SO(3) y SU(2), donde la representación de 2 valores puede verse como una "inversa" de la función de recubrimiento. Por propiedades de las funciones de recubrimiento, la inversa puede elegirse de uno a uno como una sección local, pero no globalmente.
Las matrices del álgebra de Lie no son en sí mismas rotaciones; las matrices antisimétricas son derivadas, diferencias proporcionales de rotaciones. Una verdadera "rotación diferencial", o matriz de rotación infinitesimal , tiene la forma
donde dθ es extremadamente pequeño y A ∈ entonces (n) , por ejemplo con A = L x ,
Las reglas de cálculo son las habituales, excepto que los infinitesimales de segundo orden se descartan rutinariamente. Con estas reglas, estas matrices no satisfacen todas las mismas propiedades que las matrices de rotación finita ordinarias bajo el tratamiento habitual de los infinitesimales. [18] Resulta que el orden en el que se aplican las rotaciones infinitesimales es irrelevante . Para ver esto ejemplificado, consulte las rotaciones infinitesimales SO(3) .
Hemos visto la existencia de varias descomposiciones que se aplican en cualquier dimensión, a saber, planos independientes, ángulos secuenciales y dimensiones anidadas. En todos estos casos podemos descomponer una matriz o construirla. También hemos prestado especial atención a las matrices de rotación 3 × 3 , y estas merecen una mayor atención, en ambas direcciones (Stuelpnagel 1964).
Dado el cuaternión unitario q = w + x i + y j + z k , la matriz de rotación 3 × 3 premultiplicada equivalente (para usarse con vectores de columna) es [19]
Ahora, cada componente cuaternión aparece multiplicado por dos en un término de grado dos, y si todos esos términos son cero, lo que queda es una matriz identidad. Esto conduce a una conversión eficiente y robusta de cualquier cuaternión, ya sea unitario o no, a una matriz de rotación 3 × 3. Dado:
podemos calcular
Liberados de la exigencia de un cuaternión unitario, encontramos que los cuaterniones distintos de cero actúan como coordenadas homogéneas para matrices de rotación de 3 × 3. La transformada de Cayley, analizada anteriormente, se obtiene escalando el cuaternión de modo que su componente w sea 1. Para una rotación de 180° alrededor de cualquier eje, w será cero, lo que explica la limitación de Cayley.
La suma de las entradas a lo largo de la diagonal principal (la traza ), más uno, es igual a 4 − 4( x 2 + y 2 + z 2 ) , que es 4 w 2 . Por lo tanto, podemos escribir la traza en sí como 2 w 2 + 2 w 2 − 1 ; y de la versión anterior de la matriz vemos que las entradas diagonales en sí tienen la misma forma: 2 x 2 + 2 w 2 − 1 , 2 y 2 + 2 w 2 − 1 y 2 z 2 + 2 w 2 − 1 . Por lo tanto, podemos comparar fácilmente las magnitudes de los cuatro componentes cuaterniones utilizando la diagonal de la matriz. De hecho, podemos obtener las cuatro magnitudes utilizando sumas y raíces cuadradas, y elegir signos consistentes utilizando la parte antisimétrica de las entradas fuera de la diagonal:
Alternativamente, utilice una sola raíz cuadrada y división.
Esto es numéricamente estable siempre que la traza, t , no sea negativa; de lo contrario, corremos el riesgo de dividir por (casi) cero. En ese caso, supongamos que Q xx es la entrada diagonal más grande, por lo que x tendrá la magnitud más grande (los otros casos se derivan por permutación cíclica); entonces lo siguiente es seguro.
Si la matriz contiene un error significativo, como un error numérico acumulado, podemos construir una matriz simétrica de 4 × 4 ,
y encuentre el vector propio , ( x , y , z , w ) , de su valor propio de mayor magnitud. (Si Q es verdaderamente una matriz de rotación, ese valor será 1.) El cuaternión así obtenido corresponderá a la matriz de rotación más cercana a la matriz dada (Bar-Itzhack 2000) (Nota: la formulación del artículo citado es post-multiplicada, funciona con vectores fila).
Si la matriz n × n M no es singular, sus columnas son vectores linealmente independientes; por lo tanto, el proceso de Gram-Schmidt puede ajustarlas para que sean una base ortonormal. Expresado en términos de álgebra lineal numérica , convertimos M en una matriz ortogonal, Q , utilizando la descomposición QR . Sin embargo, a menudo preferimos una Q más cercana a M , lo que este método no logra. Para eso, la herramienta que queremos es la descomposición polar (Fan y Hoffman 1955; Higham 1989).
Para medir la proximidad, podemos utilizar cualquier norma matricial invariante bajo transformaciones ortogonales. Una opción conveniente es la norma de Frobenius , ‖ Q − M ‖ F , al cuadrado, que es la suma de los cuadrados de las diferencias entre los elementos. Escribiendo esto en términos de la traza , Tr , nuestro objetivo es,
Aunque está escrita en términos matriciales, la función objetivo es simplemente un polinomio cuadrático. Podemos minimizarla de la forma habitual, hallando dónde su derivada es cero. Para una matriz de 3 × 3 , la restricción de ortogonalidad implica seis igualdades escalares que las entradas de Q deben satisfacer. Para incorporar la(s) restricción(es), podemos emplear una técnica estándar, los multiplicadores de Lagrange , ensamblados como una matriz simétrica, Y . Por lo tanto, nuestro método es:
Consideremos un ejemplo de 2 × 2. Incluyendo restricciones, buscamos minimizar
Tomando la derivada con respecto a Q xx , Q xy , Q yx , Q yy a su vez, armamos una matriz.
En general, obtenemos la ecuación
de modo que
donde Q es ortogonal y S es simétrica. Para asegurar un mínimo, la matriz Y (y por lo tanto S ) debe ser definida positiva. El álgebra lineal llama QS a la descomposición polar de M , con S a la raíz cuadrada positiva de S 2 = M T M .
Cuando M no es singular , los factores Q y S de la descomposición polar están determinados de forma única. Sin embargo, el determinante de S es positivo porque S es definido positivo, por lo que Q hereda el signo del determinante de M. Es decir, solo se garantiza que Q sea ortogonal, no una matriz de rotación. Esto es inevitable; una M con determinante negativo no tiene una matriz de rotación más cercana definida de forma única.
Para construir eficientemente una matriz de rotación Q a partir de un ángulo θ y un eje unitario u , podemos aprovechar la simetría y la simetría oblicua dentro de las entradas. Si x , y y z son los componentes del vector unitario que representa el eje, y
entonces
La determinación de un eje y un ángulo, como la determinación de un cuaternión, solo es posible hasta el signo; es decir, ( u , θ ) y (− u , − θ ) corresponden a la misma matriz de rotación, al igual que q y − q . Además, la extracción del eje-ángulo presenta dificultades adicionales. El ángulo se puede restringir a un valor de 0° a 180°, pero los ángulos son formalmente ambiguos por múltiplos de 360°. Cuando el ángulo es cero, el eje no está definido. Cuando el ángulo es 180°, la matriz se vuelve simétrica, lo que tiene implicaciones en la extracción del eje. Cerca de múltiplos de 180°, se necesita cuidado para evitar problemas numéricos: al extraer el ángulo, una arcotangente de dos argumentos con atan2 (sin θ , cos θ ) igual a θ evita la insensibilidad del arcocos; y al calcular la magnitud del eje para forzar la magnitud unitaria, un enfoque de fuerza bruta puede perder precisión debido al desbordamiento insuficiente (Moler y Morrison 1983).
Un enfoque parcial es el siguiente:
Los componentes x , y y z del eje se dividirían entonces por r . Un enfoque totalmente robusto utilizará un algoritmo diferente cuando t , la traza de la matriz Q , sea negativa, como en el caso de la extracción de cuaterniones. Cuando r es cero porque el ángulo es cero, se debe proporcionar un eje de alguna fuente distinta a la matriz.
La complejidad de la conversión aumenta con los ángulos de Euler (usados aquí en sentido amplio). La primera dificultad es establecer cuál de las veinticuatro variaciones del orden de los ejes cartesianos utilizaremos. Supongamos que los tres ángulos son θ 1 , θ 2 , θ 3 ; la física y la química pueden interpretarlos como
Mientras que la dinámica de las aeronaves puede utilizar
Un enfoque sistemático comienza con la elección del eje más a la derecha. Entre todas las permutaciones de ( x , y , z ) , solo dos colocan ese eje en primer lugar; una es una permutación par y la otra impar. La elección de la paridad establece, por tanto, el eje del medio. Eso deja dos opciones para el eje más a la izquierda, ya sea duplicar el primero o no. Estas tres opciones nos dan 3 × 2 × 2 = 12 variaciones; duplicamos esa cifra a 24 eligiendo ejes estáticos o rotatorios.
Esto es suficiente para construir una matriz a partir de ángulos, pero los triples que difieren en muchos aspectos pueden dar la misma matriz de rotación. Por ejemplo, supongamos que usamos la convención zyz anterior; entonces tenemos los siguientes pares equivalentes:
Los ángulos para cualquier orden se pueden encontrar utilizando una rutina común concisa (Herter y Lott 1993; Shoemake 1994).
El problema de la alineación singular, el análogo matemático del bloqueo físico del cardán , ocurre cuando la rotación intermedia alinea los ejes de la primera y la última rotación. Afecta a todos los órdenes de eje en múltiplos pares o impares de 90°. Estas singularidades no son características de la matriz de rotación como tal, y solo ocurren con el uso de ángulos de Euler.
Las singularidades se evitan al considerar y manipular la matriz de rotación como vectores de fila ortonormales (en aplicaciones 3D, a menudo denominados vector derecho, vector superior y vector exterior) en lugar de como ángulos. Las singularidades también se evitan al trabajar con cuaterniones.
En algunos casos es interesante describir una rotación especificando cómo se mapea un vector en otro a través del camino más corto (ángulo más pequeño). Esto describe completamente la matriz de rotación asociada. En general, dado x , y ∈ n , la matriz
pertenece a SO( n + 1) y asigna x a y . [20]
A veces necesitamos generar una matriz de rotación aleatoria uniformemente distribuida. Parece intuitivamente claro en dos dimensiones que esto significa que el ángulo de rotación está distribuido uniformemente entre 0 y 2 π . Esa intuición es correcta, pero no se traslada a dimensiones superiores. Por ejemplo, si descomponemos matrices de rotación de 3 × 3 en forma de eje-ángulo, el ángulo no debería estar distribuido uniformemente; la probabilidad de que (la magnitud de) el ángulo sea como máximo θ debería ser 1/π ( θ − pecado θ ) , para 0 ≤ θ ≤ π .
Como SO( n ) es un grupo de Lie conexo y localmente compacto, tenemos un criterio estándar simple para la uniformidad, a saber, que la distribución no cambia cuando se compone con cualquier rotación arbitraria (una "traslación" del grupo de Lie). Esta definición corresponde a lo que se llama medida de Haar . León, Massé y Rivest (2006) muestran cómo utilizar la transformada de Cayley para generar y probar matrices de acuerdo con este criterio.
También podemos generar una distribución uniforme en cualquier dimensión utilizando el algoritmo de subgrupos de Diaconis y Shahshahani (1987). Esto explota recursivamente la estructura de grupo de dimensiones anidadas de SO( n ) , de la siguiente manera. Genere un ángulo uniforme y construya una matriz de rotación de 2 × 2 . Para pasar de n a n + 1 , genere un vector v distribuido uniformemente en la n -esfera S n , incruste la matriz n × n en el siguiente tamaño más grande con la última columna (0, ..., 0, 1) , y rote la matriz más grande para que la última columna se convierta en v .
Como es habitual, tenemos alternativas especiales para el caso 3 × 3. Cada uno de estos métodos comienza con tres escalares aleatorios independientes distribuidos uniformemente en el intervalo unitario. Arvo (1992) aprovecha la dimensión impar para cambiar una reflexión de Householder a una rotación por negación y la utiliza para apuntar el eje de una rotación plana uniforme.
Otro método utiliza cuaterniones unitarios. La multiplicación de matrices de rotación es homomórfica a la multiplicación de cuaterniones, y la multiplicación por un cuaternión unitario rota la esfera unitaria. Dado que el homomorfismo es una isometría local , concluimos inmediatamente que para producir una distribución uniforme en SO(3) podemos usar una distribución uniforme en S 3 . En la práctica: cree un vector de cuatro elementos donde cada elemento sea una muestra de una distribución normal. Normalice su longitud y tendrá un cuaternión unitario aleatorio muestreado uniformemente que representa una rotación aleatoria muestreada uniformemente. Tenga en cuenta que lo mencionado anteriormente solo se aplica a rotaciones en dimensión 3. Para una idea generalizada de los cuaterniones, uno debe mirar Rotors .
También se pueden utilizar ángulos de Euler, aunque no con cada ángulo distribuido uniformemente (Murnaghan 1962; Miles 1965).
Para la forma eje-ángulo, el eje se distribuye uniformemente sobre la esfera unitaria de direcciones, S 2 , mientras que el ángulo tiene la distribución no uniforme sobre [0, π ] señalada anteriormente (Miles 1965).
{{cite web}}
: CS1 maint: numeric names: authors list (link)