Sei sulla pagina 1di 10

PR

ACTICA 3: MATLAB Y LA FORMA REDUCIDA POR FILAS


JES

US GAGO E IGNACIO OJEDA


Introducci

on
En esta pr actica aprenderemos a manejar el comando rref de MATLAB, que calcula la
forma reducida por las de una matriz; tambien se veran algunas de sus aplicaciones.
Prerrequisitos: cierta familiaridad con calculos a mano de la forma reducida por las
de una matriz.
1. Resoluci

on de sistemas con MATLAB


Hasta ahora, hemos invertido cierto tiempo para resolver sistemas de ecuaciones lineales
a mano, con lo que advertimos que es un proceso largo y con tendencia a que se produzcan
errores. En cuanto la matriz de coecientes es de un tama no superior a 5 5, lo mas
probable es que nos equivoquemos en el resultado. Vamos a ver como puede MATLAB
ayudarnos en el proceso.
En primer lugar, recordemos algunas deniciones. El primer elemento no nulo en cada
la de una matriz se denomina pivote. Una matriz se dice que esta en forma escalonada
por las si
Las las de ceros aparecen en la parte inferior de la matriz.
Cada pivote es 1.
Cada pivote aparece en una columna estrictamente a la derecha del pivote de la
la anterior.
Se dice que una matriz esta en forma reducida por las si satisface ademas otra propiedad
Cada pivote es el unico elemento no nulo en su columna.
Se sabe que toda matriz es equivalente a una matriz reducida por las, es decir, que
mediante transformaciones elementales (por las) toda matriz se puede convertir en una
matriz reducida por las.
Por otra parte, es de sobra conocido que cuando se resuelve un sistema de ecuaciones
de la forma
(1.1)
a
11
x
1
+a
12
x
2
+. . . +a
1n
x
n
= b
1
a
21
x
1
+a
22
x
2
+. . . +a
2n
x
n
= b
2
.
.
.
a
m1
x
1
+a
m2
x
2
+. . . +a
mn
x
n
= b
m
_

_
puede ocurrir que
el sistema tenga una unica solucion, o
el sistema no tenga solucion, o
el sistema tenga innitas soluciones.
Veamos un ejemplo de cada caso.
1
2 JES

US GAGO E IGNACIO OJEDA


Solucion unica.
Consideremos el sistema
(1.2)
x
1
+x
2
+x
3
= 6
x
1
2x
3
= 4
x
2
+x
3
= 2
_
_
_
La matriz ampliada de este sistema es
(1.3)
_
_
1 1 1 6
1 0 2 4
0 1 1 2
_
_
,
que podemos introducirla en el espacio de trabajo de MATLAB con
>> A=[1,1,1,6;1,0,-2,4;0,1,1,2]
El comando rref de MATLAB calcula la forma reducida por las de la matriz A.
>> R=rref(A)
El commando rrefmovie de MATLAB nos muestra paso a paso como ha obtenido la forma
reducida por las.
>> rrefmovie(A)
Hemos obtenido que la forma reducida por las de la matriz ampliada (1.3) es
(1.4)
_
_
1 0 0 4
0 1 0 2
0 0 1 0
_
_
.
Esta matriz representa al sistema
(1.5)
x
1
= 4
x
2
= 2
x
3
= 0
_
_
_
que es equivalente al sistema (1.2). Por tanto, el sistema (1.2) tiene solucion unica (4, 2, 0).
Es interesante considerar la geometra de este ejemplo. Cada una de las ecuaciones del
sistema (1.2) representa un plano en el espacio de 3 dimensiones. Como se puede ver en la
Figura (1), las tres ecuaciones del sistema (1.2) producen tres planos. Observemos ademas
que la interseccion de los tres planos en la Figura (1) es un unico punto, lo que coincide
con nuestro resultado.
PR

ACTICA 3: MATLAB Y LA FORMA REDUCIDA POR FILAS 3


20
0
20
40
10
0
10
20
10
5
0
5
10
Figura 1. Un sistema con solucion unica. Los tres planos se cortan en un punto.
Sin soluciones.
Consideremos ahora el sistema
(1.6)
x
1
+x
2
+x
3
= 6
x
1
2x
3
= 4
2x
1
+x
2
x
3
= 18
_
_
_
La matriz ampliada del sistema es
(1.7)
_
_
1 1 1 6
1 0 2 4
2 1 1 18
_
_
,
que podemos introducirla en MATLAB con el comando
>> A=[1,1,1,-6;1,0,-2,4;2,1,-1,18]
Usamos el comando rref para calcular la forma reducida por las.
>> R=rref(A)
Por tanto, la forma reducida por las de la matriz (1.7) es
(1.8)
_
_
1 0 2 0
0 1 3 0
0 0 0 1
_
_
Observemos la ultima la de la matriz 1.8. Representa la ecuacion
(1.9) 0x
1
+ 0x
2
+ 0x
3
= 1
Es claro que la ecuacion 1.9 no tiene solucion. Por tanto, el sistema 1.6 tampoco. Decimos
que el sistema 1.6 es incompatible.
4 JES

US GAGO E IGNACIO OJEDA


30
20
10
0
10
20
30
10
5
0
5
10
10
8
6
4
2
0
2
4
6
8
10

Figura 2. Dos planos se cortan en una recta, paralela al otro. No hay
puntos comunes en la interseccion.
De nuevo, la representacion geometrica aporta luz a lo anterior. Como podemos ver en
la gura 2, cada plano corta a otro en una recta, pero esa recta es paralela al otro plano.
Por tanto, no hay puntos comunes a los tres planos, que coincide con nuestro resultado
algebraico.
Innitas soluciones.
Como ejemplo nal, consideremos el sistema
(1.10)
x
1
+x
2
+x
3
= 6
x
1
2x
3
= 4
2x
1
+x
2
x
3
= 10
_
_
_
La matriz ampliada del sistema es
(1.11)
_
_
1 1 1 6
1 0 2 4
2 1 1 10
_
_
y en MATLAB queda
>> A=[1,1,1,6;1,0,-2,4;2,1,-1,10]
Usamos el comando rref
>> R=rref(A)
y la forma reducida por las de la matriz 1.11 es
(1.12)
_
_
1 0 2 4
0 1 3 2
0 0 0 0
_
_
.
Observemos que tenemos una la de ceros en la parte inferior de la matriz. Ademas,
tenemos solamente dos pivotes. Es muy importante, en este momento, identicar las
PR

ACTICA 3: MATLAB Y LA FORMA REDUCIDA POR FILAS 5


variables pivotes y las variables libres. Observemos que las columnas 1 y 2 tienen pivotes.
Por tanto, x
1
y x
2
son variables pivote. La columna 3 no tiene pivote. As, la variable x
3
es libre.
Como la ultima la de la matriz representa la ecuacion
(1.13) 0x
1
+ 0x
2
+ 0x
3
= 0,
que se verica para cualesquiera valores de x
1
, x
2
y x
3
, unicamente necesitamos encontrar
los valores de x
1
, x
2
y x
3
que satisfacen las ecuaciones representadas por las dos primeras
las de la matriz 1.12
(1.14)
x
1
2x
3
= 4
x
2
+3x
3
= 2
_
Ahora el metodo es simple y directo. Resolvemos cada ecuacion para su variable pivote
en funcion de la variable libre. As nos queda
(1.15)
x
1
= 4 + 2x
3
x
2
= 2 3x
3
.
_
Es habitual colocar parametros para representar la variable libre. Por ejemplo, si hacemos
x
3
= , el sistema 1.10 tiene innitas soluciones, descritas por
(1.16) x
1
= 4 + 2, x
2
= 2 3, x
3
=
donde es cualquier n umero real. Por cada valor que demos a obtenemos una solucion.
Por ejemplo, para = 0 obtenemos la solucion (4, 2, 0). Para = 1 nos queda (6, 1, 1).
De nuevo, la visualizacion geometrica nos aclara lo anterior. Como podemos ver en la
gura 3, los tres planos se cortan a lo largo de una recta. Por tanto, hay un n umero innito
de soluciones, que coincide con nuestra conclusion anterior.
20 0 20 40
10
0
10
10
5
0
5
10
Figura 3. Los tres planos se cortan en una recta, que contiene un n umero
innito de puntos.
2. M

as dif

cil todav

a
El panico suele crecer cuando el n umero de ecuaciones e incognitas se incrementa. Por
supuesto, este aumento hace las cosas un poco mas difciles, pero si seguimos una sencillas
reglas estas dicultades desaparecen.
6 JES

US GAGO E IGNACIO OJEDA


Identica las variables pivot. Esto se consigue observando las columnas que son
pivote.
Identica las variables libres. Esto se obtiene observando las columnas que no
tienen pivote.
Resuelve cada ecuacion colocando cada variable pivot en funcion de la libres.
Cambia las variables libres por parametros.
Por ejemplo, consideremos el siguiente sistema
(2.17)
4x
1
2x
2
+2x
4
4x
5
+4x
6
= 2
4x
1
+x
2
3x
4
+4x
5
4x
6
= 3
x
1
2x
2
3x
4
+x
5
x
6
= 3
2x
2
2x
4
= 2
A simple vista, el problema puede echar para atras por su tama no. Si seguimos las reglas
anteriores, no tendremos problema para encontrar la solucion. En primer lugar, consider-
emos la matriz ampliada,
(2.18)
_
_
_
_
4 2 0 2 4 4 2
4 1 0 3 4 4 3
1 2 0 3 1 1 3
0 2 0 2 0 0 2
_
_
_
_
y la introducimos en MATLAB.
>> A=[-4,-2,0,2,-4,4,2;4,1,0,-3,4,-4,-3;1,-2,0,-3,1,-1,-3;0,-2,0,-2,0,0,-2]
Calculamos la forma reducida por las con rref.
>> R=rref(A)
Las columnas uno y dos tienen pivotes. Por tanto, x
1
y x
2
son variables pivote. Las
restantes incognitas, x
3
, x
4
, x
5
y x
6
son variables libres.
Las ultimas las de ceros se pueden ignorar, porque estas ecuaciones las verican todos
los valores. As, solamente debemos resolver el sistema
(2.19)
x
1
x
4
+x
5
x
6
= 1
x
2
+x
4
= 1
_
Resolvemos cada ecuacion para su variable pivote.
(2.20)
x
1
= 1 +x
4
x
5
+x
6
x
2
= 1 x
4
_
Pongamos las variables libres como parametros. Por ejemplo, x
3
= , x
4
= , x
5
= , x
6
=
y nos queda
(2.21)
x
1
= 1 + + ,
x
2
= 1 ,
x
3
= ,
x
4
= ,
x
5
= ,
x
6
= ,
PR

ACTICA 3: MATLAB Y LA FORMA REDUCIDA POR FILAS 7


donde , , , son n umeros reales arbitrarios. Entonces el sistema 2.17 tiene innitas
soluciones, y las podemos obtener dando valores a los parametros de 2.21.
Como podemos ver, cuando el n umero de incognitas y ecuaciones crece, el problema
se vuelve mas difcil. No obstante, tambien observamos que con estas simples reglas, el
tama no no debe ser un problema.
3. Matriz inversa y forma reducida por filas
Sea A = (a
ij
) M
n
(k) una matriz invertible. Por ejemplo,
A =
_
_
1 1 0
2 0 3
0 2 1
_
_
>> A = [1, -1, 0; 2, 0, -3; 0, 2, 1]
La orden inv de MATLAB calcula la matriz inversa de A.
>> B = inv(A)
>> A*B
Veamos otra forma de calcular la inversa de A usando forma reducida por las. Para
ello basta tener en cuenta que, por denicion, la matriz inversa de A es la unica matriz
X = (x
ij
) M
n
(k) tal que
AX = I
n
;
por lo que la columna j-esima de X es la ( unica) solucion del sistema
A(x
1j
, . . . , x
nj
)
t
= (0, . . . , 0,
j)
1, 0, . . . , 0)
t
.
Por consiguiente, si partimos de la matriz (A|I
n
) M
n2n
(k) y calculamos su forma
reducida por las llegaremos a la matriz (I
n
|A
1
).
>> I = eye(3)
>> AI = [A,I]
>> rAI = rref(AI)
>> X = rAI(1:3,4:6)
>> A*X
De hecho, los programas de ordenador usan este metodo (o variantes del mismo) para
calcular la matriz inversa, y no la formula por todos conocida que tiene un coste de tiempo
prohibitivo.
8 JES

US GAGO E IGNACIO OJEDA


Ejercicios.
Introduce el disco con tu nombre en la disquetera del ordenador.
Escribe
>> diary a:\practica03.txt
>> % Practica 03 de NOMBRE APELLIDOS
donde pone NOMBRE APELLIDOS debes escribir tu nombre y apellidos en may uscu-
las.
Recuerda que el smbolo % sirve para introducir comentarios que no seran evaluados por
MATLAB. De este modo puedes responder aquellos ejercicios que requieran alguna expli-
cacion.
Ejercicio 3.1.
Cada una de las siguientes matrices representa la matriz ampliada de un sistema lineal.
Realiza las siguientes tareas para cada caso.
Introduce la matriz en MATLAB y con el comando rref calcula la forma reducida
por las. Copiala en un papel.
Identica variables pivote y variables libres.
Resuelve cada ecuacion para su variable pivote.
Asigna parametros a las variables libres.
(a)
_
_
_
_
_
_
_
3 1 0 1 3 1 2 3
2 0 0 0 2 0 2 2
3 0 0 1 1 2 1 1
0 0 0 1 2 2 2 2
3 1 0 0 1 1 2 1
1 4 0 2 5 0 1 5
_
_
_
_
_
_
_
.
(b)
_
_
_
_
_
_
_
_
_
_
_
2 2 2 1 1 2 1 1 0
1 2 2 1 3 1 2 1 0
0 0 1 0 3 2 1 1 0
1 0 0 2 2 1 1 0 0
2 1 0 1 2 1 0 1 2
0 1 2 1 4 1 2 1 0
0 1 2 1 2 1 2 1 2
2 1 0 1 0 1 1 1 1
_
_
_
_
_
_
_
_
_
_
_
.
Ejercicio 3.2. Juan tiene 4 euros en monedas de 1, 2, 5 y 10 centimos de euro. Tiene
igual n umero de monedas de 2 centimos y de 5 centimos, y en total tiene 100 monedas.
De cuantas formas es esto posible?
Ejercicio 3.3. Usar el metodo de Gauss para resolver simultaneamente los sistemas
4x 8y + 5z = 1 0 0
4x 7y + 4z = 0 1 0
3x 4y + 2z = 0 0 1
PR

ACTICA 3: MATLAB Y LA FORMA REDUCIDA POR FILAS 9


Ejercicio 3.4. Consideremos la siguiente matriz
A =
_
_
_
_
4 2 4 0
2 10 22 4
5 2 5 2
24 6 16 8
_
_
_
_
.
Si R es la forma reducida por las de A, calcular, usando MATLAB, las matrices Q y P
tales que Q
1
AP = R.
Calcular la forma reducida por columnas de A, la forma reducida y las matrices de paso
cada caso.
Ejercicio 3.5. Supongamos que 100 insectos se distribuyen en una camara que consta
de 4 habitaciones con pasajes entre ellos tal como aparece en la gura (4). Al nal de
un minuto, los insectos se han redistribuido. Supongamos que un minuto no es bastante
tiempo para que un insecto visite mas de una habitacion y al nal de un minuto el 40 %
de los insectos de cada habitacion permanece en ella. Los insectos que la abandonan se
distribuyen uniformemente entre las demas habitaciones que son accesibles desde la que
ocupan inicialmente. Por ejemplo, desde la habitacion 3, la mitad de los que se mueven
van a 2 y la otra mitad a 4.
1. Si al nal de un minuto hay 12, 25, 26 y 37 insectos en las habitaciones 1, 2, 3 y 4,
respectivamente, determinar la distribucion inicial.
2. Si la distribucion inicial es 20, 20, 20 y 40 Cual es la distribucion al nal de un
minuto?
# 3
# 4
# 2
# 1
Figura 1:
Ejercicio 7. Supongamos que 100 insectos se distribuyen en una camara que consta de 4 habitaciones con pasajes
entre ellos tal como aparece en la gura 1. Al nal de un minuto, los insectos se han redistribuido. Supongamos que
un minuto no es bastante tiempo para que un insecto visite mas de una habitacion y al nal de un minuto el 40 %
de los insectos de cada habitacion permanece en ella. Los insectos que la abandonan se distribuyen uniformemente
entre las demas habitaciones que son accesibles desde la que ocupan inicialmente. Por ejemplo, desde la habitacion 3,
la mitad de los que se mueven van a 2 y la otra mitad a 4.
1. Si al nal de un minuto hay 12, 25, 26 y 37 insectos en las habitaciones 1, 2, 3 y 4, respectivamente, determine la
distribucion inicial.
2. Si la distribucion inicial es 20, 20, 20 y 40, cual es la distribucion al nal de un minuto?
Ejercicio 8. Use el metodo de Gauss-Jordan para resolver a la vez los tres sistemas
2x
1
8x
2
= 1 | 0 | 0
x
1
+2x
2
x
3
= 0 | 1 | 0
x
2
+x
3
= 0 | 0 | 1
Ejercicio 9. Resuelva los siguientes sistemas con redondeo a tres dgitos. Repita las operaciones con pivoteo parcial
y pivoteo parcial escalado, respectivamente. Compare los resultados con las soluciones exactas:

0,03x
1
+ 58,9x
2
= 59,2
5,31x
1
6,10x
2
= 47,0

3,3330x
1
+ 15920x
2
+ 10,33x
3
= 7953
2,2220x
1
+ 16,710x
2
+ 9,6120x
3
= 0,965
1,5611x
1
+ 5,1792x
2
1,6855x
3
= 2,714

x
1
ex
2
+

2x
3

3x
4
=

11

2
x
1
+ ex
2
e
2
x
3
+
3
7
x
4
= 0

5x
1

6x
2
+ x
3

2x
4
=

3
x
1
+ e
2
x
2

7x
3
+
1
9
x
4
=

2
Ejercicio 10. Consideremos el sistema
10
3
x y = 1
x +y = 0
1. Calcule una solucion con aritmetica de 3 dgitos y sin pivoteo.
2. Calcule una solucion con aritmetica de 3 dgitos con pivoteo parcial.
3. Calcule una solucion exacta.
4. Compare los dos primeros apartados con la solucion exacta redondeada a tres dgitos.
Ejercicio 11. Consideremos el sistema
x +y = 3
10x +10
5
y = 10
5
2
Figura 4. Distribucion de las camaras y los pasajes.
Ejercicio 3.6. En la gura (5) aparece una placa de acero. La temperatura en cada punto
de la placa es constante (no cambia con el tiempo). La temperatura en cada punto del
retculo en el borde de la placa aparece en la gura. Sea t
i
la temperatura en grados en
cada punto del retculo en el interior de la placa. Supongamos que la temperatura en cada
punto interior del retculo es la media de las temperaturas de sus cuatro puntos vecinos.
Calcula la temperatura t
i
en cada punto interior del retculo.
10 JES

US GAGO E IGNACIO OJEDA


t
1
t
2
t
3
t
4
t
5
t
6
t
7
t
8
t
9
0
0
C 0
0
C 0
0
C
g4.01
Figura 5. Distribucion de temperatura en una placa de metal.

Potrebbero piacerti anche