gauss jordan

8
Soluci´on de Ecuaciones Simult´ aneas por el M´ etodo de Matrices Universidad de San Carlos de Guatemala Facultad de Ciencias Qu´ ımicas y Farmacia Matem´aticaIV Rony Jos´ e Letona QQ 200960024

Upload: citlaly-mtz

Post on 02-Jul-2015

119 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Gauss Jordan

Solucion de Ecuaciones Simultaneas porel Metodo de Matrices

Universidad de San Carlos de Guatemala

Facultad de Ciencias Quımicas y Farmacia

Matematica IV

Rony Jose Letona QQ 200960024

Page 2: Gauss Jordan

INDICE INDICE

Indice

1. Matrices 1

1.1. Resolucion de Sistemas de Ecuaciones . . . . . . . . . . . . . . . . . . . . . . . . . . 21.1.1. Operaciones de Renglon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.1.2. Metodo de Gauss-Jordan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2. Matrices Singulares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2. El Programa 5

2.1. Funciones con Listas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2. Resolucion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.3. Interfaz e Interaccion con el Usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.4. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

3. Bibliografıa 6

3.1. Libros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63.2. Herramientas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

0

Page 3: Gauss Jordan

1 MATRICES

1. Matrices

Cuando se trata de las ciencias exactas, son muchas las ocaciones en que nos encontramos consistemas de ecuaciones. Sea para balancear una reaccion quımica o para determinar la masa de uncuerpo estatico en un sistema, calcular el angulo entre dos objetos rotando alrededor de uno, etc.Sea cual sea el caso, siempre se reduce a un sistema de ecuaciones que en muchos casos represen-tamos por matrices.

Y que es una matriz? Una matriz es un arreglo de dos dimensiones en el que se han ordenadolas variables de un sistema de ecuaciones en columnas y en donde cada ecuacion individual esrepresentada por una fila. Para poder representar esto de mejor forma, tomemos un ejemplo.

Consideremos el siguiente sistema de ecuaciones

x − y = 1y + x = 3

(1)

Para obtener una matriz de este sistema, es necesario ordenar primero las ecuaciones de talforma en que las variables que sean iguales puedan encontrarse en columnas. Entonces, el sistematoma la forma siguiente

x − y = 1x + y = 3

(2)

Ahora, ya teniendo un sistema ordenado, se procede a mostrar los coeficientes de cada una delas variables de la siguiente forma

1 · x + (−1) · y = 11 · x + 1 · y = 3

(3)

Aprovechando la forma del sistema y su similitud a vectores en R2, se toma a los coeficientes

como vectores y la ecuacion se puede reescribir como una ecuacion vectorial

x

[

11

]

+ y

[

−11

]

=

[

13

]

(4)

Por ultimo, se hara la convencion de que x y y quedaran implıcitos en la primera y segundacolumna y que el signo = utilizado en las ecuaciones, sera sustituıdo por una barra. Despues detodo esto, el sistema de ecuaciones terminara como un arreglo al que se le llamara matriz.

[

1 −11 1

13

]

(5)

Generalizando ya, un sistema de ecuaciones como el siguiente

a11x1 + a12x2 + . . . + a1nxn = b1

a21x1 + a22x2 + . . . + a2nxn = b2

...am1x1 + am2x2 + . . . + amnxn = bm

(6)

Se puede representar por una matriz

1

Page 4: Gauss Jordan

1.1 Resolucion de Sistemas de Ecuaciones 1 MATRICES

a11 a12 . . . a1n

a21 a22 . . . a2n

......

. . ....

am1 am2 . . . amn

b1

b2

...bm

(7)

1.1. Resolucion de Sistemas de Ecuaciones

Ya dispuestas las ecuaciones en forma de matriz, se procede a resolver el sistema con el fin desaber el valor de cada variable. Para esto existen varios metodos analıticos. Uno de ellos es el metodode Cramer, que utiliza determinantes. Otro metodo es el de Gauss (publicado en 1809), aunqueeste requiere muchos caculos posteriores a la resolucion de la matriz. El metodo perfeccionado porWilhelm Jordan (publicado en 1887) nos provee de una solucion indmediatamente al terminar lasoperaciones en la matriz. Se procedera ahora a explicar las operaciones de renglon que permitenel uso de estos metodos para resolver el sistema de ecuaciones.

1.1.1. Operaciones de Renglon

Para los metodos de Gauss y Gauss-Jordan, se busca que la matriz adopte una forma trian-gular (forma de renglon escalonado) o de forma reducida de renglon escalonado solo realizandooperaciones de renglon. Estas operaciones son:

Suma

Multiplicacion por un Escalar

Intercambio de Renglones

Consideremos un ejemplo de cada una. Sea M una matriz de m filas y n columnas y c unescalar.

M =

a1,1 a1,2 a1,3

a2,1 a2,2 a2,3

a3,1 a3,2 a3,3

(8)

Suma

La suma de renglones se define de la siguiente forma: Se dice que a un renglon fi se le suma otrosi cada uno de los elementos del renglon fi se le suman los elementos de un renglon fj. Si a Mdecimos que sumamos los elementos de f1 a f2 entonces el resultado de vera de la forma siguiente:

a1,1 a1,2 a1,3

a2,1 a2,2 a2,3

a3,1 a3,2 a3,3

f2:f2+f1

−→

a1,1 a1,2 a1,3

a2,1 + a1,1 a2,2 + a1,2 a2,3 + a1,3

a3,1 a3,2 a3,3

(9)

Multiplicacion por un Escalar

La multiplicacion de un renglon por un escalar es lo mismo que multiplicar ambos lados de unaecuacion del sistema por un escalar tambien. Esta operacion se lleva a cabo de la siguiente forma:

2

Page 5: Gauss Jordan

1.1 Resolucion de Sistemas de Ecuaciones 1 MATRICES

a1,1 a1,2 a1,3

a2,1 a2,2 a2,3

a3,1 a3,2 a3,3

f2:c·f2

−→

a1,1 a1,2 a1,3

c · a2,1 c · a2,2 c · a2,3

a3,1 a3,2 a3,3

(10)

Intercambio de Renglones

Esta es probablemente la operacion mas sencilla de todas. Esta consta de un intercambio derenglones. La finalidad de esta operacion es obvia en el caso de encontrar matrices que parezcansingulares. Mas adelante se detallara esto. Por ahora, esta operacion se lleva a cabo de la siguienteforma:

a1,1 a1,2 a1,3

a2,1 a2,2 a2,3

a3,1 a3,2 a3,3

f1↔f2

−→

a2,1 a2,2 a2,3

a1,1 a1,2 a1,3

a3,1 a3,2 a3,3

(11)

1.1.2. Metodo de Gauss-Jordan

A continuacion se describira el metodo de Gauss-Jordan, ya que este es el utilizado por elprograma adjunto. El objetivo del metodo de Gauss-Jordan es de dejar la matriz con todos suscoeficientes iguales a cero excepto los de la diagonal principal. Estos se busca que sean 1 para quecada uno de el valor de cada variable buscada. El algoritmo para una matriz de 3 × 4 se puederesumir ası:

1. Convertir a a1,1 en 1.

2. Convertir a todos los elementos debajo de a1,1 en 0 por medio de a1,1.

3. Convertir a a2,2 en 1.

4. Convertir a todos los elementos debajo de a2,2 en 0 por medio de a2,2.

5. Convertir a a3,3 en 1.

6. Convertir a todos los elementos enima de a3,3 en 0 por medio de a3,3.

7. Convertir a todos los elementos enima de a2,2 en 0 por medio de a2,2.

Para fines didacticos se trabajara unicamente con un sistema de 3 ecuaciones y 3 incognitas.Queda al lector el trabajo de extrapolar este metodo para cualquier matriz de m × n.

Comencemos pues con las 3 ecuaciones.

3x + 5y − 2z = −5 (12)

7x − 3y +z

2= 9 (13)

−11x +y

2+ 6z = 13 (14)

3

Page 6: Gauss Jordan

1.2 Matrices Singulares 1 MATRICES

Esto se conviernte entonces en una matriz A de 3 × 4 de la forma

A =

3 5 −27 −3 1

2

−11 1

26

−5913

(15)

Procedamos a llevarla a la forma reducida de renglon escalonado siguiendo los 7 pasos delalgoritmo antes visto.

f1:1

3·f1

−→

1 5

3−

2

3

7 −3 1

2

−11 1

26

−5

3

913

(16)

f2:f2−7·f1

f3:f2+11·f1

−→

1 5/3 −2/30 −44/3 31/60 113/6 −4/3

−5/362/3−16/3

(17)

f2:−3

44·f2

−→

1 5/3 −2/30 1 −31/880 113/6 −4/3

−5/3−31/22−16/3

(18)

f3:f3−113

6·f2

−→

1 5/3 −2/30 1 −31/880 0 933/176

−5/3−31/22933/44

(19)

f3:176

933·f3

−→

1 5/3 −2/30 1 −31/880 0 1

−5/3−31/22

4

(20)

f2:f2+31

88·f3

f1:f1+2

3·f3

−→

1 5/3 00 1 00 0 1

104

(21)

f1:f1−5

3·f2

−→

1 0 00 1 00 0 1

104

(22)

De la ecuacion 22 entendemos nosotros que x = 1, y = 0 y que z = 4 ya que los demas coe-ficientes se han vuelto 0. Notese que el metodo de Gauss sigue el mismo procedimiento hasta elpaso 5, por lo que la solucion del sistema por medio del metodo de Gauss hubiera terminado en laecuacion 20.

1.2. Matrices Singulares

Existe un caso en el algoritmo anterior falla. Este caso es cuando la matriz analizada es singu-lar o aparenta serlo. En este caso pueden haber dos opciones: una en donde, con un intercambio

de renglones, el problema se puede arreglar (Matriz No Singular) y uno donde no (Matriz Singular).

4

Page 7: Gauss Jordan

2 EL PROGRAMA

Un ejemplo en donde una matriz que parece singular se arregla es este:

2 2 45 5 83 6 9

−→

1 1 20 0 −20 3 3

(23)

En este caso, con una simple operacion de renglon (intercambio de renglones) el sistema deecuaciones se puede seguir resolviendo.

−→

1 1 20 3 30 0 −2

−→

1 1 20 1 10 0 1

(24)

En el caso de una matriz singular, la resolucion del sistema de ecuaciones ya no se puedecontinuar. Veamos un ejemplo de este caso.

2 2 45 5 83 3 9

−→

1 1 20 0 −20 0 3

(25)

2. El Programa

El programa para resolver sistemas de ecuaciones utiliza un algoritmo basado en el descrito enla seccion anterior. Este fue esrito en el lenguaje de programcion Python. Se puede interpretar encualquier plataforma y no tiene lımites para el tamano de la matriz ingresada mas que el tamanode la memoria de trabajo del ordenador donde se este ejecutando el programa. Otra ventaja deeste lenguaje y este programa es que se puede agregar como rutina a otro tipo de programas yasea de forma explıcita, de manera que el usuario vea la rutina funcionar, o implıcita, en donde larutina es utilizada por el programa y el usuario nunca la ve.

A continuacion se describira brevemente la estructura general del programa, la forma de resol-ver los sistemas de ecuaciones y la forma en que este interactua con el usuario.

2.1. Funciones con Listas

El lenguaje de programacion utilizado no permite la creacion de un arreglo como lo es una ma-triz. Es por ello que dentro del programa, la matriz esta definida como un arreglo unidimensionalde varios arreglos unidimensionales de varias variables llamados listas.

En la ausencia de operaciones entre listas, se tuvo que definir funciones o metodos para cadaoperacion de renglon. Como se describio en la seccion anterior, las operaciones son suma, multi-

plicacion por un escalar e intercambio de renglones. Las dos primeras estan definidas dentrodel programa. La ultima operacion esta definida como una funcion que ademas de intercambiar

5

Page 8: Gauss Jordan

2.2 Resolucion 3 BIBLIOGRAFIA

renglones, busca los adecuados para no caer en un problema de matrices singulares.

2.2. Resolucion

La forma en que el programa resuelve la matriz es exactamente igual al algritmo descrito en laseccion anterior. La unica diferencia apreciable es que en el programa, el algoritmo de resoluciones una funcion basada en otras funciones. EL programa solo hace uso de esta una vez, ingresandola matriz original y obteniendo una matriz completamente resuelta si esta no es singular.

Es justo en este punto en el programa que este puede ser utilizado como rutina en otros pro-gramas. Lo demas en el programa es para la interfaz e interaccion con el usuario.

2.3. Interfaz e Interaccion con el Usuario

La interfaz con el usuario se decidio hacer en lınea de comando, ya que el programa puede tra-bajar con matrices de dimensiones muy grandes. El problema con tener una matriz de dimensionesmuy grandes es que es un poco difıcil representarla con una interfaz grafica. Ademas, una interfazgrafica limitarıa al programa si este corriera como rutina.

Por ultimo, vale la pena mencionar que dentro del programa se incluyo algunas funciones paraprogramacion defensiva. El programa no le permite al usuario cometer errores al ingresar los datosde la matriz. Esto evita errores en la interpretacion del programa por parte del ordenador dondese este trabajando.

2.4. Conclusiones

En conclusion, esta solo fue una idea general sobre el programa para resolver matrices utilizandoel metodo de Gauss-Jordan. Para mas informacion se recomienda leer la documentacion internadel codigo fuente del programa.

3. Bibliografıa

3.1. Libros

Grossman S. 1984. Elementary Linear Algebra. 2 ed. Wadsworth

Poole D. 2004. Algebra Lineal: Una Introduccion Moderna. Thomson

3.2. Herramientas

TexMaker: Free LATEX Editor. Version 1.7. 2008.http://www.xm1math.net/texmaker/

Python: Interactive, High-Level Object-Oriented Language. Version 2.5.2.http://www.python.org/

6