Vous êtes sur la page 1sur 34

Modelado de problemas matemticos con derive

Transformaciones ortogonales y afines

JMC

1. Introduccin
Este trabajo tratar de crear un programa que mediante el uso de unas determinadas funciones se
consiga realizar cualquier tipo de giro, traslacin, homotecia, simetra,... mediante el uso de
transformaciones ortogonales y afines. La estructura del programa se puede dividir en dos partes bien
diferenciadas.
En una primera parte se encontraran un conjunto de funciones donde el usuario introduce el
elemento a transformar y la funcin produce la transformacin.
Por otro lado, la segunda parte del programa estara constituida por funciones en las cuales el usuario
introduce una matriz y la funcin identifica la transformacin y la clasifica.
Adems de estos dos bloques de funciones, tambin podemos diferenciar entre funciones de A2 y
A3, es decir, transformaciones en el plano o en el espacio. Y finalmente tambin podramos diferenciar
entre transformaciones ortogonales y transformaciones afines.

2. Funciones
Las transformaciones ortogonales se dividen en:
ORTO_HOMOTECIA(, k) : Funcin en la que se introduce un punto ( ) y una razn (k) y se
calcula la transformacin.

ORTO_SIMETRIA_CENTRAL() : Funcin en la que se introduce un punto () y se calcula


el punto simtrico respecto del centro.

ORTO_SIMETRIA_EJE(, ) : Funcin en la que se introduce uno de los tres ejes


coordenados cartesianos () y un punto () y devuelve el simtrico de ese punto respecto al eje coordenado.
ORTO_GIROA2(, ) : Funcin en la que se introduce un punto() y un ngulo () y devuelve

el punto transformado por el giro de ngulo . En esta funcin slo se pueden introducir puntos del
plano.

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

ORTO_GIROA3(, , ) : Funcin en la que se introduce uno de los tres ejes coordenados

cartesianos (), un punto (), un ngulo () y devuelve el punto girado un radianes respecto del eje .
En esta funcin slo se pueden introducir puntos del espacio.

Las transformaciones afines se dividen en:


TRASLACION(, v) : Funcin en la que se introduce un punto () y un vector (v) y se
devuelve la traslacin de vector v sobre el punto .
SIMETRIA_CENTRAL(, P) : Funcin en la que se introduce un punto () y otro punto (P) que

ser el centro de simetra. La funcin devuelve el simtrico del punto respecto del centro de simetra.
SIMETRIA_PLANO(, ) : Funcin en la que se introduce un punto () y uno de los planos

coordenados (), que ser el plano de simetra, y devuelve el simtrico respecto de ese plano . El plano
habr que introducirlo como XY, por ejemplo (con las comillas incluidas), que se tratara del plano
z = 0. Lgicamente esta funcin slo admite puntos del espacio.
SIMETRIA_EJE(, ) : Funcin en la que se introduce uno de los tres ejes coordenados

cartesianos () y un punto() y devuelve el simtrico de ese punto respecto al eje coordenado.


GIRO_A2(, , P) : Funcin en la que se introduce un punto (), un ngulo () y el punto (P)

sobre el que efectuar el giro. La funcin devuelve el transformado del punto por el giro de ngulo .
En esta funcin slo se pueden introducir puntos del plano.
GIRO_A3(, , ) : Funcin en la que se introduce uno de los tres ejes coordenados cartesianos

() , un punto () y un ngulo () y devuelve el punto girado un ngulo respecto del eje . En esta
funcin slo se pueden introducir puntos del espacio.

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

En cuanto a las funciones de bsqueda en el programa se encuentran:


MULTIPLICIDAD(A,) : Funcin en la que se introduce la matriz de estudio (A) y el autovalor
(), devolviendo la multiplicidad de ese autovalor en la matriz A. Esta funcin nos ser muy til a la
hora de clasificar las transformaciones afines.
ORTOGONAL(A) : Funcin el que se introduce una determinada matriz y que devuelve 1 si
la matriz es ortogonal y 0 si no lo es.
PUNTOS_INVARIANTES(A) : Funcin en la que se introduce una matriz ortogonal y
determina si su transformacin afn asociada tiene puntos invariantes o no. Devuelve 0 si no tiene
puntos invariantes y 1 en caso contrario.
EJE(A) : Funcin que recibe una matriz ortogonal (A) y devuelve las ecuaciones que determinan
los puntos invariantes de la transformacin asociada a ella.
ANGULO_GIRO(A) : Funcin que recibe una matriz ortogonal (A) que represente un giro y
devuelve el ngulo de giro asociado a dicha transformacin.
BUSQUEDA(A) : Funcin principal de la parte del programa que se encarga de clasificar el tipo
de movimiento. Se introduce una matriz (A) de la que se quiere conocer el movimiento y devuelve una
clasificacin de la misma. Su funcionamiento bsicamente es:
- Primero comprueba la dimensin de la matriz introducida y dependiendo de ello selecciona un
grupo de funciones u otras.
- A continuacin comprueba que la matriz introducida es ortogonal y en caso de q no lo sea
devuelve La matriz introducida no representa un movimiento .
- Y por ltimo dependiendo de las multiplicidades de los autovalores y de si hay puntos
invariantes o no, determina qu tipo de movimiento estamos estudiando.

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

3. Ejemplos prcticos
3.1 Transformaciones ortogonales
En primer lugar, mostramos algunos ejemplos de las funciones que se encargan de las
transformaciones ortogonales:
La funcin ORTO_HOMOTECIA(, k) produce una homotecia de razn k sobre el punto
.
Ejemplo 1 : se introducen una serie de puntos que configuran el contorno de un pentgono
irregular y mediante el uso de esta funcin se ampliar su tamao cinco veces. Los puntos introducidos
en dos dimensiones sern el (-1,-2.25), (1,-2.25), (2,1), (0,3), (-2 ,1).

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

Ejemplo 2 : en tres dimensiones, introducimos el punto(1,2,3) con una razn k=2.

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

La funcin ORTO_SIMETRIA_CENTRAL() produce una simetra central respecto del


origen sobre el punto .
Ejemplo 1 : vamos a hallar el simtrico respecto del origen del punto (2,5).

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

Ejemplo 2: hallar el transformado del punto (4,2,3) aplicando una simetra central. (siempre
respecto del origen pues estamos trabajando con transformaciones ortogonales).

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

La funcin ORTO_SIMETRIA_EJE(, ) produce una simetra respecto de un eje sobre el


punto .

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

Ejemplo 1 : hallar el punto simtrico del punto (5,5) respecto del eje X:

Ejemplo 2 : hallar el simtrico respecto del eje Z del punto (2,4,6):

ORTO_SIMETRIA_EJE([2, 4, 3], z)
9

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

[-2, -4, 3]

La funcin ORTO_GIROA2(, ) produce un giro de radianes alrededor del origen sobre


el punto .

10

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

Ejemplo : Hallar el transformado del punto (2,3) al producirle un giro de 45.

ORTO_GIROA2[2, 3],

4
2 52
- ,
2
2
[-0.7071067811, 3.535533905]

La funcin ORTO_GIROA3(, , ) produce un giro de radianes sobre el punto


alrededor del eje .

11

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

Ejemplo : hallar el transformado del punto (1,2,3) aplicndole un giro de ngulo 30 respecto al
eje Z.


ORTO_GIROA3[1, 2, 3], , z

6
3
1
- 1, 3 + , 3
2
2

3.2 Transformaciones afines

12

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

A continuacin vamos a hacer algunos ejemplos de todas las funciones de transformaciones


afines
La funcin TRASLACIN(,v) produce una traslacin de vector v sobre el punto .
Ejemplo 1 : Traslacin de vector (2,4) aplicado al punto (1,2)
TRASLACION([2, 4], [1, 2])
[3, 6]

Ejemplo 2 : Traslacin de vector (1,2,1) aplicado al punto (2,1,1)

13

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

TRASLACION([1, 2, 1], [2, 1, 1])


[3, 3, 2]

14

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

La funcin SIMETRIA_CENTRAL(,P) produce una simetra central respecto al punto P.


Ejemplo 1 : simetra central respecto al origen. Vamos a transformar 3 puntos: el (1,2) el (2,2) y
el (-1,3).
SIMETRIA_CENTRAL([1, 2], [0, 0])
[-1, -2]
SIMETRIA_CENTRAL([2, 2], [0, 0])
[-2, -2]
SIMETRIA_CENTRAL([-1, 3], [0, 0])
[1, -3]

15

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

Ejemplo 2 : vamos a hacer una simetra central respecto al punto (1,1,1). Tambin vamos a
transformar 3 puntos: el (1,2,1), el (0,3,1) y el (2,1,0).
SIMETRIA_CENTRAL([1, 2, 1], [1, 1, 1])
[1, 0, 1]
SIMETRIA_CENTRAL([0, 3, 1], [1, 1, 1])
[2, -1, 1]
SIMETRIA_CENTRAL([2, 1, 0], [1, 1, 1])
[0, 1, 2]

16

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

La funcin SIMETRIA_EJE(, ) produce una simetra del punto respecto del eje .
Ejemplo 1 : simetra del punto (-2,3) respecto al eje Y.
SIMETRIA_EJE([-2, 3], y)
[2, 3]

17

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

Ejemplo 2 : Simetra respecto al eje Z. Vamos a transformar 3 puntos: el (1,2,1), el (2,1,-2) y el


(-4,4,0).
SIMETRIA_EJE([1, 2, 1], z)
[-1, -2, 1]
SIMETRIA_EJE([2, 1, -2], z)
[-2, -1, -2]

18

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

SIMETRIA_EJE([-4, 4, 0], z)
[4, -4, 0]

La funcin GIRO_A2(,,P) produce un giro de ngulo alrededor del punto P sobre el


punto .
Ejemplo : Vamos a girar el punto (2,1) un ngulo de 45 alrededor del punto (1,1)

GIRO_A2[2, 1], , [1, 1]

19

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

2
2

+ 1, + 1
2
2

La funcin GIRO_A3(,, ) produce un giro de ngulo alrededor del eje sobre el punto
.
Ejemplo : Giro de 90 del punto (3,2,1) respecto del eje z

20

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

GIRO_A3[3, 2, 1], , z

2
[-2, 3, 1]

La funcin SIMETRIA_PLANO(,) produce una simetra del punto respecto al plano .


Ejemplo: Vamos a hallar el punto simtrico respecto al plano XY del punto (1,1,3):

21

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

SIMETRIA_PLANO([1, 1, 3], XY)

[1, 1, -3]

3.3 Funciones de bsqueda


Funcin BUSQUEDA(A)

22

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

Esta funcin recibe como argumento una matriz A. Dependiendo de sus caractersticas devolver
al usuario si se trata o no de una transformacin afn y en caso de que lo sea, devuelve el tipo de
transformacin que es.
A continuacin, vamos a introducir diversas matrices y con la funcin BUSQUEDA(A)
intentaremos averiguar qu tipo de transformacin representa esa matriz
1

0
A
0

0 0 0

1 0 0

0 1 0

0 0 1

BUSQUEDA(A)
Es la identidad

1 0 0

A6 1 0

4 0 1
BUSQUEDA(A)
[Se trata de una traslacin de vector, [6, 4]]

1
A
2

0 0 0

1 0 0

0 1 0

0 0 1

BUSQUEDA(A)

23

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

[Es una traslacin de vector, [1, 2, 4]]

1 0 0

A 0 -1 0

0 0 1
BUSQUEDA(A)
[Se trata de una simetra respecto del eje, Y]

1 0 0

A 3 -1 0

1 0 1
BUSQUEDA(A)
[Se trata de una simetra respecto del eje, Y, seguida de una traslacin de vector,
[3, 1]]

0
A
0

0 0 0

-1 0 0

0 -1 0

0 0 1

BUSQUEDA(A)
[Simetria respecto al eje, Z]

24

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

1
A
7

JMC

0 0 0

-1 0 0

0 -1 0

0 0 1

BUSQUEDA(A)
[Es una simetra respecto del eje, Z, seguida de traslacin de vector, [1, 7, 4]]

0
A
0

0 0 0

1 0 0

0 1 0

0 0 -1

BUSQUEDA(A)
[Simetria respecto al plano, z = 0]

2
A
5

0 0 0

1 0 0

0 1 0

0 0 -1

BUSQUEDA(A)
[Es una simetria respecto al plano, z = 0, seguida de una traslacin de vector, [2,
5, 1]]

25

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

1 0 0

A 4 -1 0

3 0 -1
BUSQUEDA(A)

3
Se trata de una simetra central respecto al punto, x = 2 y =

1
A
7

0 0 0

-1 0 0

0 -1 0

0 0 -1

BUSQUEDA(A)

1
7

Es una simetra central respecto al punto, x = y = z = 2

2
2

0
A

1
3
-
2
2

3
1

2
2
26

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

BUSQUEDA(A)

Se trata de un giro de ngulo, , respecto del punto, x = 0 y = 0

1
3

- 0
2
2

3
1

0
2
2

0
0 1

BUSQUEDA(A)

Es un giro de ngulo, , alrededor del eje, Z

1
3

- 0
2
2

3
1

0
2
2

0
0 1

BUSQUEDA(A)

27

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

Es un giro de ngulo, , alrededor del eje, Z, ms una traslacin de vector, [3, 7, 3]

1
3

- 0
2
2

3
1

0
2
2

0
0 -1

BUSQUEDA(A)

Es un giro de angulo, , respecto al eje, Z, seguido de una simetra respecto a ese eje

1
2
2
1 -
3
3
3

2
1
2
0 -
3
3
3

2
2
1
28

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

-1 -

3
3
3
BUSQUEDA(A)

1
Simetria respecto al eje, x - z = 1 y - z =

4. Cdigo del programa


TRANSFORMACIONES ORTOGONALES
ORTO_HOMOTECIA(, k)
Prog
If DIM() = 2
[k, 0; 0, k]
If DIM() = 3

29

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

[k, 0, 0; 0, k, 0; 0, 0, k]
If DIM() 2 DIM() 3
RETURN ?
ORTO_SIMETRIA_CENTRAL()
Prog
If DIM() = 2
[-1, 0; 0, -1]
If DIM() = 3
[-1, 0, 0; 0, -1, 0; 0, 0, -1]
If DIM() 2 DIM() 3
RETURN ?
ORTO_SIMETRIA_EJE(, )
Prog
If DIM() = 2
Prog
If = x
RETURN [1, 0; 0, -1]
If = y
RETURN [-1, 0; 0, 1]
If DIM() = 3
Prog
If = x
RETURN [1, 0, 0; 0, -1, 0; 0, 0, -1]
If = y
RETURN [-1, 0, 0; 0, 1, 0; 0, 0, -1]
If = z
RETURN [-1, 0, 0; 0, -1, 0; 0, 0, 1]
If DIM() 2 DIM() 3
RETURN ?
COS() - SIN()
ORTO_GIROA2(, )

SIN() COS()
ORTO_GIROA3(, , )
Prog
If = x
RETURN [1, 0, 0; 0, COS(), - SIN(); 0, SIN(), COS()]
If = y
RETURN [COS(), 0, - SIN(); 0, 1, 0; SIN(), 0, COS()]
If = z
RETURN [COS(), - SIN(), 0; SIN(), COS(), 0; 0, 0, 1]
TRANSFORMACIONES AFINES
TRASLACION(, v)
Prog
If DIM() = 2
Prog
t [1, 0, 0; v1, 1, 0; v2, 0, 1]APPEND([1], )
RETURN [t2, t3]
If DIM() = 3
Prog
t [1, 0, 0, 0; v1, 1, 0, 0; v2, 0, 1, 0; v3, 0, 0, 1]APPEND([1], )
RETURN [t2, t3, t4]
If DIM() 2 DIM() 3
RETURN ?
SIMETRIA_CENTRAL(, P)
Prog

30

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

If DIM() = 2
Prog
u 2P1
v 2P2
c [1, 0, 0; u, -1, 0; v, 0, -1]APPEND([1], )
RETURN [c2, c3]
If DIM() = 3
Prog
u 2P1
v 2P2
w 2P3
c [1, 0, 0, 0; u, -1, 0, 0; v, 0, -1, 0; w, 0, 0, -1]APPEND([1], )
RETURN [c2, c3, c4]
If DIM() 2 DIM() 3
RETURN ?
SIMETRIA_PLANO(, )
Prog
If = XY
f [1, 0, 0, 0; 0, 1, 0, 0; 0, 0, 1, 0; 0, 0, 0, -1]APPEND([1], )
If = XZ
f [1, 0, 0, 0; 0, 1, 0, 0; 0, 0, -1, 0; 0, 0, 0, 1]APPEND([1], )
If = YZ
f [1, 0, 0, 0; 0, -1, 0, 0; 0, 0, 1, 0; 0, 0, 0, 1]APPEND([1], )
RETURN [f2, f3, f4]
SIMETRIA_EJE(, )
Prog
If DIM() = 2
Prog
If = x
e [1, 0, 0; 0, 1, 0; 0, 0, -1]APPEND([1], )
If = y
e [1, 0, 0; 0, -1, 0; 0, 0, 1]APPEND([1], )
RETURN [e2, e3]
If DIM() = 3
Prog
If = x
e [1, 0, 0, 0; 0, 1, 0, 0; 0, 0, -1, 0; 0, 0, 0, -1]APPEND([1], )
If = y
e [1, 0, 0, 0; 0, -1, 0, 0; 0, 0, 1, 0; 0, 0, 0, -1]APPEND([1], )
If = z
e [1, 0, 0, 0; 0, -1, 0, 0; 0, 0, -1, 0; 0, 0, 0, 1]APPEND([1], )
RETURN [e2, e3, e4]
If DIM() 2 DIM() 3
RETURN ?
GIRO_A2(, , P)
Prog
t [1, 0, 0; P1(1 - COS()) + P2SIN(), COS(), - SIN(); - P1SIN() + P2(1 - COS()),
SIN(), COS()]APPEND([1], )
RETURN [t2, t3]
GIRO_A3(, , )
Prog
If = x
g [1, 0, 0, 0; 0, 1, 0, 0; 0, 0, COS(), - SIN(); 0, 0, SIN(), COS()]APPEND([1], )
If = y
g [1, 0, 0, 0; 0, COS(), 0, - SIN(); 0, 0, 1, 0; 0, SIN(), 0, COS()]APPEND([1], )
If = z
g [1, 0, 0, 0; 0, COS(), - SIN(), 0; 0, SIN(), COS(), 0; 0, 0, 0, 1]APPEND([1], )
RETURN [g2, g3, g4]

31

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

FUNCIONES DE BUSQUEDA
A
A
2,2 2,3
M

A
A
3,2 3,3
1 0
0

0 M
M
L
1,1 1,2

0 M
M

2,1 2,2
A
A
A
2,2 2,3 2,4

A
A
A
C 3,2 3,3 3,4

A
A
A
4,2 4,3 4,4
1 0
0
0

0 C
C
C

1,1 1,2 1,3

Q0 C
C
C

2,1 2,2 2,3

0 C
C
C

3,1 3,2 3,3


ORTOGONAL(A)
Prog
If IDENTICAL?(AA`, IDENTITY_MATRIX(DIM(A))) = true
RETURN 1
RETURN 0
MULTIPLICIDAD(A, )
Prog
d RANK(EXACT_EIGENVECTOR(A, ))
If d = RANK([])
RETURN 0
RETURN d
PUNTOS_INVARIANTES(A)
Prog
If DIM(A) = 3
Prog
h SOLVE(A[1, x, y] = [1, x, y], [x, y])
If h = false
RETURN 0
If LOGICAL?(h) = false h = true
RETURN 1

32

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines

JMC

If DIM(A) = 4
Prog
h SOLVE(A[1, x, y, z] = [1, x, y, z], [x, y, z])
If h = false
RETURN 0
If LOGICAL?(h) = false h = true
RETURN 1
EJE(A)
Prog
If DIM(A) = 4
Prog
If (EXACT_EIGENVECTOR(C, 1))1 [0] (EXACT_EIGENVECTOR(C, 1))2 = [0]
(EXACT_EIGENVECTOR(C, 1))3 = [0]
RETURN "X"
If (EXACT_EIGENVECTOR(C, 1))2 [0] (EXACT_EIGENVECTOR(C, 1))1 = [0]
(EXACT_EIGENVECTOR(C, 1))3 = [0]
RETURN "Y"
If (EXACT_EIGENVECTOR(C, 1))3 [0] (EXACT_EIGENVECTOR(C, 1))1 = [0]
(EXACT_EIGENVECTOR(C, 1))2 = [0]
RETURN "Z"
RETURN SOLVE(A[1, x, y, z] = [1, x, y, z], [x, y, z])
If DIM(A) = 3
Prog
If (EXACT_EIGENVECTOR(M, 1))1 [0] (EXACT_EIGENVECTOR(M, 1))2 = [0]
RETURN "X"
If (EXACT_EIGENVECTOR(M, 1))1 = [0] (EXACT_EIGENVECTOR(M, 1))2 [0]
RETURN "Y"
RETURN SOLVE(A[1, x, y] = [1, x, y], [x, y])
ANGULO_GIRO(A)
Prog
If DIM(A) = 4
Prog
If C11 = 1 C11 = -1
RETURN ACOS(C22)
If C22 = 1 C22 = -1
RETURN ACOS(C11)
If C33 = 1 C33 = -1
RETURN ACOS(C11)
If DIM(A) = 3
RETURN ACOS(M11)
BUSQUEDA(A)
Prog
If DIM(A) = 3
Prog
If ORTOGONAL(M) = 0
RETURN "La matriz introducida no representa un movimiento"
Prog
If DET(M) = 1
Prog
If IDENTICAL?(A, IDENTITY_MATRIX(DIM(A))) = true
RETURN "Es la identidad"
If MULTIPLICIDAD(M, 1) = 2 PUNTOS_INVARIANTES(A) = 0
RETURN {"Se trata de una traslacin de vector", [A21, A31]}
If MULTIPLICIDAD(M, -1) = 2 PUNTOS_INVARIANTES(A) = 1
RETURN ["Se trata de una simetra central respecto al punto", EJE(A)]
If MULTIPLICIDAD(M, 1) = 0 MULTIPLICIDAD(M, -1) = 0 PUNTOS_INVARIANTES(A) = 0
RETURN "Se trata de un giro respecto de un punto seguida de una traslacin"
If MULTIPLICIDAD(M, 1) = 0 MULTIPLICIDAD(M, -1) = 0 PUNTOS_INVARIANTES(A) = 1

33

Modelado de problemas matemticos con derive


Transformaciones ortogonales y afines
EJE(A)]

JMC

RETURN ["Se trata de un giro de ngulo", ANGULO_GIRO(A), "respecto del punto",

If DET(M) = -1
Prog
If MULTIPLICIDAD(M, 1) = 1 PUNTOS_INVARIANTES(A) = 0
RETURN {"Se trata de una simetra respecto del eje", EJE(A), "seguida de una
traslacin de vector", [A21, A31]}
If MULTIPLICIDAD(M, 1) = 1 PUNTOS_INVARIANTES(A) = 1
RETURN ["Se trata de una simetra respecto del eje", EJE(A)]
If DIM(A) = 4
Prog
If ORTOGONAL(C) = 0
RETURN "La matriz introducida no representa un movimiento"
Prog
If DET(C) = 1
Prog
If IDENTICAL?(A, IDENTITY_MATRIX(DIM(A))) = true
RETURN "Es la identidad"
If MULTIPLICIDAD(C, 1) = 3 PUNTOS_INVARIANTES(A) = 0
RETURN {"Es una traslacin de vector", [A21, A31, A41]}
If MULTIPLICIDAD(C, -1) = 2 PUNTOS_INVARIANTES(A) = 0
RETURN {"Es una simetra respecto del eje", EJE(A), "seguida de traslacin de vector",
[A21, A31, A41]}
If MULTIPLICIDAD(C, -1) = 2 PUNTOS_INVARIANTES(A) = 1
RETURN ["Simetria respecto al eje", EJE(A)]
If MULTIPLICIDAD(C, -1) = 0 MULTIPLICIDAD(C, 1) = 1 PUNTOS_INVARIANTES(A) = 1
RETURN ["Es un giro de ngulo", ANGULO_GIRO(A), "alrededor del eje", EJE(A)]
If MULTIPLICIDAD(C, -1) = 0 MULTIPLICIDAD(C, 1) = 1 PUNTOS_INVARIANTES(A) = 0
RETURN "Es un giro mas una traslacin"
If DET(C) = -1
Prog
If MULTIPLICIDAD(C, -1) = 1 MULTIPLICIDAD(C, 1) = 2 PUNTOS_INVARIANTES(A) = 1
RETURN ["Simetria respecto al plano", EJE(A)]
If MULTIPLICIDAD(C, -1) = 1 PUNTOS_INVARIANTES(A) = 0
RETURN ["Es una simetria respecto al plano", EJE(Q), "seguida de una traslacin de
vector", [A21, A31, A41]]
If MULTIPLICIDAD(C, -1) = 3 PUNTOS_INVARIANTES(A) = 1
RETURN ["Es una simetra central respecto al punto", EJE(A)]
If MULTIPLICIDAD(C, -1) = 1 MULTIPLICIDAD(C, 1) = 0 PUNTOS_INVARIANTES(A) = 1
RETURN ["Es un giro de angulo", ANGULO_GIRO(A), "seguido de una simetra respecto
a", EJE(A)]

34

Vous aimerez peut-être aussi