Sunteți pe pagina 1din 10

UNIVERSIDAD MAYOR DE SAN ANDRS

FACULTAD DE INGENIERIA
INGENIERIA INDUSTRIAL
DEPARTAMENTO DE CURSO BSICO

EL ENTORNO MATLAB

APLICACIONES AL ALGEBRA LINEAL


(CONTINUACION)
o TRANSFORMACIONES LINEALES

Mg. Sc. Ing. Rafael Valencia Goyzueta


MATLAB Marca registrada por The MathWorks, Inc
TRANSFORMACIONES LINEALES
Las transformaciones lineales son una clase especial de funciones entre espacios vectoriales, aquellas que
preservan las operaciones del espacio vectorial.

Sern tiles los siguientes comandos:

FUNCION SIGNIFICADO
Devuelve una base estndar para el espacio nulo obtenida a partir de la
Z=null(A,r)
reduccin de filas A*Z es un estimado de la nulidad de A
Da una Base ortonormal del ncleo de A (ZZ=I). El nmero de columnas de Z es
Z=null(A)
la nulidad de A
Da una base ortonormal para el rango de A (QQ=I). Las columnas de Q generan
Q=orth(A) el mismo espacio que las columnas de A, y el nmero de columnas de Q es el
rango de A
[E,base]=RREF(A) Devuelve la forma escalonada de A y una posible base del espacio de columnas
de A

MODIFICACION DE FIGURAS Y CUERPOS POR MEDIO DE TRANSFORMACIONES LINEALES


Modificacin de figuras en el plano
Los vectores y matrices se relacionan a travs de la multiplicacin matricial. Si A es una matriz fija de m n , a

cualquier vector de n 1 le podemos asociar un vector y A x de m 1 . Y esta correspondencia es el
principal ejemplo de una transformacin lineal.
Las transformaciones lineales desempean un papel muy importante en muchas reas de la ciencia e ingeniera
y de la vida diaria, por ejemplo en el procesamiento de imgenes y grficos en computadora.
Supongamos que un dibujante emplea computadoras y lgebra lineal para transformar los dibujos.

Supongamos que trata de dar la sensacin de movimientos a la primera imagen estirndola horizontalmente
para llegar a la segunda imagen. Si el estiramiento necesario a lo largo del eje x s es del 100%. cmo puede
modelarlo matemticamente y hacer que la computadora trace la imagen deseada?. El mtodo debera ser
independiente de la imagen verdad?.
Se le ocurre como resolver el problema?..
Un hecho importante de las transformaciones lineales es que ellas estn completamente determinadas por el
efecto sobre los vectores de una base. Si se conoce el efecto de una transformacin lineal sobre los vectores de
la base, entonces se conoce el efecto sobre cualquier otro vector.
Sigamos con nuestra bicicleta. Supongamos que queremos pasar de la figura 1 a la figura 3. Podemos ver esta
relacin de otra forma, definiendo una funcin de IR 2 en IR 2 que transforma el vector x, y en el vector
12 x, y , es decir:
Sea T:IR 2 IR 2 una transformacin lineal y supongamos que:
T 1, 0 1, 0 T 0,1 12 ,1 (1)
Queremos obtener T x, y para cualquier (x,y) x, y IR 2 . Como T
2
es lineal tenemos

x, y x 1, 0 y 0,1
Tomando transformaciones
T x, y T x 1, 0 y 0,1 xT 1, 0 yT 0,1
Por las condiciones dadas en (1)
1
1,0
T x, y x T 1, 0 y T 0,1 2 x 1, 0 y 12 ,1
,1

De donde se tiene:
x 2 y 1 2 x
1 1
1
T x, y x y , y

2 y 0 1 y
Es una transformacin lineal que satisface (1). Esta transformacin se llama deslizamiento a lo largo del eje x s
(cada punto se mueve a lo largo de la direccin x s una cantidad proporcional a la distancia del eje x s)

Esta funcin preserva las operaciones del , , en el sentido de que


espacio vectorial IR 2



T u v A u v A u A v T u T v y T k u A k u k A u k T u . Estas dos
propiedades caracterizarn a las transformaciones lineales.

Modificacin de figuras y cuerpos en el espacio


Al igual que en el plano, se puede ver en el espacio tridimensional, los efectos que produce una determinada
transformacin lineal sobre una figura o un cuerpo.
Para realizar la grafica d figuras o cuerpos se puede usar el comando plot3

COMANDO ACLARACIN
Dados los vectores X x1 x2 x3 xn , Y y1 y2 y3 yn
yZ z1 z2 z3 z n dibuja los puntos x1 , y1 , z1 , x2 , y2 , z2 ,
>> plot3(X,Y,Z) x3 , y3 , z3 ,, xn , yn , zn y los une con un segmento de recta. De esto se deduce
que el vector X esta formado por las primeras componentes de tales puntos y el
vector Y por las segundas componentes y el vector Z por las terceras
componentes.
Ejemplos (transformacin lineal en el plano y en el espacio):
Para el triangulo de vrtices P(0,0) Q(2,5) R(6,3) realizar una expansin a lo largo del eje x con un factor
de escala k 3 .
Solucin. Sea la transformacin lineal T : IR 2 IR 2 tal que T x, y 3 x, y . La matriz asociada a esta
3 0 x
transformacin respecto de la base cannica de IR 2 es: T x, y
0 1 y
>> P=[0 0]';
Se introducen los vectores P, Q, R expresados 5

>> Q=[2 5]'; 4.5


como vectores columna
>> R=[6 3]'; 4

Se construye la matriz T cuyas columnas son >> T=[P Q R P] 3.5

3
los vectores P, Q, R Esta matriz tiene como T=
2.5
primera fila a las absisas de los vrtices y como
0 2 6 0 2

segunda fila a las ordenadas 1.5


0 5 3 0
1
Se forman los vectores x y y de las abscisas y >> x=T(1,:); 0.5

ordenadas de los vrtices y se realiza la grafica >> y=T(2,:); 0


0 1 2 3 4 5 6

del triangulo >> plot(x,y)


>> A=[3 0;0 1] 5

A= 4.5

Se realiza el producto A por T para obtener las 4


3 0
imgenes 3.5

0 1 3

>> Im=A*T; 2.5

Se construyen los vectores x y y de las >> hold on 1.5

1 1 >> x1=Im(1,:); 1

abscisas y las ordenadas de las imgenes y se >> y1=Im(2,:); 0.5

0
realiza la grafica en una misma figura >> plot(x1,y1,'g') 0 2 4 6 8 10 12 14 16 18

Para el mismo triangulo realizar una expansin a lo largo del eje y con un factor de escala k 2 .
Solucin. La matriz asociada a la >> P=[0 0]';
transformacin es: >> Q=[2 5]'; 10

>> R=[6 3]'; 9

1 0 x
8
>> T=[P Q R P];
T x, y >> x=T(1,:); 7

0 2 y >> y=T(2,:); 6

5
>> plot(x,y) ;
4
>> A=[1 0;0 2];
3
>> Im=A*T;
2
>> hold on; 1
>> x1=Im(1,:); 0
0 1 2 3 4 5 6
>> y1=Im(2,:);
>> plot(x1,y1,'r')
>> grid
Realizar el trasquilado horizontal o deslizamiento a lo largo del eje x con un factor de escala k 5
Solucin. La matriz asociada a la >> P=[0 0]';
transformacin es: >> Q=[2 5]'; 5

>> R=[6 3]'; 4.5

1 5 x >> T=[P Q R P]; 4

T x, y y >> x=T(1,:); 3.5

0 1 >> y=T(2,:); 3

>> plot(x,y) ;
k 0 >> A=[1 -5;0 1];
2.5

k 5 >> Im=A*T; 1.5

>> hold on; 1

>> x1=Im(1,:); 0.5

>> y1=Im(2,:); 0
-25 -20 -15 -10 -5 0 5 10
>> plot(x1,y1,'r')
>> grid
Realizar una rotacin de 45 a la porcin de la parbola y x 2 2 en el intervalo 2, 2 .
cos
sen x
cos sen x
T x, y
4
Solucin. La matriz asociada a la TL es: T x, y 4

sen cos y sen y


cos
4 4
>> x=-2:.1:2;
Dibujamos la parbola original >> y=4*x.^2+2;
>> plot(x,y);
La matriz asociada >> A=[cos(pi/4) sin(pi/4) ;-sin(pi/4) cos(pi/4)];
Forma la matriz cuya primera fila esta 18
compuesta por las abscisas y la >> puntos=[x;y]; 16
segunda fila por las ordenadas de los
puntos de la parbola 14

12
Calcula la imagen de los puntos >> puntosIm=A*puntos;
10
>> hold on;
8
Forma el vector de abscisas y
>> x1=puntosIm(1,:);
coordenadas de los puntos de la 6
>> y1=puntosIm(2,:);
imagen 4

2
>> plot(x1,y1,'r')
Grafica la parbola rotada 0
>> grid -2 0 2 4 6 8 10 12 14 16

3 3
Dado el tetraedro de vrtices P=(-1,6,0), Q=(0,2,0),R =(2,4,0), y S=(0,4,5). Aplicar la TL T : IR IR
tal que T ( x, y , z ) (5 x,5 y ,5 z ) (La transformacin T produce una expansin a lo largo del eje y )
EXPANSION POR UN FACTOR

>> T=[-1 0 2 -1 0 2 0 0 -1 ;6 2 4 6 4 4 2 4 6 ;0 0 0 0 5 0 0 5 0];


>> x=T(1,:);y=T(2,:);z=T(3,:); 10

>> plot3(x,y,z,'b') 8
>> title('EXPANSION POR UN FACTOR');
6
>> A=[2 0 0;0 2 0;0 0 2];
4
>> pt=A*T;
>> hold on 2

>> xt=pt(1,:);yt=pt(2,:);zt=pt(3,:); 0
15
>> plot3(xt,yt,zt) 4
10
>> grid 5
2
0
0 -2

Dado el triangulo de vrtices P(2,3,-1) Q(5,0,-2) R(4,-2,0) aplique las siguientes transformaciones:

Simetra respecto del plano XY definida por T : IR 3 IR 3 tal que T x, y, z x, y, z .


Solucin. La matriz asociada a >> P=[2 3 -1]';
la transformacin es: >> Q=[5 0 -2]';
>> R=[4 -2 0]';
>> T=[P Q R P];
1 0 0 x >> x=T(1,:);
T x, y, z 0 1 0 y
2
>> y=T(2,:);
>> z=T(3,:); 1

0 0 1 z
>> plot3(x,y,z);
>> A=[1 0 0;0 1 0;0 0 -1]; 0
eje z

>> Im=A*T;
-1
>> hold on;
>> x1=Im(1,:);
-2
>> y1=Im(2,:); 4
5
>> z1=Im(3,:); 2
4
>> plot3(x1,y1,z1,'r') 0
3
>> xlabel('eje x '); eje y -2 2
eje x
>> ylabel('eje y ');
>> zlabel('eje z ');
>> grid
Simetra respecto del origen definida por T : IR 3 IR 3 tal que T x, y, z x, y, z .

Solucin. La matriz asociada a >> P=[2 3 -1]';


la transformacin es: >> Q=[5 0 -2]';
>> R=[4 -2 0]';
1 0 0 x >> T=[P Q R P];

T x, y, z 0 1 0 y
>> x=T(1,:);
>> y=T(2,:);
2
0 0 1 z >> z=T(3,:);
>> plot3(x,y,z); 1

>> A=[-1 0 0;0 -1 0;0 0 -1];


0

eje z
>> Im=A*T;
>> hold on; -1

>> x1=Im(1,:); -2
4 5
>> y1=Im(2,:); 2
>> z1=Im(3,:); 0 0
-2
>> plot3(x1,y1,z1,'r') -4 -5
eje y eje x
>> xlabel('eje x ');
>> ylabel('eje y ');
>> zlabel('eje z ');
>> grid

Simetra respecto del eje Z definida por T : IR 3 IR 3 tal que T x, y, z x, y, z .


Solucin. La matriz asociada a >> P=[2 3 -1]';
la transformacin es: >> Q=[5 0 -2]';
>> R=[4 -2 0]';
1 0 0 x >> T=[P Q R P];

T x, y, z 0 1 0 y
>> x=T(1,:);
>> y=T(2,:); 0

0 0 1 z >> z=T(3,:);
-0.5
>> plot3(x,y,z);
>> A=[-1 0 0;0 -1 0;0 0 1]; -1
eje z

>> Im=A*T;
-1.5
>> hold on;
>> x1=Im(1,:); -2
4
>> y1=Im(2,:); 2 5

>> z1=Im(3,:); 0
0
-2
>> plot3(x1,y1,z1,'r') eje y -4 -5
eje x
>> xlabel('eje x ');
>> ylabel('eje y ');
>> zlabel('eje z ');
>> grid
10. Para la figura mostrada en el plano (para esto considere usted las dimensiones
mas adecuadas). Realizar un programa en Matlab el cual permita aplicarle cualquier
transformacin lineal ingresando desde el teclado la matriz asociada.

function M=transformacion(A) % linea que define la funcion


%________________________________________________________
% Archivo de funcion que permite aplicar diversas transformaciones %
Creamos el programa lineales a
transformacion con extensin m. % una figura dada, ingresando la matriz asociada desde el teclado
que permite aplicar diversas %________________________________________________________
transformaciones ingresando la disp(' ______________________________________________________')
matriz asociada desde el teclado disp('| Archivo de funcion que permite aplicar diversas transformaciones |')
disp('| lineales a una figura dada, ingresando la matriz asociada |')
disp('| desde el teclado |')
disp(' _____________________________________________________')
A=input('Ingrese la matriz asociada entre corchetes a la TL lineal de R2 en R2: ')
dibuja la cara t=-3:.01:3;x=cos(t)+1;y=sin(t)+1;
plot(x,y,'r')
grid
axis equal
hold on
dibuja el cuerpo x1=[4 1 0 1 1 1 -1 1 3 4];y1=[-2 0 -2 -3 0 -4 -8 -4 -5 -8];
plot(x1,y1,'r')
% forma la matriz de puntos
Pcara=[x;y];Pcuerpo=[x1;y1];
aplica una transformacion lineal de Imcara=A*Pcara;
R2 en R2 cuya matriz asociada es Imcuerpo=A*Pcuerpo;
la ingresada A xim=Imcara(1,:);yim=Imcara(2,:);x1im=Imcuerpo(1,:);y1im=Imcuerpo(2,:);
plot(xim,yim,x1im,y1im,'b')
hold off
Llamamos al programa e
introducimos la matriz de >> transformacin
transformacin y se de despliega la Ingrese la matriz asociada entre corchetes a la TL de R2 en R2:
figura segn su matriz asociada.
0.5 0 x
T x, y Ingrese la matriz asociada entre corchetes a la TL de R2 en R2: [0.5 0;0 0.5]
0 0.5 y

1 0 x
T x, y
1 y
Ingrese la matriz asociada entre corchetes a la TL de R2 en R2: [-1 0;0 -1]
0
1 0 x
T x, y
1 y
Ingrese la matriz asociada entre corchetes a la TL de R2 en R2: [1 0;2 1]
5
Figura1 Figura 2 Figura 3
8 6

1 6 4

0
4 2
-1
2 0
-2

-3 0 -2

-4 -4
-2
-5
-4 -6
-6

-6 -8
-7

-8 -10
-4 -2 0 2 4 6 -8
-10 -8 -6 -4 -2 0 2 4 6 8 10 -8 -6 -4 -2 0 2 4 6 8 10


Dada la helice f t sen t , cos t , t aplique la siguiente transformacin dilatacin T : IR 3 IR 3
tal que T x, y , z 2 x, 2 y , 2 z .
2 0 0 x
Solucin. La matriz asociada a la transformacin es: T x, y , z 0 2 0 y
0 0 2
z
>> t = 0:pi/50:10*pi; HELICE

Grafica la helice >> x=sin(t);y=cos(t);z=t;


>> plot3(x,y,z,'m'); 80

>> title('HELICE')
60
>> grid
>> hold on 40

Aplicamos la 20

transformacin que la >> puntos=[x;y;z];


expande un factor K=2 >> M=[2 0 0;0 2 0;0 0 2]; 0
2

en todas las direcciones >> Im=M*puntos; 1 2


0 1
>> xim=Im(1,:);yim=Im(2,:);zim=Im(3,:); -1
0
-1
>> plot3(xim,yim,zim,'r') -2 -2
TRABAJO PRCTICO
MODIFICACION DE FIGURAS Y CUERPOS POR MEDIO DE TL CON MATLAB

1. Dibuje el cuadriltero de vrtices (0.1), (2,4) (4,4), (6,1) y luego aplique a este las siguientes transformaciones
lineales.

a) Expansin a lo largo del eje Y con un factor k 5


1
b) Contraccin en ambas direcciones con un factor de k
2
c) Reflexin respecto al eje x
2. Dibuje la figura de vrtices (2,-2), (2,7), (4,5), (2,3) y aplique a estas las siguientes transformaciones lineales

a) Expansin en ambas direcciones para un factor de k 4


b) Reflexin respecto al eje y

c) Rotacin en sentido positivo con centro en el origen y un ngulo de 60
d) Reflexin respecto del origen y luego una expansin a lo largo del eje x con un factor k 3

3. Dibuje la figura rellena de vrtices (2,3), (3,1), (6,1), (7,3), (6,6), (4,3), (3,6) y aplique a esta las siguientes
transformaciones lineales:

a) T : IR 2 IR 2 tal que T x, y x y, x y .
b) T : IR 2 IR 2 tal que T x, y 2 x 3 y,5 y .

4. Al triangulo de vrtices (2,3,-1), (5,0,-2), (4,-2,0) y aplique las siguientes transformaciones lineales:

a) Simetra respecto al plano IP : XY definida por T : IR 3 IR 3 tal que T x, y, z x, y, z .


b) Simetra respecto del origen, definidas por T : IR 3 IR 3 tal que T x, y, z 3x, 3 y, z .
1
c) Simetra respecto del eje Z definida por T : IR 3 IR 3 tal que T x, y, z x, y, z .
2

5. Dada la figura de vrtices (2,0,0), (1,5,3), (0,-3,4), (-6,5,3) Hallar su imagen respecto de la transformacin
lineal T : IR 3 IR 3 tal que T x, y, z 2 x, 2 y, 2 z y a la figura resultante aplicar la transformacin lineal
T : IR 3 IR 3 tal que T x, y, z x y, y, x y z ..

6. Dibujar el tetraedro de vrtices (2,4,0), (-1,6,0), (0,2,0), (0,4,5) y aplicar las siguientes transformaciones
lineales:

a) Rotacin alrededor del eje z con un ngulo de 60



b) Rotacin alrededor del eje x un ngulo 30

c) Rotacin alrededor del eje y un ngulo de 45
7. Dibujar el triangulo de vrtices (3,0,2), (1,-2,1), (0,1,3) y obtener su
proyeccin

a) Sobre el plano XY
b) Sobre el plano XZ
c) Sobre el plano YZ
Rellenar cada una de las figuras proyectadas con un distinto color como se
muestra en la figura de ejemplo.
;
8. Dibujar la carita de la figura (para esto considere usted las dimensiones mas
adecuadas). y a esta aplicarle las siguientes transformaciones lineales:

a) Simetra respecto al eje y


b) Simetra respect al eje x
c) Expandir respecto al eje x para un factor k 5

9. Dibujar la casita de la figura y a esta aplicarle las siguientes transformaciones


lineales:
a) Rotar la figura en sentido positivo un ngulo de30

b) Rotar la figura en sentido negativo un ngulo de 90
c) Simetra respecto al eje x
d) Simetra respecto al eje y
10. Dibujar el ciclista de la figura y a esta aplicarle las siguientes transformaciones
lineales:
a) Rotar la figura en sentido positivo un ngulo de 90
b) Simetra respecto al eje x
c) Simetra respecto al eje y

11. Dibujar la araa de la figura y a esta aplicarle las siguientes transformaciones


lineales:
a) Rotar la figura en sentido positivo un ngulo de30

b) Rotar la figura en sentido negativo un ngulo de 225
c) Pintar el cuerpo de la araa de rojo
d) Pintar las patas de azul y el cuerpo de verde

12. Dibujar al sujeto de la figura y a esta aplicarle las siguientes transformaciones


lineales:
a) Simetra respecto al eje x
b) Simetra respecto al eje y
c) Simetria respecto del origen

13. Dibujar la corona de la figura y a esta aplicarle las siguientes transformaciones


lineales:
a) Expandir a un factor de k 10
b) Contraer a un factor de k 2
c) Sombrear la corona en cuadriculas
14. Dibujar la corona de la figura y a esta aplicarle las siguientes transformaciones
lineales:
a) Girar un ngulo de 180

b) Girar un ngulo de 90
d) Contraer a un factor de k 2

14. Realizar una rotacin de 90, una reflexin respecto del origen, un desplazamiento a lo largo del eje x con
un factor de escala k=10 a las siguientes curvas

a) x2 y 2 9 x2 y 2
b) r 7 3 cos t
c) f (t ) 2 cos t ,5 sent

15. Corra el siguiente programa en Matlab.

function aracnido2
% Construye el cuerpo y las extremidades de la araa en el plano
t=0:0.1:6.3;
t1=5*cos(t)-5; t2=4*sin(t);
patch(t1,t2,[0.9 0.9 0.9])
grid
axis([-15 10 -10 10])
t3=2*cos(t)+2; t4=2*sin(t);
hold on
patch(t3,t4,[0.9 0.9 0.9])
% extremidades
x1=[-12 -5 0 -5 -12 -5 0 -1 2 -1 0 -1 2 -1 0 2 5 2 0 2 5];
x12=[-11 -4 0 -4 -11 -4 0 1 -2 1 0 1 -2 1 0 2 5 2 0 2 5];
y1=[-3 -5 0 5 3 5 0 -3 -7 -3 0 3 7 3 0 -3 -2 -3 0 3 2];
plot(x1,y1,'linewidth',3,'color','k')
axis([-15 10 -10 10])

function bicicleta
x01=[-1 -1 1 1];
y01=[0 1 1 0];
x02=[0 0.5 0 0.5 0 0 0 0.5 1 1];
y02=[1 0.5 0 0.5 1 2.25 1.5 1.25 1.25 1];
h=pi/10;
t=0:h:2*pi;
t01=0.5*sin(t)+1;;t02=0.5*cos(t);
t03=0.5*sin(t)-1;;t04=0.5*cos(t);
t05=0.25*sin(t);t06=0.25*cos(t)+2.5;
plot(x01,y01,'color','k','linewidth',3)
axis([-2 2 -1 4])
grid on
hold on
plot(x02,y02,'linewidth',4)
plot(t01,t02,'color','k','linewidth',3)
plot(t03,t04,'color','k','linewidth',3)
plot(t05,t06,'color','k','linewidth',3)

S-ar putea să vă placă și