Vous êtes sur la page 1sur 6

ANLISIS NUMRICO

ICM ESPOL

SISTEMAS DE ECUACIONES LINEALES

En este captulo se estudia el componente algortmico y computacional de los mtodos directos


para resolver sistemas de ecuaciones lineales.
Se desea resolver el siguiente sistema de n ecuaciones lineales con n variables
a1,1x1 a1,2 x1 ... a1,n x n b1
a2,1x1 a2,2 x1 ... a 2,n xn b2
...
an,1x1 an,2 x1 ... an,n xn bn

En donde
ai,j : Coeficientes

bi : Constantes
xi : Variables cuyo valor debe determinarse
En notacin matricial:
a1,1
a
2,1
...

an,1

a1,2

...

a2,2

...

an,1

...

a1,n x1 b1
a 2,n x 2 b2

... ... ...

an,n xn bn

Simblicamente
AX = B
Siendo
a1,1
a
2,1
A
...

an,1

3.1

a1,2

...

a2,2

...

an,1

...

a1,n
a2,n
; B
...

an,n

b1
x1
b

2 ; X x2
...
...


bn
xn

Determinantes y sistemas de ecuaciones lineales


-1

Sea A la matriz de coeficientes del sistema AX = B. Sea A su inversa y |A| su determinante.


La relacin entre |A| y la existencia de la solucin X se establece con la siguiente definicin:
[adj(A)]t
,
A 1
|A|
t

En donde [adj(A)] es la matriz adjunta de la matriz A.


Si |A| 0 , entonces A 1 existe, y se puede escribir:

AX B

A 1AX A 1B

IX A 1B X A 1B

En donde I es la matriz identidad. En resumen, si |A| 0 entonces X existe y adems es nico.

Ing. Luis Rodrguez Ojeda, MSc.

ANLISIS NUMRICO

3.2

ICM ESPOL

Mtodo de Gauss - Jordan

La estrategia de este mtodo consiste en transformar la matriz A del sistema AX = B y reducirla


a la matriz identidad I. Segn el enunciado anterior, esto es posible si | A | 0. Aplicando
simultneamente las mismas transformaciones al vector B, este se convertir en el vector
solucin A 1B .
En caso de que esta solucin exista, el procedimiento debe transformar las ecuaciones mediante
operaciones lineales que no modifiquen la solucin del sistema original, estas pueden ser:
a) Intercambiar ecuaciones
b) Multiplicar ecuaciones por alguna constante no nula
c) Sumar alguna ecuacin a otra ecuacin

3.2.1 Formulacin del mtodo de Gauss-Jordan


Para unificar la descripcin algortmica, es conveniente aumentar la matriz A con el vector B
pues deben realizarse simultneamente las mismas operaciones:
a1,1 a1,2 ... a1,n a1,n 1
a

2,1 a 2,2 ... a 2,n a 2,n 1


A |B
...
... ... ...
...

an,1 an,2 ... an,n an,n1


En donde se ha agregado la columna n+1 con el vector de las constantes:
ai,n+1 = bi, i = 1, 2, 3, ..., n

(columna n+1 de la matriz aumentada)

El objetivo es transformar esta matriz y llevarla a la forma de la matriz identidad I:

a1,1 a1,2
a
2,1 a 2,2
A |B
...
...

a
a
n,2
n,1

... a1,n
... a2,n
... ...
... an,n

1 0
a1,n 1

a2,n1
0 1
...

...
... ...

an,n1
0 0

... 0 a1,n 1

... 0 a2,n 1
... ... ...

... 1 an,n 1

Si es posible realizar esta transformacin, entonces los valores que quedan en la ltima columna
constituirn el vector solucin X
Las transformaciones deben ser realizadas en forma sistemtica en n etapas, obteniendo
sucesivamente en cada etapa, cada columna de la matriz identidad, de izquierda a derecha.
En cada etapa, primero se har que el elemento en la diagonal tome el valor 1. Luego se har
que los dems elementos de la columna tomen el valor 0.

1 0

0 1
... ...

0 0

... 0 a1,n 1

... 0 a2,n 1
... ... ...

... 1 an,n 1

Etapa 1

Etapa n
Etapa 2

(escribir versin MATLAB en cada paso)

Ing. Luis Rodrguez Ojeda, MSc.

ANLISIS NUMRICO

ICM ESPOL

Etapa 1

a 1,1

Normalizar la fila 1:

(colocar 1 en el lugar del elemento

a1,j a1,j / a1,1

j=1, 2, ..., n+1; supones que a1,1 0

Reducir las otras filas: (colocar 0 en los otros elementos de la columna 1)


ai,j ai,j ai,1a1,j ,
j=1, 2, ..., n+1; i=2, 3, ..., n
a1,1

a2,1
A |B
...

an,1

a1,2

...

a2,2

...

an,1

...

a1,n a1,n1
1

a2,n a2,n1
0

...
...
...

an,n an,n1
0

a1,2

...

a2,2

...

an,1

...

a1,n a1,n1

a2,n a2,n1
...
...

an,n an,n1

Valores
transformados

Etapa 2

Normalizar la fila 2: (colocar 1 en el lugar del elemento a2,2


j=2, 3, ..., n+1; a 2,2 0

a2,j a2,j / a2,2

Reducir las otras filas: (colocar 0 en los otros elementos de la columna 2


ai,j ai,j ai,2 a2,j ,
j=2, 3, ..., n+1; i=1, 3, ..., n

1
0

a1,2
a2,2

...
...

...
0

an,1

...

a1,n a1,n 1
1

a2,n a2,n1
0

...
...
...

an,n an,n1
0

0
1

...
...

...

a1,n a1,n1

a2,n a2,n1
...
...

an,n an,n1

La formulacin obtenida en estas dos etapas se puede extender y obtener una frmula general:
Etapa e = 1, 2, . . ., n
Normalizar la fila e:
a e,j ae,j / a e,e ,

j=e, e+1, ..., n+1;

Reducir las otras filas:


ai,j ai,j ai,e ae,j ,
j=e, e+1, ..., n+1;

a e,e 0

i=1, 2, 3, ..., n;

ie

Al completar todas las operaciones se obtendr finamente:


1 0 ... 0 a1,n 1

0 1 ... 0 a2,n1
...
... ...

0 0 ... 1 an,n1

De donde se puede escribir la solucin


xi ai,n 1 ,

Valores
transformados

i=1, 2, . . ., n

Ing. Luis Rodrguez Ojeda, MSc.

ANLISIS NUMRICO

ICM ESPOL

3.2.2 Eficiencia del mtodo de Gauss-Jordan


El mtodo de Gauss-Jordan es un mtodo directo. Los mtodos directos pueden estar afectados
por el error de redondeo, es decir los errores en la representacin de los nmeros que se
producen en las operaciones aritmticas. Para cuantificar la magnitud del error de redondeo se
define la funcin de eficiencia del mtodo.
Sea n el tamao del problema y T(n) la cantidad de operaciones aritmticas que se realizan
2
En la normalizacin:
T(n) = O(n )
(Dos ciclos anidados)
3
En la reduccin:
T(n) = O(n )
(Tres ciclos anidados)
3

Por lo tanto, este mtodo es de tercer orden: T(n) = O(n )


Mediante un conteo recorriendo los ciclos del algoritmo, se puede determinar en forma mas
3
2
precisa la funcin de eficiencia para este mtodo directo: T(n) = n /2 + O(n ).

Ejemplo. Con el Mtodo de Gauss-Jordan resuelva el siguiente sistema de ecuaciones lineales

4x1 2x 2 5x 3 18.00
2x1 5x 2 8x 3 27.30
2x1 4x 2 3x 3 16.20

Solucin: La matriz aumentada es:

4 2 5 18.00
A | B 2 5 8 27.30
2 4 3 16.20
Las transformaciones sucesivas de la matriz aumentada se describen en los siguientes cuadros
Normalizar fila 1
1.0000
2.0000
2.0000

(Dividir fila 1 para 4)


0.5000 1.2500 4.5000
5.0000 8.0000 27.3000
4.0000 3.0000 16.2000

Reducir filas 2 y 3
1.0000
0
0

Normalizar fila 2

(Restar de cada fila, la fila 1 multiplicada por el elemento de la columna 1)

0.5000 1.2500 4.5000


4.0000 5.5000 18.3000
3.0000 0.5000 7.2000

(Dividir fila 2 para 4)

1.0000 0.5000
0
1.0000
0
3.0000

1.2500
1.3750
0.5000

4.5000
4.5750
7.2000

Ing. Luis Rodrguez Ojeda, MSc.

ANLISIS NUMRICO

Reducir filas 1 y 3

ICM ESPOL

(Restar de cada fila, la fila 2 multiplicada por el elemento de la columna 2)

1.0000
0
0.5625
0
1.0000 1.3750
0
0
-3.6250

Normalizar fila 3

(Dividir fila 3 para -3.625)

1.0000
0
0
1.0000
0
0

Reducir filas 1 y 2

2.2125
4.5750
-6.5250

0.5625
1.3750
1.0000

2.2125
4.5750
1.8000

(Restar de cada fila, la fila 3 multiplicada por el elemento de la columna 3)

1.0000
0
0
1.0000
0
0

0
0
1.0000

1.2000
2.1000
1.8000

La matriz de los coeficientes ha sido transformada a la matriz identidad.


Simultneamente, las mismas transformaciones han convertido a la ltima columna en el vector
solucin:

1.2
X 2.1
1.8

Ing. Luis Rodrguez Ojeda, MSc.

ANLISIS NUMRICO

ICM ESPOL

3.2.3 Instrumentacin computacional del mtodo de Gauss-Jordan


En esta primera versin del algoritmo se supondr que los elementos en la diagonal son
diferentes de cero y no se requiere intercambiar filas..
La
codificacin en MATLAB sigue directamente la formulacin matemtica descrita
anteriormente. Se usa notacin compacta para manejo de matrices

function x=gaussjordan(a,b)
n=length(b);
a(1:n,n+1)=b;
for e=1:n
a(e,e:n+1)=a(e,e:n+1)/a(e,e);
for i=1:n
if i~=e
a(i,e:n+1)=a(i,e:n+1)-a(i,e)*a(e,e:n+1);
end
end
end
x=a(1:n,n+1);

%matriz aumentada
%normalizar fila e

%reducir otras filas

%asignar vector solucin

Uso de la funcin Gauss-Jordan


Ejemplo. Desde la
resolver el sistema:
2 3
2 5

8 9

ventana de comandos de MATLAB, use la funcin Gauss-Jordan para

7 x1 3

6 x 2 5
4 x 3 8

Escriba en la ventana de comandos de MATLAB


>> a=[2, 3, 7; -2, 5, 6; 8, 9, 4];
>> b=[3; 5; 8];
>> x=gaussjordan(a,b)
x=
-0.0556
0.9150
0.0523
>> t=a*x
t=
3.0000
5.0000
8.0000

Matriz de coeficientes
Vector de constantes
Llamada a la funcin
Solucin proporcionada por MATLAB

Es importante verificar la solucin


La solucin satisface al sistema

Ing. Luis Rodrguez Ojeda, MSc.

Vous aimerez peut-être aussi