Вы находитесь на странице: 1из 26

Algebra y Matem

atica Discreta Sesi


on de Pr
acticas 13


Algebra y Matematica Discreta
Sesion de Practicas 13

(c) 2013 Leandro Marn, Francisco J. Vera, Gema M. Daz

9 Dic 2013 - 15 Dic 2013



Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Proyecciones Tridimensionales

Ejemplo

Calcula la matriz 3
de la proyecci
on ortogonal de R sobre el espacio
3 0
generado por 1 , 4 expresada en base canonica.
1 1

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Proyecciones Tridimensionales

Fase 0: Poner Nombres


3 0
v1 = 1 , v2 = 4
1 1

V = QQ ^ 3
v1 = V (( -3 , -1 , 1 ) )
v2 = V (( 0 , -4 , - 1 ) )

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Proyecciones Tridimensionales

Fase 1: Obtener la Base en la que Representar la


Proyeccion.

El vector v3 tiene que ser perpendicular a v1 y v2 para encontrarlo


podemos calcular el producto vectorial de ambos

5
v3 = v1 v2 = 3
12

El producto vectorial en sage se hace con el comando


cross_product.
v3 = v1 . cross_product ( v2 )

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Proyecciones Tridimensionales

Base

La base B que hemos encontrado para expresar la proyecci


on de
forma sencilla es
3 0 5
1 4 3 .
1 1 12

B = column_matrix ( [ v1 , v2 , v3 ] )

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Proyecciones Tridimensionales

Fase 2: Cambios de Base y Resultado.

La proyeccion tiene que dejar fijos los vectores del espacio sobre el
que proyectamos y mandar a cero los vectores perpendiculares, tal
y como hemos definido la base, el ella tenemos una expresi on muy
sencilla de la matriz:

1 0 0
P = 0 1 0
0 0 0

P = diagonal_matrix ( QQ , [1 ,1 , 0 ] )

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Proyecciones Tridimensionales

Si llamamos : R3 R3 a la aplicacion que estamos buscando,


sabemos que en base B tiene como matriz P, por lo que podemos
plantear el siguiente diagrama:

RO 3 / R3
O
B B
P
R3 / R3

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Proyecciones Tridimensionales

Por lo tanto la matriz de es


51 5 10

3 0 5 1 0 0 178 178 89
1 9 41 7
= BPB = 1 4 3 0 1 0 178 178 89
5 3 6
1 1 12 0 0 0 178 178 89

153 15
30

178 178 89
15 169 18
= 178 178 89
.
30
89
18
89
17
89

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Proyecciones Tridimensionales

Que en sage calculamos directamente:


pi = B * P * B ^ - 1

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Simetras Tridimensionales

Ejemplo

Calcula la matriz 3
de la simetr
a ortogonal de R respecto al espacio
2 0
generado por 2 , 2 expresada en base canonica.
1 1

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Simetras Tridimensionales

Fase 0: Poner Nombres



2 0
v1 = 2 , v2 = 2

1 1

V = QQ ^ 3
v1 = V (( 2 , -2 , 1 ) )
v2 = V (( 0 ,2 , 1 ) )

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Simetras Tridimensionales

Fase 1: Obtener la Base en la que Representar la Simetra.

El vector v3 tiene que ser perpendicular a v1 y v2 para encontrarlo


podemos calcular el producto vectorial de ambos

0
v3 = v1 v2 = 2
4

El producto vectorial en sage se hace con el comando


cross_product.
v3 = v1 . cross_product ( v2 )

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Simetras Tridimensionales

Base

La base B que hemos encontrado para expresar la simetra de


forma sencilla es
2 0 0
2 2 2 .
1 1 4

B = column_matrix ( [ v1 , v2 , v3 ] )

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Simetras Tridimensionales

Fase 2: Cambios de Base y Resultado.

La simetra tiene que dejar fijos los vectores del espacio respecto al
que hacemos la simetra y los vectores perpendiculares a sus
opuestos, por tanto, tal y como hemos definido la base, el ella
tenemos una expresi on muy sencilla de la matriz:

1 0 0
S = 0 1 0
0 0 1

S = diagonal_matrix ( QQ , [1 ,1 , - 1 ] )

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Simetras Tridimensionales

Si llamamos : R3 R3 a la aplicacion que estamos buscando,


sabemos que en base B tiene como matriz S, por lo que podemos
plantear el siguiente diagrama:

RO 3 / R3
O
B B
S
R3 / R3

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Simetras Tridimensionales

Por lo tanto la matriz de es


1
2 0 0 1 0 0 2 0 0
= BSB 1 = 2 2 2 0 1 0 12 2
5
1
5

1 1
1 1 4 0 0 1 0 10 5

1 0 0
3 4
= 0 5 5
.
4
0 5 53

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Simetras Tridimensionales

Que en sage calculamos directamente:


sigma = B * S * B ^ - 1

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Giros Tridimensionales

Ejemplo

Calcula la matriz del giro de angulo


/3
de
los vectores
de R3
1 1
dentro del plano generado por 1 , 2 expresada en

12 3
base canonica.

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Giros Tridimensionales

Fase 0: Poner Nombres


1 1
v1 = 1 , v2 = 2
12 3

V = RR ^ 3
v1 = V (( -1 ,1 , - 12 ) )
v2 = V (( -1 , -2 , 3 ) )

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Giros Tridimensionales

Fase 1: Obtener la Base en la que Representar el Giro.

El vector v3 tiene que ser perpendicular a v1 y v2 para encontrarlo


podemos calcular el producto vectorial de ambos

21
v3 = v1 v2 = 15
3

v3 = v1 . cross_product ( v2 )

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Giros Tridimensionales

El vector v2 tiene que ser perpendicular a v1 y v3 . El que tenemos


ahora es perpendicular a v3 , pero para conseguir que sea tambien
perpendicular a v1 vamos a cambiarlo por el producto vectorial
v3 v1 .
v2 = v3 . cross_product ( v1 )

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Giros Tridimensionales

Normalizar

Por u
ltimo, procederemos a dividir los vectores por su norma para
conseguir una base ortonormal

1
v1 1
u1 = = 1
kv1 k 146 12


183
v3 v1 1
u2 = = 255
kv3 v1 k 15 438 6

21
v3 1
u3 = = 15
kv3 k 15 3 3

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Giros Tridimensionales

Sobre sage lo haremos numericamente:


u1 = v1 / v1 . norm ()
u2 = v2 / v2 . norm ()
u3 = v3 / v3 . norm ()

Los vectores ya nos dan la base que buscamos:


B = column_matrix ( [ u1 , u2 , u3 ] )

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Giros Tridimensionales

Fase 2: Cambios de Base y Resultado.

El giro sobre la base ortonormal del plano, act


ua como el giro en el
2
plano R . El tercer vector de la base queda fijo, por tanto, tal y
como hemos definido la base, el ella tenemos una expresi on muy
sencilla de la matriz:

cos(/3) sen(/3) 0
G = sen(/3) cos(/3) 0
0 0 1

G = matrix ( RR , [ [ cos ( pi / 3 ) ,- sin ( pi / 3 ) ,0 ] ,[ sin ( pi / 3 ) , cos


( pi / 3 ) ,0 ] ,[0 ,0 , 1 ] ] )

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Giros Tridimensionales

Si llamamos : R3 R3 a la aplicacion que estamos buscando,


sabemos que en base B tiene como matriz G , por lo que podemos
plantear el siguiente diagrama:

RO 3 / R3
O
B B
G
R3 / R3

Por lo tanto la matriz de es

= BGB 1 = BGB

gamma = B * G * B . transpose ()

Algebra y Matem
atica Discreta Sesi
on de Pr
acticas 13
Producto Escalar
Giros Tridimensionales

Resultado


0.826666666666667 0.333333333333333 0.453333333333333
0.133333333333333 0.666666666666667 0.733333333333333
0.546666666666667 0.666666666666667 0.506666666666667

Вам также может понравиться