Isometrias I

Transcripción

Isometrias I
Isometrias−J.nb
1
Isometrías
Práctica de ÁlgebraLineal, E.U.A.T., Grupos 1ºA y 1ºB, 2005
Una isometría es un tipo especial de aplicación lineal: es una aplicación lineal que "mueve las cosas rígidamente". Precisamente, una aplicación lineal f de un espacio vectorial V en V es una isometría cuando, para cualesquiera vectores u,v de V,
se cumple que <f(u),f(v)>=<u,v> (trataremos siempre con el producto escalar usual). Como se ha visto en teoría, esto
significa que una isometría no "deforma" las cosas; puede girarlas en torno a un punto o una recta, reflejarlas, o las dos
cosas a la vez, pero no puede, por ejemplo, "aplastarlas".
En esta práctica vamos a construir algunas isometrías; es decir, vamos a dar la matriz que las representa, de forma que
podamos dar la imagen por la isometría de cualquier vector que queramos. Lo haremos de una forma u otra dependiendo del
tipo de isometría. Sólo trataremos las isometrías en dos y tres dimensiones (en R2 y en R3), que son las que podemos
imaginar más fácilmente. Para entender esta práctica es necesario entender bien la práctica sobre aplicaciones lineales.
à Matrices ortogonales
La matriz de una isometría en una base ortonormal tiene una propiedad curiosa: su inversa es igual que su traspuesta. La
matrices que cumplen esto se llaman matrices ortogonales. Cuando calculemos la matriz en la base usual de varias
isometrías en los apartados siguientes,podréis comprobar que son verdaderamente matrices ortogonales.
à Isometrías en el plano
Ÿ Una rotación
Para hablar de rotaciones siempre tomaremos los ángulos en radianes: un ángulo de t radianes corresponde a t*360/(2*Pi)
grados. Por ejemplo, Pi radianes son 180º (media vuelta), Pi/3 radianes son 60º...
La matriz de una rotación (siempre con respecto al origen, ya que aquí tratamos sólo con aplicaciones lineales, para las que
f(0)=0) es muy simple. Si el ángulo de la rotación, en sentido contrario a las agujas del reloj, es t (en radianes), entonces su
matriz es
In[1]:= rotacion={{Cos[t],−Sin[t]},{Sin[t],Cos[t]}};
MatrixForm[rotacion]
J
Cos@tD -Sin@tD
N
Sin@tD Cos@tD
Out[2]//MatrixForm=
Desde luego, para hallar la matriz de una rotación en el sentido de las agujas del reloj no hay más que tomar t negativo.
Por ejemplo, la matriz de una rotación de ángulo Pi/3 (en radianes) es:
2
Isometrias−J.nb
In[3]:= t = Pi  3;
rotacion  MatrixForm
1
i
€€€
€
j
2
j
j
j
!!!!
j
j €€€€€€€
3
k 2€
3 y
- €€€€€€€
€z
2 z
z
z
z
z
1
€€€
€
{
2
!!!!
Out[4]//MatrixForm=
Desde luego, usando la matriz podemos calcular la imagen de cualquier punto:
In[5]:= rotacion.82, 5<
!!!!
3
2
Out[5]= 91 - €€€€€€€€€€€€€€ , €€€€ +
5
5
2
!!!!
3=
Comprobamos que la matriz de la rotación es ortogonal:
In[6]:= Inverse@rotacionD Š Transpose@rotacionD
Out[6]= True
Podemos dibujar la imagen de unos cuantos puntos para convencernos de que de verdad es una rotación (lo siguiente es sólo
para poder ver bien qué es lo que hace la rotación):
In[7]:= puntos = 88-1, 0<, 8-.5, 1<, 81.5, -.5<, 81.5, .5<, 8-.5, -1<, 8-1, 0<<
Out[7]= 88-1, 0<, 8-0.5, 1<, 81.5, -0.5<, 81.5, 0.5<, 8-0.5, -1<, 8-1, 0<<
In[8]:= dibujo = ListPlot@puntos, PlotJoined ® True, AspectRatio ® AutomaticD
1
0.5
-1 -0.5
0.5
-0.5
-1
Out[8]= … Graphics …
1
1.5
3
Isometrias−J.nb
In[9]:= ListPlot@[email protected]@@iDD, 8i, 1, 6<D,
PlotJoined ® True, AspectRatio ® AutomaticD
1.5
1
0.5
-1 -0.5
0.5
1
-0.5
Out[9]= … Graphics …
Ÿ Una simetría
Queremos encontrar la matriz de una simetría S con respecto a una recta. Por ejemplo, tomemos la recta 3x−y=0. Un vector
director (un vector a lo largo de la recta) es por ejemplo (1,3), y como lo que hace una simetría el plano es "reflejar" sobre la
recta de la que se trate, vemos que S(1,3) = (1,3) (porque la recta no se mueve). Por otra parte, un vector perpendicular a la
recta es (3,−1) (cualquier vector perpendicular a (1,3) vale, claro). Como los vectores pependiculares a la recta se reflejan,
sabemos que S(3,−1)=(−3,1).Con esto ya sabemos la matriz de S en la base {(1,3),(3,−1)}.Es
In[10]:= matriz1 = Transpose@881, 0<, 80, -1<<D
Out[10]= 881, 0<, 80, -1<<
Para calcular ahora la matriz de la simetría con respecto a la base usual no hay más que multiplicar por las matrices de
cambio de base adecuadas (recordad la práctica sobre aplicaciones lineales):
In[11]:= cambio = Transpose@881, 3<, 83, -1<<D;
matriz2 = cambio.matriz1.Inverse@cambioD;
In[13]:= MatrixForm@matriz2D
4
- €€€
€
i
j
5
j
j
j 3
k €€€
5€
3
€€€
€z
5 y
z
z
4 z
€€€
5€ {
Out[13]//MatrixForm=
Probamos a reflejar el dibujo de antes:
4
Isometrias−J.nb
In[14]:= larecta = Plot@3 * x, 8x, -.5, .5<, DisplayFunction ® IdentityD;
reflejado = ListPlot@[email protected]@@iDD, 8i, 1, 6<D, PlotJoined ® True,
AspectRatio ® Automatic, PlotStyle ® 8RGBColor@0, 0, 1D, [email protected], .02<D<,
DisplayFunction ® IdentityD; Show@dibujo, larecta, reflejado,
DisplayFunction ® $DisplayFunction, AspectRatio ® AutomaticD
1.5
1
0.5
-1.5
-1
-0.5
0.5
1
1.5
-0.5
-1
-1.5
Out[15]= … Graphics …
à Isometrías en el espacio de tres dimensiones
Ÿ Rotación de ángulo t respecto a una recta
Seguiremos la misma idea que antes: hallamos la matriz de la rotación respecto de una base particularmente fácil, y luego
cambiamos a la base usual. Supongamos, por ejemplo, que queremos calcular la rotación de ángulo Pi/2 en torno a la recta
generada por el vector (1,2,−1) (no nos preocuparemos de en qué dirección queremos hacer la rotación para simplificar la
idea). Si R es la rotación que buscamos, sabemos que R(1,2,−1)=(1,−2,−1)(porque al girar alrededor de la recta, la recta no
cambia). Si encontramos dos vectores ortonormales y perpendiculares a la recta, sabemos que R actúa sobre estos vectores
como una rotación en dos dimensiones (que hemos calculado antes). Busquemos estos dos vectores:
In[16]:= NullSpace@881, 2, -1<<D
Out[16]= 881, 0, 1<, 8-2, 1, 0<<
Esto nos da una base del subespacio de vectores perpendiculares a la recta. Necesitamos además que la base sea ortonormal
(en la que sabemos la matriz de la rotación): para eso podemos, por ejemplo, quedarnos con el (1,0,1) y calcular un vector
perpendicular a este vector y a la recta (podéis usar la ortogonalización de Gram−Schmidtsi queréis):
In[17]:= Solve@881, 0, 1<.8x, y, z< Š 0, 81, 2, -1<.8x, y, z< Š 0<D
Solve::svars : Equations may not give solutions for all "solve" variables.
Out[17]= 88x ® -z, y ® z<<
5
Isometrias−J.nb
Así que un posible vector es (−1,1,1). Entonces normalizamos los vectores (los dividimos por su norma para que tengan
norma 1) y tenemos una base en la que es fácil calcular la matriz de R:
In[18]:= H* El vector director de la recta *Lu1 = 81, 2, -1<  Sqrt@1 ^ 2 + 2 ^ 2 + 1 ^ 2D;
H* Un vector perpendicular *L
u2 = 81, 0, 1<  Sqrt@1 ^ 2 + 0 ^ 2 + 1 ^ 2D;
H* Otro vector perpendicular a la recta, y también al anterior *L
u3 = 8-1, 1, 1<  Sqrt@1 ^ 2 + 1 ^ 2 + 1 ^ 2D;
La matriz en esta base es (ya que sabemos que R(u1)=u1, y que R actúa sobre u2, u3 como una rotación en 2D):
In[21]:= t = Pi  2; rotacion1 = Transpose@881, 0, 0<, 80, Cos@tD, -Sin@tD<, 80, Sin@tD, Cos@tD<<D;
MatrixForm@rotacion1D
i1 0 0y
j
z
j
z
j
j
z
j0 0 1z
z
k 0 -1 0 {
Out[22]//MatrixForm=
Ahora podemos, como antes, calcular la matriz de R en la base usual:
In[23]:= H* Matriz de cambio de la base 8u1,u2,u3< a la base usual *L
cambio = Transpose@8u1, u2, u3<D;
H* La matriz de R en la base usual *L
rotacion2 = cambio.rotacion1.Inverse@cambioD
MatrixForm@rotacion2D
€€€€ , - €€€€ + €€€€€€€€€
==
€€€€ =, 9 €€€€ - €€€€€€€€€
, - €€€€ - €€€€€€€€€
- $%%%%%%
Out[24]= 99 €€€€ , €€€€ + €€€€€€€€€
+ $%%%%%%
!!!!€ , €€€€
!!!!€ , €€€€
!!!!€ =, 9- €€€€
!!!!€ , - €€€€
3
3
6
3
3
3
3
6
6
3
6
6
6
6
6
1
1
1
2
1
1
1
1
i
€€€
€
€€€
€ + €€€€€€€
j
!!!!€
j
6
3
6
j
j
j
j
1
1
2
j
j
€€€
€€€
!!!!€
j
3€ - €€€€€€€
3€
j
6
j
j
j
j
j
j - €€€
1
2#
1
1
€ - "#####
€€€
- €€€
!!!!€
3€
3€ + €€€€€€€
6
k 6
Out[25]//MatrixForm=
1
1
2
1
1
1
2
1
1
1
1
2# y
- €€€
€ + "#####
€€€
€ z
6
3 z
z
z
z
z
1
1
z
- €€€
!!!!€ z
3€ - €€€€€€€
z
6 z
z
z
z
z
z
z
1
€€€
€
6
{
Podéis comprobar que su matriz es ortogonal (ved que lo siguiente es la traspuesta de lo anterior):
In[26]:= Inverse@rotacion2D  MatrixForm
1
1
1
i
€€€
€€€
j
!!!!€
j
6€
3€ - €€€€€€€
6
j
j
j
j
1
1
2
j
j
€€€
€ + €€€€€€€
€€€
€
!!!!€
j
3
3
j
6
j
j
j
j
j
j - €€€
1
2#
1
1
€ + "#####
€€€
€ - €€€
€ - €€€€€€€
!!!!€
3
3
6
k 6
Out[26]//MatrixForm=
1
2# y
"#####
- €€€
€€€
z
6€ 3€ z
z
z
z
z
1
1
z
- €€€
€ + €€€€€€€
!!!!€ z
3
z
6 z
z
z
z
z
z
z
1
€€€
€
6
{
Ÿ Simetría respecto a un plano
Para calcular la simetría con respecto a un plano (en la base canónica) podemos hacer algo parecido: elegimos una base que
tenga un vector perpendicular al plano y dos vectores del plano, y entonces es muy fácil calcular su matriz en esta base;
luego pasamos a la base canónica.
Calculemos, por ejemplo, la simetría respecto al plano dado por x+y+2z=0. Un vector perpendicular es (1,1,2) (se ve a ojo,
son los coeficientes). Conseguir una base del plano es fácil:
6
Isometrias−J.nb
In[27]:= Solve@x + y + 2 z Š 0, 8x, y, z<D
Solve::svars : Equations may not give solutions for all "solve" variables.
Out[27]= 88x ® -y - 2 z<<
Por ejemplo, (−1,1,0)y (−2,0,1)sirven. Escogemos la base {u1,u2,u3}, con:
In[28]:= u1 = 81, 1, 2<
u2 = 8-1, 1, 0<
u3 = 8-2, 0, 1<
Out[28]= 81, 1, 2<
Out[29]= 8-1, 1, 0<
Out[30]= 8-2, 0, 1<
La matriz en esta base es (sabiendo que S(u1)=−u1,S(u2)=u2, S(u3)=u3):
In[31]:= simetria1 = Transpose@88-1, 0, 0<, 80, 1, 0<, 80, 0, 1<<D
Out[31]= 88-1, 0, 0<, 80, 1, 0<, 80, 0, 1<<
La matriz en la base usual se obtiene como antes:
In[32]:= cambio = Transpose@8u1, u2, u3<D;
simetria2 = cambio.simetria1.Inverse@cambioD;
MatrixForm@simetria2D
2
i €€€
j
3€
j
j
j
1
j
j
€€€
j
3€
j
j
j 2
€
k - €€€
3
2
- €€€
z
3€ y
z
z
2 z
z
z
- €€€
€
z
3 z
z
1 z
- €€€
€
3 {
Out[34]//MatrixForm=
1
- €€€
3€
2
€€€
3€
2
- €€€
€
3
Podemos comprobar que simetria2 hace lo que debe con los vectores que escogimos antes como base:
In[35]:= simetria2.u1
Out[35]= 8-1, -1, -2<
In[36]:= simetria2.u2
Out[36]= 8-1, 1, 0<
In[37]:= simetria2.u3
Out[37]= 8-2, 0, 1<
à Ejercicios
Todas las matrices que se pida calcular a continuación se refieren a la matriz en la base canónica del espacio
correspondiente.
Isometrias−J.nb
1. ¿Es la siguiente matriz ortogonal?
{{1,2,3},{0,2,1},{2,1,−7}}
2. ¿Cuál es la matriz de la simetría con respecto al eje vertical en R2?
3. ¿Cuál es la matriz de la rotación en R2 de media vuelta en el sentido de las agujas del reloj?
4. Calcula la matriz de la rotación en tres dimensiones de ángulo Pi/4 alrededor de la recta de ecuaciones {x−
y=0,x+y+2z=0}.
5. Calcula la matriz de la simetría respecto al plano x=2y en R3.
7

Documentos relacionados