Matrices

Estoy de acuerdo: con un nombre tan genérico, esta entrada podría tratar sobre cualquier cosa.

Ay…matrices, esas grandes desconocidas

Llegan a nuestra vida motivadas por los sistemas de ecuaciones lineales,

\displaystyle \left\{\begin{matrix} x+2y=0 \\ 3x-y = 4 \end{matrix}\right.     \displaystyle \Longleftrightarrow     \displaystyle \begin{pmatrix} 1 & 2\\ 3 & -1 \end{pmatrix} \begin{pmatrix} x\\ y \end{pmatrix} = \begin{pmatrix} 0\\ 4 \end{pmatrix}

y salvo casos excepcionales, se profundiza poco más en sus aplicaciones. Y os aseguro que las tienen.

Empecemos por algo sencillo: vectores en el plano. Un vector es una flecha. Un objeto que tiene una dirección y una magnitud. Un ejemplo sería,

\displaystyle {\bf u} = (1,5)

Este vector lleva la dirección que va desde el origen de coordenadas (0,0) al punto (1,5) y tiene una magnitud de \|{\bf u}\|=\sqrt{1^2+5^2}=\sqrt{26}.

Los vectores pueden sumarse entre ellos y multiplicarse por números. Por tanto, los vectores pueden expresarse como combinaciones de otros vectores. Por ejemplo, el vector {\bf u} = (1,5) puede escribirse como,

\displaystyle (1,5) = -(1,3) + 2(1,4)

respecto de los vectores {\bf v} = (1,3) y {\bf w} = (1,4). Los escalares que acompañan a los vectores {\bf v} y {\bf w} son las coordenadas de {\bf u} en la base \{{\bf v},{\bf w}\}.

¡Ya tenemos una aplicación de las matrices!

Podemos usarlas para hacer cambios de coordenadas entre bases.

Hemos visto que las coordenadas del vector {\bf u} en la base \{{\bf v},{\bf w}\} son (-1,2). Pero, ¿qué coordenadas tendrá ese mismo vector en la base \{(2,1),(3,0)\}? Vamos a pensar.

Primero. Vamos a escribir los vectores {\bf v} y {\bf w} en la base \{(2,1),(3,0)\} = \{{\bf \tilde{v}},{\bf \tilde{w}}\}. Con unos pocos cálculos vemos que,

\displaystyle {\bf v}=3{\bf \tilde{v}}-\frac{5}{3}{\bf \tilde{w}}

\displaystyle {\bf w}=4{\bf \tilde{v}}-\frac{7}{3}{\bf \tilde{w}}

Segundo. Sustituimos las expresiones anteriores en {\bf u}=-{\bf v}+2{\bf w}, la expresión de {\bf u} en la base {\bf v} y {\bf w}, y obtenemos

\displaystyle {\bf u}=-(3{\bf \tilde{v}}-\frac{5}{3}{\bf \tilde{w}}) + 2(4{\bf \tilde{v}}-\frac{7}{3}{\bf \tilde{w}}) = (-3+2\cdot 4){\bf \tilde{v}} + \left(\frac{5}{3} - 2\cdot\frac{7}{3}\right){\bf \tilde{w}}

Por tanto, las coordenadas en la nueva base son (5,-3). Pero no nos quedamos en esto.

Si miramos con cuidadito la expresión anterior, vemos que la relación entre unas coordenadas y otras puede escribirse de la siguiente manera,

\displaystyle \begin{pmatrix} 5\\-3\end{pmatrix}=\begin{pmatrix}3&4\\-\dfrac{5}{3} & -\dfrac{7}{3}\end{pmatrix}\begin{pmatrix} -1\\2\end{pmatrix}

La matriz que aparece en la expresión anterior se denomina matriz de cambio de base y permite justo eso, pasar de una base de vectores a otra.

…aplicaciones reales, por favor…

Muy bien, muy bien…veamos…una aplicación real, ¿no?…los videojuegos son un gran ejemplo, y como hoy me siento nostálgico voy a poner como ejemplo al archiconocido Asteroids de Atari.

Asteroids es un juego de movimientos simples, formado por objetos con geometrías simples y además es 2D. En él, pilotamos una nave espacial, representada mediante un triángulo, que puede acelerar, frenar y rotar a derecha y izquierda (y disparar también).

¿Qué cálculos hay detrás de esos movimientos?

Básicamente hay dos: suma de vectores, lo que hace que la nave se traslade por el escenario, y producto de una matriz determinada por el vector director de la nave, lo que provoca que ésta rote.

Esta matriz es la siguiente,

\displaystyle R(\theta) = \begin{pmatrix}\cos\theta & \sin\theta\\-\sin\theta & \cos\theta\end{pmatrix}

y se denomina matriz de rotación. El ángulo \theta es el llamado ángulo de rotación, respecto al eje x.

Para terminar, os dejo con una versión del mismo, programada en HTML5Asteroids.

Anuncios
Esta entrada fue publicada en Uncategorized y etiquetada , , , , , . Guarda el enlace permanente.

2 Responses to Matrices

  1. Sergio Hernández Montero dice:

    Hablando de Asteroids te diré que hay un nivel vectorial adicional: la aceleración. La velocidad no es constante en los procesos de traslación (cuanto más pulsas la flecha Up más rápido se mueve, algo que en la version HTML no ocurre). Es la dirección de este vector aceleración el que controlamos con los cursores aportando al sistema de inercias. También el universo del asteroids tiene una constante de “rozamiento” que permite a la nave parar (otra cosa que en la versión HTML5 no se ve).

    Aqui dejo un enlace a la versión oficial de Atari: Asteorids Deluxe en la propia web de la pabricante:

    http://www.atari.com/arcade/arcade/asteroids-deluxe

  2. Pingback: Matrices y suma de ángulos « morvalets

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s