Gauss Seidel
Una matriz bandada es una matriz cuadrada en la que todos sus elementos son cero, con excepción de una banda sobre la diagonal principal. Un sistematridiagonal (es decir con un ancho de banda de 3) se puede expresar en forma general como:
f0
g0
x0
b0
e1
f1
g1
x1
=
b1
e2
f2
g2
x2
b2
e3f3
x3
b3
Basados en la descomposición LU podemos ver que el algoritmo de Thomas es:
La sustitución hacia adelante es
y hacia atrás es:
Ejemplo:
Resuelva el siguiente sistema tridiagonal por medio del algoritmo de Thomas.
2.04
-1
x0
40.8
-1
2.04
-1
x1
=
0.8
-1
2.04
-1
x2
0.8
-1
2.04
x3
200.8
La solución de la descomposición triangular es:
2.04
-1
-0.49
1.55
-1
-0.645
1.395
-1
-0.717
1.323
Lasolución del sistema es:
X = [65.970, 93.778, 124.538, 159.480]T
Descomposición de Cholesky.
Este algoritmo se basa en el hecho de que una matriz simétrica se puededescomponer en [A] = [L][L]T , dado que la matriz [A] es una matriz simétrica. En este caso aplicaremos la eliminación de Crout a la parte inferior de la matriz y la parte superior, simplementetendrá los mismos valores.
Así tomando las ecuaciones para la factorización LU la podemos adaptar como:
Podemos ver, que cualquier elemento bajo la diagonal se calcula como:para todo i=0,...,n-1 y j = 0,...,i-1.
Para los términos arriba de la diagonal, en este caso solo la diagonal
para todo i=0,...,n-1.
La implementación en Java es:
static public void Cholesky(double A[][]) {
int i, j, k, n, s;
double fact, suma = 0;
n = A.length;
for (i = 0; i < n; i++) { //k = i
for (j = 0; j
Regístrate para leer el documento completo.