Está en la página 1de 53

Calculadora de lgebra lineal

NDICE

Titulo

Pgina

1) Introduccin ......2
2) Resumen ......3
3) Objetivos........4
4) fundamento terico...........5
5) ejemplos resueltos.....19
6) presentacin del programa....29
7) Conclusiones......39
8) Bibliografa.....40

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

Calculadora de lgebra lineal

INTRODUCCIN
En la ingeniera es de gran importancia el resolver sistemas de ecuaciones lineales ya que los ingenieros con
mucha frecuencia se enfrentan a problemas que involucran sistemas de ecuaciones que son demasiado
grandes para poder resolver a mano. En la ingeniera civil se presentan casos como el de anlisis de
armaduras, tambin en el caso de dinmica estructural en el cual buscbamos hallar los modos de vibracin de
una estructura con n grados de libertad, etc. ; es por eso que los algoritmos de los mtodos numricos,
empleados para resolver dichos sistemas algebraicos, deben ser adecuados para poder implementarse o
programarse en las computadoras.
Cuando se presentan pocas ecuaciones(n 3), estas pueden ser resueltas mediante mtodos directos como el
de eliminacin gaussiana (ya sea con pivoteo o no), Gauss-Jordan (se obtiene la solucin mediante la bsqueda
de la inversa de la matriz de coeficientes), factorizacin LU. Sin embargo para sistemas con mayor nmero de
incgnitas estos mtodos se vuelven muy laboriosos y poco prcticos. Es por ello que se pueden usar los
mtodos iterativos como Jacobi, Gauus-Seidel, sobre-relajacin (SOR), y mtodos ms avanzados como el de
gradiente conjugada

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

Calculadora de lgebra lineal

I.

OBJETIVOS

Elaborar un programa en Gui de MatLab que permita al usuario, reslover un sistema de ecuaciones de
por ocho mtodos diferentes: cuatro mtodos directos (Eliminacin Gaussiana, Eliminacion gaussiana
con pivote, Gauss Jordan y factorizacin LU) y cuatro mtodos iterativos (Jacobi, Gauss-Seidel, SOR y
Gradiente conjugado).
La elaboracin de este programa va permitir facilitar la bsqueda de soluciones por los mtodos
antes mencionados y a la vez poder comparar los resultados.
Comprender las diferentes formas de solucionar sistemas de ecuaciones lineales por medio de los
mtodos directos e iterativos antes mencionados.

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

Calculadora de lgebra lineal

II.

RESUMEN
Este trabajo esta dirigido a la elaboracin de un programa CALCULADORA DE ALGEBRA LINEAL, ste programa
podr determinar la solucin de sistemas de ecuaciones lineales mediante 8 mtodos distintos (4 directos y 4
iterativos), adems el programa ser capaz de obtener resultados de las caractersticas de matrices o
vectores ya sea el rango, nmero de condicin, norma, determinante.
En el programa tambin podrn ejecutarse diferentes operaciones entre matrices como la multiplicacin de
matrices, resta y suma de matrices, inversa de una matriz.
Los mtodos que usar la CALCULADORA DE ALGEBRA LINEAL para resolver un sistema de ecuaciones sern
ocho: cuatro mtodos directos (Eliminacin Gaussiana, Eliminacion gaussiana con pivote, Gauss Jordan y
factorizacin LU) y cuatro mtodos iterativos (Jacobi, Gauss-Seidel, SOR y Gradiente conjugado), aprovechamos
las bondades que nos brinda la programacin en GUI de MatLab, tales como: las sentencias condicionales if
<instruccin I> elseif <instruccin II end (sisinofin) y estructuras de repeticin (for.end) y (While end. El
usuario podr ingresar los datos en tablas y los resultados sern devueltos tambin en tablas, estos podrn ser
comparados en una tabla global.

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

Calculadora de lgebra lineal


III.

ASPECTOS TERICOS
OPERACIONES CON MATRICES
1.

SUMA Y RESTA DE MATRICES


+ : x
[ ], [ ] = [ ]
tal que = 1 ; 1

2. MULTIPLICACION DE MATRICES
Definicin. Si =

y =

son dos matrices con la propiedad de que tiene

tantas columnas como filas, entonces la matriz producto se define como la matriz de orden
.
= = [ ]
Cuyo elemento es el producto escalar de la i-esima fila de A por la j-esima columna de B:

= 1 1 + 2 2 + 3 3 + +
=1

Para = 1,2 . . = 1,2, .


3. INVERSA DE UNA MATRIZ
Aunque es fcil resolver un sistema lineal de la forma = si se conoce 1 , desde el punto de vista de
los clculos necesarios, no es eficiente determinar 1 a fin de resolver el sistema. Pese a ello desde el punto
de vista conceptual conviene describir un mtodo que determine la inversa de una matriz.
A fin de encontrar un mtodo para calcular 1 suponiendo su existencia, consideremos nuevamente la
multiplicacin de matrices. Sea j-sima columna de la matriz de ,
b1 j
b
2j
B j b3 j


bnj

Si = , entonces la columna de est dada por el producto


INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

Calculadora de lgebra lineal


n

a1k bkj

a13 a1n b1 j k 1

n

a32 a2 n b2 j a b
2 k kj
k 1

ab3 ann bnj n


ankbkj
k 1

1
1
Supongamos que existe y que = = ( ). Entonces = y
c1 j
a11 a12
c
a
2j
a22
C j AB j 21


an1 ab 2
cnj

0
0

AB j 1 , donde el valor de 1 aparece en el rengln

0
Para encontrar B debemos resolver n sistemas lineales donde la columna de la inversa es la
solucin del sistema lineal que en el lado derecho tiene la columna de I. en el siguiente ejemplo se
demuestra el mtodo en cuestin

4. TRANSPUESTA DE UNA MATRIZ


Sean las matrices = y = . Diremos que B es la TRANSPUESTA de A, si slo
si = 1 , 1 y denotaremos = . Es decir,
= = ,
es la transpuesta de
= Indica que las filas de B son las columnas de
5. TRAZA DE UNA MATRIZ
Sea la matriz cuadrada = , se llama TRAZA de A, al numero
() = = , (Es la suma de los elementos de la diagonal principal)
6. DETERMINANTE
El determinante de una matriz es un concepto fundamental del lgebra lineal con el cual se determina la
existencia y unicidad de los resultados de los sistemas de ecuaciones lineales. Para representar el
determinante de una matriz A usaremos , aunque tambin se acostumbra utilizar la notacin .
a. Si = [] es una matriz de 1x1, entonces = .
b. Si es una matriz de , el menor es el determinate de la submatriz (n-1)x(n-1) de A, que se
obtiene al suprimir el i-esimo rengln y la j-esima columna de la matriz
c. El cofactor asociado a se define como = (1)+ .
d. El determinante de la matriz de , cuando > 1, esta dado por
= =1 = =1 (1)+
para cada = 1,2, . ,

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

Calculadora de lgebra lineal


MTODOS DIRECTOS PARA LA SOLUCION DE SISTEMAS DE ECUACIONES LINEALES
1.

ELIMINACIN GAUSIANA
Este mtodo se aplica para resolver sistemas lineales de la forma:
=
El mtodo de eliminacin Gaussiana (simple), consiste en transformar la matriz A en forma triangular,
llevar de la forma:

a11x1 a12x2

a13x3

a1n xn

a1i xi

b1

a '22x2 a '23x3 a '2i xi a '2n xn b'2

a 'i 2 x2

a 'i3 x3

a 'ii xi

b'i

a 'in xn

a 'm2 x2 a 'm3 x3 a 'mixi a 'mnxn b'm


Mediante
A la forma:

a11x1 a12 x2 a13 x3


'

a1i xi

'

'

a 22 x2 a 23 x3

a 2i xi

a i 1ii xi

b1

a 2n xn

b'2

a1n xn
'

a i 1in xn

b i 1i

a n 1mnxn b n 1m
A este proceso se le conoce como triangulacin, adems los primeros coeficientes de cada una de la
ecuaciones dadas anteriormente, son conocidas como pivotes; posteriormente procedemos de la siguiente
forma.
(1)

1
.
.
.

=
,
2
1 2
1,
=
2
1,
1

1 =

=2

1,1

A este proceso se le llama sustitucin regresiva


SEUDOCDIGO
INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

Calculadora de lgebra lineal

input n, (a ij ), (bi )
for k 1,2,3,4,...n 1 do
for i k 1, k 2,..., n do
t a ik / a kk
a ik 0
for j k 1, k 2,..., n do
a ij a ij t a kj
bi bi t bk
end
end
end
output (a ij , b j )

2. ELIMINACIN GAUSSIANA CON PIVOTEO


Esta tcnica tambin conocida como Pivoteo Parcial, consiste en elegir como pivote al coeficiente que
tenga mayor magnitud, es decir:
= mx ,

=
Y posteriormente procedemos a triangulizar la matriz, cambiando de pivote constantemente.
3. DESCOMPOSICION EN LU (FACTORIZACION DE DOOLITLLE)
El mtodo de descomposicin LU para la solucin de sistemas de ecuaciones lineales debe su nombre a que
se basa en la descomposicin de la matriz original de coeficientes (A) en el producto de dos matrices (L y
U).
Esto es:
=
Donde:
- Matriz triangular inferior, con los elementos de la diagonal principal igual a 1.
- Matriz triangular superior con todos los elementos de la primera fila iguales a los elementos de A de la
misma fila.
Ms detalladamente tenemos:

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

Calculadora de lgebra lineal

l11

l 21
l
31
L
l i1

l
n1

...

l 22

...

l 32

l 33 ...

li 2

ln2

l n3

u11 u12

0 u 22
0
0

0
0


0
0

u13
u 23
u33

l ii

0
0

l ij


l nn

nxn

l ij l ij , i j
tal que
l ij 0 , i j

u1n

... u 2 j .. u 2n
.... u3 j .. u3n

uij
uij
uin

u nn
... u1 j ...

nxn tal que uuij u0ij, , ii jj

ij

LA FACTORIZACION DE A ES:

a11 a12
a
21 a22
a31 a32

a41 a42

a13
a23
a33
a43

= (

1
=
(

a14 1
0
a24 l21 1

a34 l31 l32



a44 l41 l42

=1
=1

0
0
1
l43

0 u11 u12
0 0 u22
.
0 0
0

1 0
0

u13
u23
u33
0

u14
u24
u34

u44

= , + 1, + 2, ,

=1

)
=1

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

Calculadora de lgebra lineal


Para la solucin de un sistema de ecuaciones lineales:
= = : = =
Donde:

b1

b2
b b3


b
n

y1

y2
y y3


y
n

x1

x2
x x3


x
n

Una ves obtenido los valores de y podemos obtener los valores de x.


SEUDOCDIGO
Input n,(aij)
For k = 1,2,,
k 1

l kk u kk a kk l ks u sk
s 1

for j = k+1,k+2,n

k 1

u kj a kj l ks u sj / l kk
s 1

end
for i= k+1,k+2,n
k 1

l ik aik l is u sk / u kk
s 1

end
end
Output (lij), (uij)

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

10

Calculadora de lgebra lineal


4. DESCOMPOSICION POR EL MTODO DE CHOLESKY
Algoritmo de cholesky
Para factorizar la matriz defina positiva de nxn en , donde L es una matriz triangular inferior:
ENTRADA la dimensin ; los elementos para
1 ,
SALIDA los elementos , para 1 y para 1 de L (los elementos de = son
= , para 1 y para 1 )
PASO 1 tome 11 = 11
PASO 2 para = 2, . , , tome 1 = /11
PASO 3 para = 2, . 1, haga los pasos 4 y 5
2 1/2
PASO 4 tome = ( 1
=1 )
PASO 5 para = + 1, . ,
Tome 1 = ( 1
=1 )/
1 2 1/2
PASO 6 tome = ( =1
)
PASO 7 SALIDA ( = 1, .
= 1, . )
MTODOS ITERATIVOS PARA LA SOLUCION DE SISTEMA DE ECUACIONES LINEALES

1.

MTODO DE JACOBI
El mtodo Jacobi es el mtodo iterativo para resolver sistemas de ecuaciones lineales ms simple y se
aplica slo a sistemas cuadrados, es decir a sistemas con tantas incgnitas como ecuaciones.
ALGORITMO DE JACOBI:
+1 = +

Si x

(k )

x1k

k
x 2 es el vector de aproximacin a la solucin x despus de R iteraciones,
k
x3

entonces, tendremos la siguiente aproximacin

(b1 a12 x 2k a13 x3k )


x1k 1 a11

x k 1 x 2 k 1
(b2 a 21x1k a 23 x3k )
k 1 a 22

x3

1
k
k
a (b3 a31x1 a32 x 2 )
33

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

11

Calculadora de lgebra lineal

Para un sistema de ecuaciones con incgnitas, la notacin ms compacta es


+1

1
=


=1

Matricialmente puede expresarse


+1 = 1 + + 1 ,
= 0,1,2, .
Observacin: toda matriz cuadrada descomponerse como = , donde
: Matriz triangular inferior de A
: Matriz triangular superior de B
: Matriz diagonal de A
Con lo cual
= 1 +
= 1
SEUDOCDIGO
Para resolver = dada aproximacin inicial (0):
ENTRADA el nmero de ecuaciones e incgnitas n; los elementos , 1 , de la matriz A;
los elementos , 1 de ; los elementos , 1 de = (0) ; la tolerancia
TOL; el numero mximo de iteraciones N
SALIDA la solucin aproximada , . . o el mensaje de que se rebaso el numero de iteraciones.
Paso 1 tome = 1
Paso 2 mientras (
)haga los pasos 3-6
Paso 3 Para = 1, ,
=+1

Tome
=

Paso 4 si <
entonces SALIDA (
, . .
)
(Procedimiento terminado satisfactoriamente)
PARAR
Paso 5 tome = + 1
Paso 6 para = 1, , tome

Paso 7 SALIDA (numero mximo de iteraciones excedido);


(Procedimiento terminado sin xito)
PARAR

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

12

Calculadora de lgebra lineal

2.

MTODO DE GAUSS SEIDEL


Este mtodo se diferencia del anterior en que los valores que se van calculando en la (R + 1) sima
iteracin se usan para calcular los valores restantes de esa misma interaccin ie

x R 1

R 1
i

(b1 a12 x 2R a12 x 3R )

x1R 1 a11
R 1 1

x2
(b2 a 21 x1R 1 a 23 x 3R )
x R 1 a 22

3 1
R 1
R 1
a (b3 a 31 x1 a 32 x 2 )
33

n
i 1
1
R
R 1

bi a i j x a i j x , 1 i n
a ii
j i 1
j 1

iI
j i

SEUDOCODIGO
Para resolver
= dada aproximacin inicial (0):
ENTRADA el nmero de ecuaciones e incgnitas n; los elementos , 1 , de la matriz A;
los elementos , 1 de ; los elementos , 1 de = (0) ; la tolerancia
TOL; el numero mximo de iteraciones N
SALIDA la solucin aproximada , . . o el mensaje de que se rebaso el numero de iteraciones.
Paso 1 tome = 1
Paso 2 mientras ( )haga los pasos 3-6
Paso 3 Para = 1, ,
Tome =

1
=1 =+1 +

Paso 4 si < entonces SALIDA ( , . . )


(Procedimiento terminado satisfactoriamente)
PARAR
Paso 5 tome = + 1
Paso 6 para = 1, , tome =
Paso 7 SALIDA (numero mximo de iteraciones excedido);
(Procedimiento terminado sin xito)
PARAR

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

13

Calculadora de lgebra lineal

3.

MTODO DE SOBRERELAJACIN (SOR)


Este mtodo se basa en la idea que una vez producido un valor del mtodo de Gauss-Seidel, para
lograrse una mejor aproximacin, procedemos formando un promedio ponderado de los valores actual y
anterior de esta manera quedara:
= 1 1 + , 1 < < 2
De manera general podemos expresarlo

1
( 1
)
=1 =+1

=
+ (1 )1
Matricialmente se expresa:
= 1 1 + + ( )1
, 1 < < 2, =
0,1,2, .
Con Lo Cual = ( )1 1 + y = ( )1
TEOREMA: si A es una matriz definida positiva y 0 < < 2, entonces el mtodo de SOR converge para
cualquier eleccin 0

4.

MTODO DE GRADIENTE CONJUGADA

El mtodo del gradiente conjugado de Hestenes y Stiefel, el cual es aplicado a sistemas de la forma = ,
en donde A es considerada simtrica y definida positiva.
En este mtodo las direcciones , son elegidas de una en una en el proceso iterativo y forman un sistema
A-ortogonal, los residuos () = () forman un sistema ortogonal es decir () , () =
,
Debemos decir que este mtodo es preferible que el mtodo de eliminacin Gaussiana simple cuando la matriz A
es muy grande y rala.
Este mtodo en su inicio fue muy sorprendente e importante pero despus de dos dcadas las cosas ya no fue
as como consecuencia que se descubri que la terminacin finita no era asequible en la prctica.
Pues la terminacin finita era indeseable para un mtodo directo, sin embargo posteriormente cuando se le
considero como un mtodo iterativo las cosas fue diferente, pues en estos mtodos no es necesario obtener
una solucin absoluta despus de n pasos lo que se espera es obtener una respuesta satisfactoria.
La ejecucin del algoritmo en una computadora precisa de un lugar de almacenamiento para cuatro vectores
() , () , () , ()

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

14

Calculadora de lgebra lineal


SEUDOCDIGO

, , , , ,

,
= 1,2, ,
1

, 2 <

,
+

,
2 <

, ,

5.

VALORES Y VECTORES PROPIOS

Una matriz se puede considerar como una funcin que usa la multiplicacin de matrices para llevar
vectores m-dimensionales en si mismo. En este caso, ciertos vectores no nulos son paralelos a , lo que
significa que existe una constante tal que = . Para estos vectores, tenemos = 0.
Existe una relacin muy estrecha entre los nmeros y la posibilidad de que un mtodo iterativo converja. En
esta seccin estudiaremos tal relacin.
Si A es una matriz cuadrada, el polinomio definido por
= det Recibe el nombre de polinomio caracterstico de .
Si p es el polinomio caracterstico de la matriz A, los ceros de p se llaman valores caractersticos o propios de
esa matriz. Si es un valor caracterstico de A y si 0 tiene la propiedad de que = 0
entonces a x se le llama vector caracterstico o propio de la matriz correspondiente al valor caracterstico
de .

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

15

Calculadora de lgebra lineal


MTODOS PARA HALLAR LOS VALORES Y VECTORES PROPIOS
a. MTODO DE JACOBI
El mtodo de Jacobi (1846) puede considerarse como prototipo de los mtodos de transformacin. En este
procedimiento se transforma el problema original a uno de la forma:

a1

a2

an

z1 b1
z1


b2
z2
z 2
=


bn z 3
z n

que tiene como vectores caractersticos las columnas de la matriz identidad y como valores caractersticos los
=
. Los valores caractersticos del sistema original son los mismos. es en este caso una matriz ortogonal:
1 =
Cuyas columnas son la propia solucin buscada. sta se determina mediante un proceso iterativo que se
describe a continuacin.
En la forma que aqu se presenta, este mtodo se aplica a problemas de la forma clsica,
=

, siendo una matriz simtrica (real). Ms adelante se consideran las modificaciones requeridas
para problemas de la forma general.
Empezando con (0) = y llamando (0)a los vectores caractersticos del problema original, el paso k del
proceso se define como:

() = (+1)
( +1 ) = (

+1

y si es una matriz ortogonal, pre multiplicando por se obtiene:


( ) +1 =
Lo que equivale a considerar un problema similar al original:

+1

+1

+1

Siendo:

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

16

Calculadora de lgebra lineal


Ntese que se mantiene la simetra de la matriz. Los valores caractersticos de esta nueva matriz son los
mismos de la matriz original; los correspondientes vectores se relacionan por expresiones de la forma

En el mtodo de Jacobi las matrices corresponden a una rotacin plana:

cos k
Pk
sen k

sen k
cos k

El objetivo de un paso es hacer cero un coeficiente = . . Puede verificarse fcilmente que:


(+1) = (+1) = + 2 2 = 0
Y por tanto:
()

2 =

2
()

Slo los elementos de dos filas y de dos columnas ( i, j) se alteran en cada paso. Adems, como se mantiene la
simetra de la matriz A slo deben calcularse los coeficientes de la sub-matriz triangular superior (o inferior)
de ( +1). Con la notacin
= ; ; =
(+1)
()
()
()

= 2 + 2 + 2
(+1)

()

(+1)

(+1)

(+1)

( +1)

()

()

= 2 2 + 2

(+1)

(+1)

2 2 = 0

= +

= +

En un cierto paso se hacen cero los elementos .. Sin embargo, las sucesivas rotaciones reintroducen
valores significativos en estas posiciones, por lo que es necesario repetir el proceso en varios "ciclos" para
todos los elementos de fuera de la diagonal principal. El proceso es convergente. Si en un ciclo dado los
cocientes
()

INGENIERIA CIVIL-UNSCH

() ()

. . ()

MTODOS NUMRICOS

17

Calculadora de lgebra lineal


Son de orden e, stos se reducen a orden e2 en el siguiente ciclo. El nmero de ciclos completos necesarios
para que la matriz sea suficientemente aproximada a una matriz diagonal depende del orden de la matriz.
Para matrices de orden 50 60 pueden ser necesarios 8 a 10 ciclos. Cada ciclo demanda (23 )
operaciones.
Desde un punto de vista terico sera ms eficiente hacer cero los elementos en orden decreciente de los
, definidos por (), pero las comparaciones necesarias son relativamente lentas. Por eso se prefiere
seguir un orden fijo en la seleccin de los elementos y efectuar las rotaciones slo si es mayor que una
tolerancia, variable en funcin del nmero de ciclo, m (por ejemplo 10-2m). La convergencia del proceso se
puede verificar con una medida similar.
Para determinar los vectores caractersticos es suficiente efectuar el producto de las matrices ya que:
() = (+1)

Y por lo tanto:

= (0) = 1 2 3 .

b. MTODO DE LA POTENCIA INVERSA


El mtodo de potencia inversa es una modificacin del mtodo que ofrece una convergencia mas rpida. Se usa
para determinar el valor caracterstico de A ms cercano a un nmero q especfico.
Algoritmo
Para aproximar un valor caracterstico y un vector caracterstico asociado de la matriz A de , dado un
vector distinto de cero:
ENTRADA dimensin n; matriz A; vector x; tolerancia TOL; numero mximo de iteraciones N.
SALIDA valor caracterstico aproximado , vector caracterstico aproximado x (con = 1) o un mensaje
de que se rebaso el numero mximo de iteraciones.
Paso 1 tome =

Paso 2 tome = 1
Paso 3 obtenga el entero p mas pequeo con 1 y =
Paso 4 tome = /
Paso 5 mientras ( ) haga los pasos 6-12
Paso 6 resuelva el sistema lineal =
Paso 7 si el sistema no tiene solucin nica, entonces SALIDA (q es un valor caracterstico, q);
PARAR
Paso 8 tome =
Paso 9 obtenga el entero mas pequeo con 1 y =
Paso 10 tome = (/ )

Paso 11 si < , entonces tome = + ;


SALIDA , ;(procedimiento terminado exitosamente) PARAR
Paso 12 tome = + 1
Paso 13 Salida (Nmero mximo de iteraciones excedido); (Procedimiento terminado sin xito)

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

18

Calculadora de lgebra lineal


IV.

EJEMPLOS RESUELTOS DE SISTEMA DE ECUACIONES LINEALES


Ejemplo n1 Resolver el sistema tridiagonal siguiente:

A x b
4 1 0 0 0 x1 100
1 4 1 0 0 x 200

0 1 4 1 0 x3 200

0 0 1 4 1 x4 200
0 0 0 1 4 x5 100

SOLUCIN MEDIANTE FACTORIZACIN LU

1
l2 l1 0, 15 / 4, -1, 0, 0
4
4
l3 l2 0, 0, 56/15, -1 , 0
15
15
l4 l3 0, 0, 0, 209/56, -1
56
56
l5
l4 0, 0, 0, 0, 780/209
209

15
4

56
15

209
56

INGENIERIA CIVIL-UNSCH

780

209

1
4

4
15

15
56

56
209

MTODOS NUMRICOS

19

Calculadora de lgebra lineal

1
4

4
15

15
56

56
209

15
4

56
15

209
56

0 4 1 0 0 0

1 4 1 0 0
0
0 1 4 1 0

0 0 1 4 1
1
0 0 0 1 4
780
209

LU A
Entonces tenemos

Ax LUx b Tomando y Ux................* por tanto:


Ly b

1
4

4
15

15
56

56
209

0 y1 100

y2 200

0
y3 200
y 200

0 4
y
100

y1 100
100
y2 200 y2 225
4
4
225 y3 200 y3 260
15
15
260 y4 200 y4 251.6667
56
56
251.6667
y5 100 y5 172.2488
209

y1 100
y 225
2

260
3

y 269.6429
4

y5 172.2488
INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

20

Calculadora de lgebra lineal

Ahora reemplazamos y en la
ecuacin y Ux................*

15
4

56
15

209
56

0 x1 y1 100

x2 y2 225

0
x3 y3 260
x y 269.6429

1 4 4
x
y
172.2488

5 5
780
209

780
x5 172.2488 x5 46.15384
209
209
x4 46.15384= 269.6429 x4 =84.6154
56
56
x3 84.6154=260 x3 92.3077
15
15
x2 92.3077=200 x2 84.6154
4
4x1 84.6154=100 x1 46.1538

x1 46.1538
x 84.6154
2

3 92.3077
x 84.6154
4

x5 46.1538

EJEMPLO N2 Resolver el siguiente sistema lineal

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

21

Calculadora de lgebra lineal


4T1

T2

T1

4T2

T3

0T4

0T5

150

0T6

0T3

T4

0T5

0T6

50

4T3

T4

T5

0T6

50

T2

T3

4T4

0T5

T6

50

0T1 0T2

T3

0T4

4T5

T6

150

0T1 0T2

0T3

T4

T5

4T6

50

T1 0T2
0T1

4 1 1 0 0 0 T1 150
1 4 0 1 0 0 T 50

2
1 0 4 1 1 0 T3 50

1
4
0

T4 50
0 0 1 0 4 1 T5 150


0 0 0 1 1 4 T6 50

POR METODO DE ELIMINACION GAUSSIANA:

Generamos la matriz aumentada para realizar la eliminacin Gaussiana


4 1 1 0 0 0 150

1 4 0 1 0 0 50
1 0 4 1 1 0 50

0 1 1 4 0 1 50
0 0 1 0 4 1150

0 0 0 1 1 4 50

l2 l1 l2

1
l3 l1 l3

INGENIERIA CIVIL-UNSCH

4 -1

-1

150

0 15/4

-1/4

-1

175/2

0 -1/4

15/4

-1

-1

175/2

0 -1

-1

-1

50

0
0

-1
0

0
-1

4
-1

-1
4

150
50

0
0

MTODOS NUMRICOS

22

Calculadora de lgebra lineal


4 -1
0 15/4

0 0

0 0
0 0

0 0

l2 l3

15

4
l4 l1 l4

15

l3

4
0

0
0

16

l3 l4

56

15
l5 l3 l5

56

l4

150

-1/4

-1

175/2

56/15

-16/15

-1

280/3

-16/15

56/15

-1

220/3

4
-1

-1
4

150
50

-1
0

0
-1

-1

-1

150

15/4

-1/4

-1

175/2

56/15 -16/15 -1

280/3

24/7

-2/7

-1

100

0
0

0
0

-2/7
-1

209/56 -1
-1
4

175
50

4 -1
0 15/4

0 0

0 0
0 0

0 0

l4 l5

12

7
l6 l4 l6

24

l5

l6

-1

4 -1
0 15/4

0 0

0 0
0 0

0 0

26

l5 l6
89

-1

150

-1/4

-1

175/2

56/15 -16/15 -1

280/3

-1

100

24/7

0
0

0
0

-2/7

89/24 -13/12
-13/12 89/24

-1

-1/4

-1

56/15

-16/15

-1

24/7

-2/7

-1

0
0

0
0

89/24
0

-13/12
2415/712

550/3
475/6

175/2

280/3

100

550/3

14467/109

150

Realizando la sustitucin regresiva se tiene que;

4 -1
0 15/4

0 0

0 0
0 0

0 0

-1
-1/4

0
-1

0
0

56/15

-16/15

-1

24/7

-2/7

INGENIERIA CIVIL-UNSCH

89/24
0

T1 150

T 175 / 2
2

T3 280 / 3
0


-1

T4 100
T5 550 / 3
-13/12


2415/712 T6 14467 /109
0
0

MTODOS NUMRICOS

23

Calculadora de lgebra lineal


2415
14467
T6

T6 39.1304
712
109
89
13
550
T5 T6
T5 60.8696
24
12
3
24
2
T4 T5 T6 100 T4 45.6522
7
7
56
16
280
T3 T4 T5
T3 54.3478
15
15
3
15
1
175
T2 T3 T4
T2 39.1304
4
4
2
4T1 T2 T3 150
T1 60.8696
ITERACIN DE JACOBI
n

a
k 1

xi
x

k 1

ij

j i
j i

xik bi

aii

Bx c
k

Forma matricial:

B D 1 L U
c D 1b
4
1

1
a
0
0

1 1 0

0 1 0

4 1 1

1 1 4

0 1 0

0 1 1

0
1

1
L
0
0

150
50

50
b
50
150

50

0
1

4
0

0 0

1 1 0

0 1 0

0 1 1

0
0

4
0

0
D
0
0

0 0 0 0 0
4 0 0 0
0 4 0 0
0 0 4 0
0 0 0 4
0 0 0 0

0
0

0
0

0
U
0
0

1 1 0

0 1 0

0 1 1

0
1

0
0
0

B D1 L U
INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

24

Calculadora de lgebra lineal


4
0

0
B
0
0

0 0 0 0 0
4 0 0 0
0 4 0 0
0 0 4 0
0 0 0 4
0 0 0 0

0
1

1

0
0

0
0

0 0

1 1 0

0 1 0

0 1 1

0
0

0
0

0
0

1 1 0

0 1 0

0 1 1

0
1

0
0

0
0.25

0.25

0
0

0.25 0.25 0

0.25 0

0.25 0.25

0.25 0.25 0
0
0

0.25 0
0

0
0

0.25 0.25

c D1b

4
0

0
c
0
0

0 0 0 0 0
4 0 0 0
0 4 0 0
0 0 4 0
0 0 0 4
0 0 0 0

0
0

0
0.25

0.25
x1
0
0

0.25 0.25

0
0.25

0.25
x2
0
0

0.25 0.25

0
0.25

0.25
x3
0
0

0.25 0.25

0
0.25

0.25
x4
0
0

0.25 0.25

150 37.5
50 12.5

50 12.5

50 12.5
150 37.5

50 12.5

0 37.5 37.5000
0
0 0.25 0
0 0 12.5 12.5000

0
0 0.25 0.25 0 0 12.5 12.5000

0.25 0.25 0
0 0.25 0 12.5 12.5000
0 37.5 37.5000
0 0.25 0
0 0.25

0
0 0.25 0.25 0 0 12.5 12.5000
0

37.5 37.5 43.7500


0
0 0.25 0
0 12.5 12.5 25.0000

0
0 0.25 0.25 0 12.5 12.5 34.3750

0.25 0.25 0
0 0.25 12.5 12.5 21.8750
37.5 37.5 43.7500
0 0.25 0
0 0.25

0
0 0.25 0.25 0 12.5 12.5 25.0000
0

43.7500 37.5 52.3438


0
0 0.25 0
0 25.0000 12.5 28.9063

0
0 0.25 0.25 0 34.3750 12.5 39.8438

0.25 0.25 0
0 0.25 21.8750 12.5 33.5938
43.7500 37.5 52.3438
0 0.25 0
0 0.25

0
0 0.25 0.25 0 25.0000 12.5 28.9063
0

52.3438 37.5 54.6875


0
0 0.25 0
0 28.9063 12.5 33.9844

0
0 0.25 0.25 0 39.8438 12.5 47.0704

0.25 0.25 0
0 0.25 33.5938 12.5 36.9141
52.3438 37.5 54.6875
0 0.25 0
0 0.25

0
0 0.25 0.25 0 28.9063 12.5 33.9844
0

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

25

0
0.25

0.25

0
0

Calculadora de lgebra lineal

0
0.25

0.25
x5
0
0

i
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

54.6875 37.5 57.7637


0
0 0.25 0
0 33.9844 12.5 35.4004

0
0 0.25 0.25 0 47.0704 12.5 49.0723

0.25 0.25 0
0 0.25 36.9141 12.5 41.2598
54.6875 37.5 57.7637
0 0.25 0
0 0.25

0
0 0.25 0.25 0 33.9844 12.5 35.4004
0.25 0.25

T1
0.0000
37.5000
43.7500
52.3438
54.6875
57.7637
58.6182
59.7382
60.0494
60.4574
60.5708
60.7194
60.7607
60.8149
60.8299
60.8496
60.8551

T2
0.0000
12.5000
25.0000
28.9063
33.9844
35.4004
37.2559
37.7716
38.4476
38.6354
38.8817
38.9501
39.0398
39.0648
39.0974
39.1065
39.1184

T3
0.0000
12.5000
34.3750
39.8438
47.0703
49.0723
51.6968
52.4261
53.3821
53.6478
53.9960
54.0928
54.2197
54.2549
54.3011
54.3140
54.3308

T4
0.0000
12.5000
21.8750
33.5938
36.9141
41.2598
42.4683
44.0521
44.4923
45.0693
45.2297
45.4399
45.4983
45.5748
45.5961
45.6240
45.6318

T5
0.0000
37.5000
43.7500
52.3438
54.6875
57.7637
58.6182
59.7382
60.0494
60.4574
60.5708
60.7194
60.7607
60.8149
60.8299
60.8496
60.8551

T6
0.0000
12.5000
25.0000
28.9063
33.9844
35.4004
37.2559
37.7716
38.4476
38.6354
38.8817
38.9501
39.0398
39.0648
39.0974
39.1065
39.1184

Mx.
0.0000
37.5000
43.7500
52.3438
54.6875
57.7637
58.6182
59.7382
60.0494
60.4574
60.5708
60.7194
60.7607
60.8149
60.8299
60.8496
60.8551

error
0.0000
37.5000
6.2500
8.5938
2.3437
3.0762
0.8545
1.1200
0.3112
0.4080
0.1134
0.1486
0.0413
0.0542
0.0150
0.0197
0.0055

ITERACIN DE GAUSS-SEIDEL

k 1

L D Ux L D b
1

Por lo tanto:

B L D U
1

c L D b
1

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

26

Calculadora de lgebra lineal


0
1

1
L
0
0

0 0

1 1 0

0 1 0

0
1

1
B
0
0

0
1

1
C
0
0

0
0
0

0
xo
0
0

0

0
0

0 1 1

1 1
0 1
0

1 1
0 1
0

Iteraciones:
0 0.25
0 0.063

0 0.063
x1
0 0.031
0 0.016

0 0.012

4
0

0
D
0
0

4
0 0 0 0

0 0 0 0

0 0 0 0
0
0 0 0

1 1 0 0
0

0 0

0.25

0.063 0.25

0 0 4 0
0 0 0 4
0 0 0 0

0 4 0 0 0
0 0 4 0 0

0 0 0 4 0

0 0 0 0 4

0
0

0.063 0.25 0.25


0.031 0.125 0.063
0.016 0.063 0.063
0.012 0.047 0.031

INGENIERIA CIVIL-UNSCH

0 4 0 0

4 0 0 0 0

0 0

4 0 0 0

0 0 0 0 0

0
0 0 0

0 0 0 0

0 0 0 0
0
0 0 0

1 1 0 0
0

0 0 0 0 0

0
0

0
0

0 0 0 0 0
4 0 0 0
0 4 0 0
0 0 4 0
0 0 0 4
0 0 0 0

0
0

0
0

0
U
0
0

0
0

1 1 0

0 1 0

0 1 1

1 1 0

0 1 0

0 1 1

0 0.25
0 0.063

0 0 0.063

1 0 0.031
0 0.016
1

0 0 0.012

0
1

0
0

0.25

0.063 0.25

0
0.25

0.25

0.125
0

0.063 0.25 0.25


0.031 0.125 0.063
0.016 0.063 0.063
0.012 0.047 0.031

150 37.5
50 21.875

50 21.875

50 23.438
150 42.969

50 29.102

0 37.5 37.5
0 0 21.875 21.875

0 0 21.875 21.875

0.25 0 23.438 23.438


0 42.969 42.969
0.25

0.125 0 29.102 29.102


0

MTODOS NUMRICOS

27

Calculadora de lgebra lineal

0
0

0
x2
0
0

0
0

0
x3
0
0

0
0

0
x4
0
0

0
0

0
x5
0
0

0.25 0.25

0.063 0.063 0.25

0
0

0.063 0.063 0.25 0.25


0.031 0.031 0.125 0.063
0.016 0.016 0.063 0.063
0.012 0.012 0.047 0.031

0.25 0.25

0.063 0.063 0.25

0
0

0.063 0.063 0.25 0.25


0.031 0.031 0.125 0.063
0.016 0.016 0.063 0.063
0.012 0.012 0.047 0.031

0.25 0.25

0.063 0.063 0.25

0
0

0.063 0.063 0.25 0.25


0.031 0.031 0.125 0.063
0.016 0.016 0.063 0.063
0.012 0.012 0.047 0.031

0.25 0.25

0.063 0.063 0.25

0
0

0.063 0.063 0.25 0.25


0.031 0.031 0.125 0.063
0.016 0.016 0.063 0.063
0.012 0.012 0.047 0.031

INGENIERIA CIVIL-UNSCH

37.5 37.5 48.4375


0 21.875 21.875 30.4907

0 21.875 21.875 41.233

0.25 23.438 23.438 37.7065


42.969 42.969 55.1281
0.25

0.125 29.102 29.102 35.6984


0

48.4375 37.5 55.4309


0 30.4907 21.875 35.8202

0 41.233 21.875 49.6022

0.25 37.7065 23.438 42.7724


55.1281 42.969 58.8898
0.25

0.125 35.6984 29.102 37.9062


0

55.4309 37.5 58.8556


0 35.8202 21.875 37.9497

0 49.6022 21.875 52.6722

0.25 42.7724 23.438 44.6193


58.8898 42.969 60.217
0.25

0.125 37.9062 29.102 38.7012


0

58.8556 37.5 60.1555


0 37.9497 21.875 38.739

0 52.6722 21.875 53.7933

0.25 44.6193 23.438 45.2937


60.217 42.969 60.6989
0.25

0.125 38.7012 29.102 38.9909


0

MTODOS NUMRICOS

28

Calculadora de lgebra lineal


0
0

0
x6
0
0

0.25 0.25

0.063 0.063 0.25

0.063 0.063 0.25 0.25


0.031 0.031 0.125 0.063
0.016 0.016 0.063 0.063
0.012 0.012 0.047 0.031

60.1555 37.5 60.6331


0 38.739 21.875 39.028

0 53.7933 21.875 54.2027

0.25 45.2937 23.438 45.54


60.6989 42.969 60.8748
0.25

0.125 38.9909 29.102 39.0967


0

Solucin por el mtodo de SOR


0
1

1
L
0
0

0
0

0
U
0
0

4
0

0
D
0
0

0 0

0 0

1 0
0

0 1 0

0 0 1
0 0
0

0 0 0

1 1 0

0 1 0

0 1 1

1 1 0

0 1 0

0 1 1

0 1
0 0 0

0 0 0

1 0 0
0 0
1

0 0 0
0

0 0 0 0
0 0 0 0

0 0 0 0
1 0 0 0

0 1 1 0
1 0 0 0

1 0 0 0
0 1 0 0

0 1 1 0
0 0 0 1

0 0 0 0
0 0 0 1

0 0 0 0 0
4 0 0 0 0

0 4 0 0 0
0 0 4 0 0

0 0 0 0 4

w 1.5

0 0 0 4 0

0.5
0.188

0.188
1
T ( D w L) [ ( 1 w ) D w U]
0.141
0.07

0.079

INGENIERIA CIVIL-UNSCH

0.375 0.375

0.359 0.141 0.375

0
0

0.141 0.359 0.375 0.375


0.082 0.082 0.219 0.141
0.053 0.135 0.141 0.359
0.011 0.081 0.029 0.082

0
0.375

0.375

0.219
0
0

MTODOS NUMRICOS

29

Calculadora de lgebra lineal

C w ( D w L)

0
0

0
xo
0
0

0

56.25
39.8438

39.8438

x1 T xo C
48.6328
71.1914

63.6841

58.0078
38.8184

65.5151

x2 T x1 C
57.4402
69.104

34.362

66.3712
45.7701

58.3357

x3 T x2 C
41.9553
56.4596

38.4746

62.1041
34.8872

49.7768

x4 T x3 C
43.9493
61.1145

38.9116

56.947
39.1425

54.6156

x5 T x4 C
46.5265
60.7655

39.5287

62.9358
40.2271

55.2776

x6 T x5 C
46.1243
61.4196

39.3146

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

30

Calculadora de lgebra lineal


V.

PRESENTACIN DEL PROGRAMA

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

31

Calculadora de lgebra lineal

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

32

Calculadora de lgebra lineal

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

33

Calculadora de lgebra lineal

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

34

Calculadora de lgebra lineal

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

35

Calculadora de lgebra lineal

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

36

Calculadora de lgebra lineal

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

37

Calculadora de lgebra lineal

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

38

Calculadora de lgebra lineal

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

39

Calculadora de lgebra lineal

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

40

Calculadora de lgebra lineal


VI.

CDIGO DEL PROGRAMA


ELIMINACION GAUSSINA
global a xm b xg x1 x2 x3 xgp J gs S M GR in raaa rab
Co Cor no

de

c1=[a b];
raaa=rank(a);
rab=rank(c1);
de=det(a);
Co=cond(a);
Cor=rcond(a);
no=norm(a);
xm=a^-1*b; % solucion de Matlab
m=length(a);
ag=a;
bg=b;
% transformacion del sistema en uno triangular
d=det(a);
if d~=0
for i=1:m-1
for k=i+1:m
l=ag(k,i)/ag(i,i);
for j=i+1:m
ag(k,j)=ag(k,j)-l*ag(i,j);
end
bg(k)=bg(k)-l*bg(i);
end
end
% resolucion del sistema triangular
xg=zeros(m,1); % tambien vale x=b*0;
xg(m)=bg(m)/ag(m,m);
for i=m-1:-1:1
s=0;
for j=i+1:m
s=s+ag(i,j)*xg(j); % sumatorio
end
xg(i)=(bg(i)-s)/ag(i,i);
end
else
disp(' El sistema es inconsistente')
end
xg;
ELIMINACION GAUSSINA CON PIVOTE
INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

41

Calculadora de lgebra lineal


n=length(a);
p=1:n;
ap=a;bp=b;
% transformacion del sistema en uno triangular
for i=1:n-1
[m,r]=max(abs(a(i:n,i))); r=r+i-1;
p([i r])=p([r i]); % pivotaje
for k=i+1:n
l=ap(p(k),i)/ap(p(i),i);
ap(p(k),i+1:n)=ap(p(k),i+1:n)-l*ap(p(i),i+1:n);
bp(p(k))=bp(p(k))-l*bp(p(i));
end
ap(p(i+1:n),i)=0;
end
% resolucion del sistema triangular
xgp=zeros(n,1); % tambien vale x=b*0;
for i=n:-1:1
xgp(i)=(bp(p(i))ap(p(i),i+1:n)*xgp(i+1:n))/ap(p(i),i);
end
xgp;

FACTORIZACION LU
A=a;
B=b;
N=rank(A);
U=A;
for k=1:N-1
for m=k+1:N
MT= -U(m,k)/U(k,k);
U(m,:)=U(m,:)+MT*U(k,:);
end
end
%para obtener L
L=eye(N);
L(2:N,1)=A(2:N,1)/U(1,1);
for k=2:N-1
for m=k+1:N
MT=0;
for l=1:k-1
MT=MT+L(m:N,1).*U(1,k);
end
L(m:N,k)=(A(m:N,k)-MT)./U(k,k);
end
end
%sustitucion progresiva
INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

42

Calculadora de lgebra lineal


y(1)=B(1);
for k=2:N
ind=k-1;
y(k)=0;
for m=1:ind
y(k)=y(k)-L(k,k-m)*y(k-m);
end
y(k)=B(k)+y(k);
end
%proceso de sustitucion regresiva
x(N)=y(N)/U(N,N);
for k=N-1:-1:1
ind=N-k;
x(k)=0;
for m=1:ind
x(k)=x(k)-U(k,k+m)*x(k+m);
end
x(k)=(y(k)+x(k))/U(k,k);
end
x;
x1=x';
METODO DE DOOLITTLE
A=a;
B=b;
n=length(A);
N=rank(A);
l=A*0; u=A*0;
for k=1:n
u(k,k:n)=A(k,k:n)-l(k,1:k-1)*u(1:k-1,k:n);
l(k,k)=1;
l(k+1:n,k)=(A(k+1:n,k)-l(k+1:n,1:k-1)*u(1:k1,k))/u(k,k);
end
y(1)=B(1)/l(1,1);
for k=2:N
ind=k-1;
y(k)=0;
for m=1:ind
y(k)=y(k)-l(k,k-m).*y(k-m);
end
y(k)=(B(k)+y(k))/l(k,k);
end
xd(N)=y(N)/u(N,N);
for k=N-1:-1:1
ind=N-k;
INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

43

Calculadora de lgebra lineal


xd(k)=0;
for m=1:ind
xd(k)=xd(k)-u(k,k+m).*xd(k+m);
end
xd(k)=(y(k)+xd(k))/u(k,k);
end
xd;
x2=xd';
METODO DE CHOLESKY
A=a;
B=b;
N=rank(A);
CInf=zeros(N);
CInf(1,1)=sqrt(A(1,1));
CInf(2:N,1)=A(2:N,1)./CInf(1,1);
for k=2:N
CInf(k,k)=sqrt(A(k,k)-sum(CInf(k,1:k-1).^2));
for m=k+1:N
Suma=sum(CInf(m,1:k-1).*CInf(k,1:k-1));
CInf(m,k)=(1/CInf(k,k))*(A(m,k)-Suma);
end
end
CSup=CInf.';
y(1)=B(1)/CInf(1,1);
for k=2:N
ind=k-1;
y(k)=0;
for m=1:ind
y(k)=y(k)-CInf(k,k-m)*y(k-m);
end
y(k)=(B(k)+y(k))/CInf(k,k);
end
xch(N)=y(N)/CSup(N,N);
for k=N-1:-1:1
ind=N-k;
xch(k)=0;
for m=1:ind
xch(k)=xch(k)-CSup(k,k+m)*xch(k+m);
end
xch(k)=(y(k)+xch(k))/CSup(k,k);
end
xch;
x3=xch';
%""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
""
%METODOS ITERATIVOS

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

44

Calculadora de lgebra lineal


%"""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"""
METODO DE JACOBI
global jn sn rn mn gn
ja=a;
jb=b;
n=length(ja);
mmax=200;
eps1=10^-4;eps2=10^-4;
J=(zeros(1,n))';
errores=zeros(1,mmax);
jn=1;
for m=1:mmax
jn=jn+1;
error=0;
y=J;
for i=1:n
v=[1:i-1 i+1:n];
J(i)=(jb(i)-ja(i,v)*y(v))/ja(i,i);
end
error=norm(J-y,1);
errores(m)=error;
if (error<eps1+eps2*norm(J))
break
end
end
J;jn;
METODO GAUSS-SEIDEL
sa=a;
sb=b;
n=length(a);
mmax=200;
eps1=10^-4;eps2=10^-4;
gs=(zeros(1,n))';
errores=zeros(1,mmax);
sn=1;
for m=1:mmax
sn=1+sn;
error=0;
y=gs;
for i=1:n
gs(i)=(sb(i)-sa(i,[1:i-1 i+1:n])*gs([1:i-1
i+1:n]))/sa(i,i);
end
error=norm(gs-y,1);
errores(m)=error;
INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

45

Calculadora de lgebra lineal


if (error<eps1+eps2*norm(gs))
break
end
end
gs;sn;
METODO DE SOBRE RELAJACION SUCESIVA
ra=a;
rb=b;
w=1.5;
n=length(ra);
mmax=200;
eps1=10^-4;eps2=10^-4;
S=(zeros(1,n))';
errores=zeros(1,mmax);
M=1/w*diag(diag(ra))+tril(ra,-1);
normab=norm(rb);
r=(rb-ra*S);
rn=1;
for m=1:mmax
rn=1+rn;
error=0;
S=S+M\r;
r=(rb-ra*S); % residuo
norma=norm(r);
errores(m)=norma;
if (norma<eps1+eps2*normab)
break
end
end
S;
METODO DE MAXIMO DESCENSO
ma=a;
mb=b;
n=length(ma);
mmax=200;
eps=10^-4;
M=(zeros(1,n))';
res=zeros(1,mmax);
r=mb-ma*M;
res(1)=dot(r,r);
aux=norm(mb);
mn=1;
for m=1:mmax
mn=1+mn;
p=ma*r;
Mi=res(m)/dot(r,p);
INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

46

Calculadora de lgebra lineal


M=M+Mi*r;
r=r-Mi*p;
res(m+1)=dot(r,r);
if (sqrt(res(m+1))<eps*aux)
break
end
end
M;
GRADIENTE CONJUGADO
ga=a;
gb=b;
n=length(ga);
mmax=200;
tol=10^-4;
GR=(zeros(n,1));
res=zeros(1,mmax);
r=gb-ga*GR;
d=r;
res(1)=dot(r,r);
aux=norm(gb);
gn=1;
for m=1:mmax
gn=1+gn;
p=ga*d;
GRi=res(m)/dot(d,p);
GR=GR+GRi*d;
r=r-GRi*p;
res(m+1)=dot(r,r);
if (sqrt(res(m+1))<eps*aux)
break
end
tau=res(m+1)/res(m);
d=r+tau*d;
end
GR;
in=a^-1;
previos
helpdlg({strcat('Date:',date),'CALCULOS TERMINADOS'},'TOPO
2010');

%""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
""
INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

47

Calculadora de lgebra lineal


% eigen vectores y eigen
valores
%""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
""
global a n DD v PP PI
a=str2double(get(handles.DATO,'data'));
n=length(a);

METODO

DE JACOBI

A=a;
epsilon=0.0001;
D=A;
[n,n]=size(A);
V=eye(n);
state=1;
[m1 p]=max(abs(D-diag(diag(D))));
[m2 q]=max(m1);
p=p(q);
i=0;
for i=0:200
i=i+1;
theta=(D(q,q)-D(p,p))/2*D(p,q);
t=sign(theta)/(abs(theta)+sqrt(theta^2+1));
c=1/sqrt(t^2+1);
s=c*t;
R=[c s;-s c];
D([p q],:)=R'*D([p q],:);
D(:,[p q])=D(:,[p q])*R;
V(:,[p q])=V(:,[p q])*R;
[m1 p]=max(abs(D-diag(diag(D))));
[m2 q]=max(m1);
p=p(q);
if (abs(D(p,q)))<epsilon*sqrt(sum(diag(D).^2)/n);
state=0;
end
end
v=V;
DD=diag(D);

METODO

INGENIERIA CIVIL-UNSCH

SE LAS POTENCIAS

MTODOS NUMRICOS

48

Calculadora de lgebra lineal

AA=a;
X=ones(n,1);
epsilon=0.0001;
max1=200;
lambda1=0;
cnt=0;
err=1;
state=1;
while ((cnt<=max1)&&(state==1))
Y=AA*X;
[m j]=max(abs(Y));
c1=m;
dc=abs(lambda1-c1);
Y=(1/c1)*Y;
dv=norm(X-Y);
err=max(dc,dv);
X=Y;
lambda1=c1;
state=0;
if (err>epsilon)
state=1;
end
cnt=cnt+1;
end
PP=lambda1;

POTENCIA INVERSA

AI=a;
X=ones(n,1);
epsilon=0.0001;
max1=200;
alpha=0.001;
[n n]=size(A);
AI=AI-alpha*eye(n);
lambda=0;
cnt=0;
err=1;
state=1;
[L,U,P]=lu(AI);
while ((cnt<=max1)&(state==1))
Y=L\(P*X);
Y=U\Y;
INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

49

Calculadora de lgebra lineal


[m j]=max(abs(Y));
c1=m;
dc=abs(lambda-c1);
Y=(1/c1)*Y;
dv=norm(X-Y);
err=max(dc,dv);
X=Y;
lambda=c1;
state=0;
if (err>epsilon)
state=1;
end
cnt=cnt+1;
end
lambda=alpha+1/c1;
PI=lambda;

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

50

Calculadora de lgebra lineal


VII.

CONCLUSIONES
Llegamos ala conclusin que al aplicar los mtodos iterativos en el clculo de matrices.
Llegamos ala conclusin que los mtodos iterativos de jacobi y gauss-seidel son mtodos muy
eficientes ya que el tiempo empleado para conseguir una exactitud satisfactoria es muchsimo menor
que requiere los mtodos directos a la hora de calcular matrices de grandes dimensiones.
Durante los clculos realizados con los mtodos iterativos pudimos notar que el mtodo de gaussseidel converge mas rpido que el de jacobi esto debido a que el el radio espectral mucho menor en
que en de jacobi.
Este informe terico est basado en la idea de hacer notar las diferencias entre los mtodos
Iterativos y Directos y la importancia que tienen cada uno en nuestras vidas sin darnos cuentas la
mayora de las veces.
Por esta razn, se tomaron muestras matriciales cortesa de la pgina Matrix Market para realizar
pruebas y poder llegar a conclusiones concisas y reales, gracias a estas tablas y resultados arrojados
por el cdigo fuente que se dise especficamente para la demostracin de estos mtodos, podemos
notar que tanto LU como Cholesky tienen un nmero de sumas/restas muy parecido al de
multiplicaciones/divisiones el que es distinto de estos mtodos es el LDLt cuyas
multiplicaciones/divisiones son considerablemente menores al nmero de sumas/restas.
La grafica de convergencia entre los mtodos iterativos de Jacobi y Gauss-Seidel demuestra que pese
a que el mtodo de Jacobi tiene buenos planteamientos no se encuentra optimizado a diferencia del
mtodo de Gauss-Seidel, cuya convergencia es mucho mas rpida que el anterior.
Al momento de realizar los clculos mediante el mtodo de sobre relajacin que este acelera la
converga de sistemas que son tambin convergentes con el de gauss-seidel. Tal es caso que el
mtodo SOR requiere un numero menor de iteraciones que los mtodos de gauss-seidel y jacobi
debido a que usa una constante w con la cual se requiere un numero menor de iteraciones lo cual
tiene que sea mayor que 1 y que la mayor aproximacin pese una mayor convergencia es 1.55
Durante los clculos realizados realizados con los diversos mtodos para calcular sistemas de
ecuaciones pudimos observar que las matrices que poseen un mayor condicionamiento son las
matrices ortogonales ya bque estos poseen un K(A) muy cercano a uno tal es el caso que una matriz
cualquiera es el mltiplo de una matriz ortogonal pose un 2 = 1 () 1
El mtodo del gradiente conjugado es por lo general inferior ala eliminacin gausiana pivote, y la
eliminacin gausianna simple, sin embargo este mtodo es muy eficiente ala hora de calcular matrices
de grande dimensiones, pero muy poco densas y dispersas donde se utiliza una estructura de datos
donde solamente se almacena elementos no nulos.

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

51

Calculadora de lgebra lineal


Durante nuestros clculos realizados pudimos apreciar que el mtodo de jacobi para el clculo de
valores y vectores es til<para problemas de matrices de tamao moderado, mientras para
problemas con matrices simtricas (con matrices del orden de las centenas) es mejor usar el
mtodo de householder para obtener una matriz diagonal semejante y despus usar el mtodo QR.
En los clculos realizados con los mtodos para hallar los valores propios pudimos apreciar que a
diferencia que pasa con las matrices simtricas, las matrices reales que no son simtricas pueden
tener auto valores y auto vectores complejas .
En los clculos realizados para hallar vectores propios con los mtodos de la potencias y potencias
inversas pudimos darnos cuentas que los que se aprecia en los clculos realizados por iteraciones
sucesivas lo que se obtiene son el valor propio dominante y valor propio vacio de todo los valores
propios obtenidos

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

52

Calculadora de lgebra lineal

VIII.

BIBLIOGRAFIA
Lidmila Chainskiay Elizabet Doig; Elementos de anlisis Numrico. Fondo Editorial de la Pontificia

Universidad Catlica del Per; Primera edicin 1999.


Steven C. Chapra & Raymond Canale; Mtodos Numricos para Ingenieros. Editorial Mc Graw hill, Sptima
Edicin - 2007.
Hugo Scaletti; Apuntes de Mtodos Numricos, Universidad Nacional de Ingeniera
Antonio Nieves & C. Domnguez; Mtodos Numricos Aplicados A Ingeniera. Compaa Editorial Continental
- 2002. Pgina (129-238).
http://luda.azc.uam.mx/curso2/tema3/sistem02.html#elim
BURDEN, Richard L., FAIRES, J. Douglas: Numerical Analysis. Sixth edition.
http://www.netlib.org/na-digest-html/90/v90n07.html#4
http://www.uv.es/~diaz/mn/node29.html
http://luda.azc.uam.mx/curso2/tema3/sistema04.html
http://html.rincondelvago.com/ historia-de-las-matematicas_el-siglo-xviii.html

INGENIERIA CIVIL-UNSCH

MTODOS NUMRICOS

53