54
1 Simulación Numérica de Yacimientos Dr. Fernando Rodríguez de la Garza e-mail: [email protected] Tel: 55508712, 5622 3017 al 19 Capítulo 7. Solución de Sistemas de Ecuaciones Lineales

Simulación Numérica de Yacimientos · 2 7. Solución de Sistemas de Ecuaciones Lineales. Se presentan métodos de solución comúnmente empleados en la simulación numérica de

  • Upload
    vokiet

  • View
    224

  • Download
    0

Embed Size (px)

Citation preview

1

Simulación Numérica de Yacimientos

Dr. Fernando Rodríguez de la Garza

e-mail: [email protected]: 55508712, 5622 3017 al 19

Capítulo 7.

Solución de Sistemas de Ecuaciones Lineales

2

7. Solución de Sistemas de Ecuaciones Lineales.

Se presentan métodos de solución comúnmente empleados en la simulación numérica de yacimientos.

Los sistemas de ecuaciones que se generan en la simulación de yacimientos se resuelven mediante:

Métodos DirectosRequieren de un número fijo de operaciones para resolver un sistema dado.

Métodos Iterativos No se puede predeterminar el número de operaciones, ya que la solución consiste en aplicar algoritmos cíclicos. Se espera que al paso de las iteraciones el método converja a la solución.

7.1 Métodos Directos.

Como se vio en el Capítulo 5, la solución numérica de las ecuaciones que de flujo en yacimientos generan sistemas lineales de ecuaciones con matrices bandadas y dispersas, en los que el ancho de banda es predecible.

En los métodos directos, el trabajo computacional y el requerimiento de memoria están directamente relacionados con el número de ecuaciones o de incógnitas a resolver.

3

7.1 Métodos Directos…

Entre mayor es el número de ecuaciones, el ancho de banda es generalmente mayor y la cantidad de memoria de cómputo y de tiempo de procesamiento son también mayores.

El número de ecuaciones y de incógnitas, para un problema dado, depende del número total de bloques o de celdas, en que se discretiza el dominio de interés y del número de pseudo componentes considerados.

7.1 Métodos Directos…

Los métodos directos, se basan en el Método de

Eliminación Gaussiana, MEG, y consisten de dos pasos:

Paso 1: En un barrido hacia delante se eliminan todos los elementos diferentes de cero ubicados debajo de la diagonal principal: Esto es, se transforma la matriz de coeficientes en una matriz triangular superior.

Paso 2: En un barrido hacia atrás (… sustitución hacia atrás) se se obtiene la solución de las incógnitas.

4

7.1 Métodos Directos…

Existen variaciones del MEG, que han sido motivadas por las características particulares de los sistemas de ecuaciones que se generan en algunas aplicaciones de las ciencias e ingenierías (…como es el caso de la simulación numérica de yacimientos) .

Dentro de estos métodos, los Algoritmos de Banda y lasTécnicas para resolver sistemas de ecuaciones con

Matrices Dispersas son de interés en la Simulación Numérica de Yacimientos.

7.1 Métodos Directos.

Los algoritmos de banda toman ventaja de la estructura bandada de la matriz para confinar las operaciones de eliminación dentro de la banda.

Las técnicas de matrices dispersas, reconocen la existencia de un gran número de ceros en la matriz de coeficientes y evitan su almacenamiento y operaciones innecesarias.

5

7.1 Métodos Directos.

El trabajo de los algoritmos de banda depende del ancho de la banda. Para una cierta malla de cálculo, el menor ancho de banda se obtiene ordenando las ecuaciones e incógnitas en la dirección del menor número de celdas.

La eficiencia de los métodos directos se mejora grandemente cuando se emplean técnicas especiales de ordenamiento de las ecuaciones e incógnitas, como es el caso del Ordenamiento D4.

7.1.1 Método de Eliminación Gaussiana

El método de Eliminación Gaussiana es la base de todos los métodos de solución directa de sistemas lineales de ecuaciones. Sus bases se expondrán con un ejemplo simple:

Considerar el sistema de ecuaciones:

Donde

dAu =

−=

=

=

7

2

1

;;

122

014

112

3

2

1

d

u

u

u

uA

6

o bien,

El método consiste en eliminar, en una primera etapa, los elementos ubicados debajo de la diagonal principal, mediante operaciones entre las ecuaciones, y en una segunda etapa, resolver las incógnitas mediante substitución hacia atrás.

−=

− 7

2

1

122

014

112

3

2

1

u

u

u

7.1.1 Método de Eliminación Gaussiana.

En el ejemplo, durante la primera etapa se realizan 3 operaciones de eliminación:

1a. Operación: Restamos 2 veces la primera ecuación de la segunda.2a. Operación: Restamos –1 veces la primera ecuación de la tercera.

7.1.1 Método de Eliminación Gaussiana.

−=

−−

8

4

1

230

210

112

3

2

1

u

u

u

7

−=

−−

4

4

1

400

210

112

3

2

1

u

u

u

7.1.1 Método de Eliminación Gaussiana.

3a. Operación: Restamos –3 veces la segunda ecuación de la tercera.

El coeficiente del vector u, es un matriz triangular superior, U: “Todos

los valores debajo de la diagonal principal son cero”.

El vector c se obtuvo a partir de d con las mismas operaciones que

transformaron a A en U.

−=

−−=

4

4

1

;

400

210

112

3

2

1

c

u

u

u

Uu

7.1.1 Método de Eliminación Gaussiana.

Haciendo:

8

Cuál es la relación entre A y U?

Veremos primero la forma matricial de las operaciones de eliminación:Notar que la 1a operación de eliminación es equivalente a efectuar la

siguiente operación sobre Au=d.

dEAuE 2121 =

7.1.1 Método de Eliminación Gaussiana.

100

012

001

21

−=E

donde,

Matriz Elemental 21

Los subíndices de E indican que la ecuación 2 fue alterada por un múltiplo de la ecuación 1: El múltiplo de 1 que se restó de la ecuación

2 fue: –e21= 2.

relación entre A y U...

−−=

3

2

1

3

2

1

122

210

112

122

014

112

100

012

001

u

u

u

u

u

u

7.1.1 Método de Eliminación Gaussiana.

O sea que,

d21EHaciendo ahora,

−=

7

4

1

7

2

1

100

012

001

9

( ) ( )dEEuAEE 21312131 =

7.1.1 Método de Eliminación Gaussiana.

Similarmente, la operación 2 de eliminación se representa matricialmente como:

101

010

001

31

=E Matriz Elemental 31

Los subíndices de E indican que la ecuación 3 fue alterada por un múltiplo de la ecuación 1: El múltiplo de 1 que se restó de la ecuación

3 fue: –e31= -1.

−=

−−

8

4

1

230

210

112

3

2

1

u

u

u

7.1.1 Método de Eliminación Gaussiana.

=

−−

7

4

1

101

010

001

122

210

112

101

010

001

3

2

1

u

u

u

Esto es:

Realizando operaciones:

10

130

010

001

=32E

7.1.1 Método de Eliminación Gaussiana.

y la operación 3 de eliminación es:

( ) ( )dEEEuAEEE 213132213132 =

donde:

Matriz Elemental 32

Los subíndices de E indican que la ecuación 3 fue alterada por un múltiplo de la ecuación 2: El múltiplo de 2 que se restó de la ecuación

3 fue: –e32= -3.

=

−−

8

4-

1

130

010

001

230

210

112

130

010

001

3

2

1

u

u

u

7.1.1 Método de Eliminación Gaussiana.

y realizando operaciones, se tiene que:

=

−−

4-

4-

1

400

210

112

3

2

1

x

x

x

cUu =

La operación 3 de eliminación es entonces,

Resumiendo: Las operaciones de eliminación generaron,

U es una matriz triangular superior

11

Nótese que para formar las matrices elementales Eij se parte de la

matriz identidad, I, y se remplaza el cero en la fila i, columna j por

( –lij ) siendo lij el múltiplo de la ecuación j que se resta de la

ecuación i.

7.1.1 Método de Eliminación Gaussiana.

cdEEE =213132

UAEEE =213132

Las 3 operaciones matriciales que convierten a la matriz A en Uson:

Similarmente:

Nótese también que se pudo haber realizado, independientemente, la siguiente operación:

−=

135

012

001

213132 EEE

7.1.1 Método de Eliminación Gaussiana.

matriz triangular inferior

12

UEAEEEE 1

32213132

1

32

−− =

7.1.1 Método de Eliminación Gaussiana.

Notar que:

Recordando que:

Donde:

IEE =−32

1

32

=−

130

010

0011

32E

( ) UEEAEEE 1

32

1

312131

1

31

−−− =

=

− 100

010

001

130

010

001

130

010

001

o sea:

7.1.1 Método de Eliminación Gaussiana.

De igual forma:

Finalmente:

UEEEA 1

32

1

31

1

21

−−−=

13

LEEE =−−− 1

32

1

31

1

21

7.1.1 Método de Eliminación Gaussiana.

Pero:

Es la matriz que convierte U en A:

=

130

010

001

101

010

001

100

012

001

L

−−

=

131

012

001

L

dAu =

7.1.1 Método de Eliminación Gaussiana.

Resumiendo:

pero A se puede descomponer en el producto LU:

( ) dLLUuL 11 −− =

dLUu=

de manera que por eliminación se transformó en:

cUu =

o sea:

14

7.1.1 Método de Eliminación Gaussiana.

Entonces:

cUx 1−=

dULx 11 −−=

bAx 1−=

ó,

Una vez que se calculan L y U, es posible obtener la solución x’

para cualquier nuevo d’ en n2 operaciones: n2/2 hacia delante,

para obtener c’ y n2/2 hacia atrás para obtener x’

7.1.2 Solución de Sistemas Tridiagonales: Algoritmo de Thomas.

Considerar el siguiente sistema tridiagonal de ecuaciones:

a1u1 + b1u2 = d1

ciui-1 + aiui + biui+1 = di ; i=2,3,...,I-1

cIuI-1 + aIuI = dI…(7.1)

o bien,

Au = d …(7.2)

15

7.1.2 Solución de Sistemas Tridiagonales…Thomas.

donde,

=

II ac

bac

bac

ba

A

...

...

...

333

222

11

uT = (u1,u2,...,uI)

dT = (d1,d2,...,dI).

y,

7.1.2 Solución de Sistemas Tridiagonales.. Thomas.

La matriz A se descompone como el siguiente el producto

A = WQ …(7.3)

Donde,

=

II wc

wc

wc

w

W

..

..

..

33

22

1

16

7.1.2 Solución de Sistemas Tridiagonales… Thomas.

y,

=

1

1

..

..

1

1

1

1

3

2

1

Iq

q

q

q

Q

7.1.2 Solución de Sistemas Tridiagonales… Thomas.

Efectuando el producto WQ e igualando la matriz

resultante, elemento elemento, con la matriz A, se obtiene un sistema de 2I-1 ecuaciones con 2I-1 incógnitas: w1, w2,...,

wI y q1, q2,..., qI-1. Su solución da lo siguiente:

1

11

11

w

bq

aw

=

=

;i

ii

w

bq = …(7.4)

1−−= iiii qcaw

Ii ,....,3,2=

…(7.5)

17

7.1.2 Solución de Sistemas Tridiagonales…Thomas.

La solución del sistema tridiagonal se obtiene como sigue:

( ) ( ) ( )ννν

=

+

IIII d

d

d

d

g

g

g

g

wc

wc

wc

w

.

.

.

.

.

.

..

..

..

3

2

1

1

3

2

1

33

22

1

Au = WQu = Wg

donde

…(7.6)

g = Qu

Es decir,

7.1.2 Solución de Sistemas Tridiagonales…Thomas.

y en un barrido hacia delante se resuelve g:

Iiw

gcdg

w

dg

i

iiii ,....,3,2;1

1

11

=−

=

=

( ) ( ) ( )ννν

=

+

II

I

g

g

g

g

u

u

u

u

q

q

q

q

.

.

.

.

.

.

1

1

..

..

1

1

1

3

2

1

1

3

2

1

1

3

2

1

Finalmente se puede resolver Qu=g como sigue:

…(7.7)

18

7.1.2 Solución de Sistemas Tridiagonales: Algoritmo de Thomas.

y en un barrido hacia atrás se obtiene la solución deseada:

Resumiendo:

Para resolver el sistema tridiagonal Au = d, es necesario

calcular primero los elementos qi, wi y gi mediante las Ecs.

7.4, 7.5 y 7.7 y posteriormente obtener la solución de uimediante las Ecs. 7.8.

uI = gI

ui = gi - qiui+1; i= I-1, I-2,…, 1

…(7.8)

7.1.3 Algoritmos de matrices dispersas: Descomposición LDU.

19

7.2 Métodos Iterativos.

Los métodos iterativos adquieren interés en el caso de problemasmultidimensionales, donde el número de ecuaciones a resolver es relativamente grande. Básicamente existen dos tipos:

1. Métodos iterativos por punto, (MIP).2. Métodos iterativos por línea o bloque, (MIL/B).

En los métodos iterativos por punto, MIP, las incógnitas de cada nodo se resuelven explícitamente en cada iteración.

En los métodos iterativos por línea/bloque, MIL/B, las incógnitas de un grupo de celdas se resuelven simultáneamente (ó implícitamente).

7.2 Métodos Iterativos.

Entre mayor sea el número de íncógnitas que se resuelven simultáneamente, o dicho de otra manera, entre más implícito sea el MIL/B, la convergencia a la solución será más rápida (...se necesitarán menos iteraciones).

A mayor implicitud se requerirá , sin embargo, una mayor capacidad de memoria de cómputo y un mayor esfuerzo computacional por iteración.

Por lo anterior, en la implementación de un método iterativo por bloques, es necesario hacer un balance entre implicitud y simplicidad para resolver el sistema de ecuaciones generado por los bloques.

20

7.2 Métodos Iterativos.

Los métodos iterativos están ligados a parámetros de iteración, quese introducen en el algoritmo para acelerar la convergencia a la solución.

El ritmo de convergencia de un algoritmo dado, depende de varios factores, como son:

– Las características de la malla de cálculo, – La anisotropía y las heterogeneidades de la formación, – La estimación inicial de la solución – El criterio de convergencia

7.2 Métodos Iterativos.

A continuación se presentan algunos de estos métodos.

Considérese el siguiente sistema de ecuaciones:

ijjiijjiijjiijjiijjiij dueubuaucuf =++++ ++−− 1,,1,,11,

Dentro de los métodos iterativos que han recibido atención en la simulación numérica de yacimientos están el PSOR, LSOR, BSOR y algunas variantes de estos.

Otros métodos son el ADIP y SIP.

Ninguno de estos métodos es universal: algunos funcionan bien bajo algunas circunstancias y mal bajo otras.

…(7.9)

Jj

Ii

,...,2,1

,...,2,1

=

=

21

Como antecedentes a los métodos SOR se presenta primeramente los métodos de:

Jacobi y de Gauss Seidel.

La solución del sistema de ecuaciones, Ec. 7.9, mediante el método de Jacobi consiste en la aplicación sucesiva del siguiente proceso iterativo:

…(7.10)

donde m+1 y m son los niveles iterativos, desconocido y conocido

respectivamente.

( ) ( ) ( ) ( ) ( ){ }m

jiji

m

jiji

m

jiji

m

jijiji

ji

m

ji ueubucufda

u 1,,,1,,1,1,,,

,

1

,

1++−−

+ −−−−=

7.2.1 Método de Jacobi.

22

7.2.1 Método de Jacobi.

Nótese que la solución de las incógnitas se obtienen puntualmente, o explícitamente y que el orden en que estas se resuelven es irrelevante.

Como cualquier proceso iterativo, se requiere de una estimación inicial de la solución y se espera que en la medida en que las iteraciones avancen, el método converja a la solución.

La converjencia ocurre cuando los cambios iterativos de las incógnitas en todos los nodos sean, en valor absoluto, menor que una tolerancia preestablecida.

7.2.2 Método de Gauss-Seidel.Se observa que si en el método de Jacobi se establece un orden en la solución de las incógnitas mediante, el ordenamiento normal por ejemplo, en la medida que se avanza la solución, existe ya en los nodos barridos una mejor estimación de la solución.

El método de Gauss-Seidel reconoce este hecho y modifica el algoritmo iterativo de Jacobi de la siguiente manera:

( ) ( ) ( ) ( ) ( ){ }m

jiji

m

jiji

m

jiji

m

jijiji

ji

m

ji ueubucufda

u 1,,,1,

1

,1,

1

1,,,

,

1

,

1++

+−

+−

+ −−−−=

donde el barrido se hace por renglones. Esto es, en orden creciente de j , y para cada renglón j se barre en orden creciente de i.

(7.11)

El método de Gauss-Seidel es computacionalmente más simple que el método de Jacobi y converge más rápido a la

solución.

23

7.2.3 Método de SOR en Punto o PSOR.

El método iterativo del PSOR es en una modificación del método deGauss-Seidel, donde se introduce el uso de un parámetro de iteración, con el objeto de acelerar el proceso de convergencia a la solución. Si se denomina a la solución obtenida mediante el método de Gauss-Seidel en la iteración m+1, el método PSOR se define como:

( )

21

1 )1*(

,

)(

,

)1(

,

≤≤

+−= ++

ω

ωω m

ji

m

ji

m

ji uuu

donde ω es un parámetro de sobrerrelajación que, como ya se

mencionó, acelera el ritmo de convergencia de la solución. El parámetro adquiere valores en el rango de 1 a 2. Mas adelante se darán algunos criterios para la estimación de este parámetro.

…(7.12)

7.2.4 Método de SOR en Línea o LSOR.Se establecen, en cada iteración, sistemas de ecuaciones similares a los generados en problemas lineales: Se resuelven simultáneamentelas incógnitas correspondientes a una línea o columna de celdas

En la solución de las incógnitas de una línea determinada, se emplean los nuevos valores de las incógnitas obtenidos en líneas anteriores.

Como una extensión del método de Gauss-Seidel, para cada j se establece el siguiente sistema de ecuaciones:

( ) ( ) ( ) ( ) ( )m

jiji

m

jijiji

m

jiji

m

jiji

m

jiji ueufdubuauc 1,,

1

1,,,

1*

,1,

1*

,,

1*

,1, ++−

++

++− −−=++

i = 1,2,....,I para cada j

(7.13)

24

7.2.4 Método de SOR en Línea o LSOR.

El sistema de ecuaciones generado con la Ec. 7.13 es tridiagonal. Se puede entonces resolver mediante el algoritmo de Thomas. Una vez que se obtiene la solución de las incógnitas , i=1,2,...,I para la línea j, esta se sobrerrelaja como en la Ec. 7.12, esto es:

( )

21

1 )1*(

,

)(

,

)1(

,

≤≤

+−= ++

ω

ωω m

ji

m

ji

m

ji uuu

El ritmo de convergencia del método LSOR, depende del valor del parámetro de sobrerelajación. Existe un valor óptimo de este parámetro, que se puede obtener por ensaye y error, como se verá posteriormente.

…(7.14)

7.2.4 Método de SOR en Línea o LSOR.

El proceso iterativo LSOR comienza con la siguiente estimación inicial:

( ) n

jiji uu ,

0

, δδ =

( ) ( ) toleranciauu m

ji

m

ji ≤−+,

1

, δδ

y termina cuando los cambios iterativos de las incógnitas son, en valor absoluto, menores que una cierta tolerancia estipulada, esto es:

(7.15)

(7.16)

Jj

Ii

,...,2,1

,...,2,1

=

=Para todo

25

7.2.5 Método de SOR en Bloque o BSOR.

La idea principal de este método consiste en rearreglar por planos el sistema de ecuaciones generado para un problema tridimensional:

jikjikjikjikjikjikji

kjikjikjikjikjikjikjikji

dugueub

uaucufuh

,1,,,,,1,,,,,1,,

,,,,,,1,,,1,,,1,,,,

=+++

+++

+++

−−−

El problema tridimensional, Ec. 7.17, se resuelve mediante una serie de barridos bidimensionales, empleando los nuevos valores de las incógnitas de los planos previamente resueltos.

i = 1,2,...,I ; j = 1,2,...,J ; k = 1,2,…,K

(7.17)

7.2.5 Método de SOR en Bloque o BSOR.

El método de sobrerelajación en Bloque, BSOR, aplicado a la solución del sistema lineal de ecuaciones definido por la Ec. 7.17, consiste en conservar en el lado izquierdo de la ecuación a los términos correspondientes a dos direcciones así como a la diagonal principal y pasar al lado derecho los términos correspondientes a una dirección y a los términos de residuos, con lo que se establece el siguienteproceso iterativo:

( ) ( ) ( ) ( ) ( )

( ) ( )m

kjikji

m

kjikjiji

m

kjikji

m

kjikji

m

kjikji

m

kjikji

m

kjikji

uguhd

ueubuaucuf

1,,,,

1

1,,,,,

1*

,1,,,

1*

,,1,,

1*

,,,,

1*

,,1,,

1*

,1,,,

++

++

++

++−

+−

−−=

++++(7.18)

Se resuelven simultáneamente: i = 1,2,...,I ; j = 1,2,...,J

Para cada plano, k = 1,2,…,K

26

7.2.5 Método de SOR en Bloque o BSOR.

El problema bidimensional, Ec. 7.18, genera para un ordenamientonormal, una matriz de coeficientes pentadiagonal que se resuelve más eficientemente que el problema original.

Cada uno de estos problemas reducidos, se resuelve empleando un esquema directo de solución, con lo que se genera una solución intermedia que sirve de base para obtener la solución al nivel de iteración desconocido, (m+1). Una vez que se obtiene la solución intermedia de las incógnitas , i=1,2,...,I y j=1,2,….,Jcorrespondientes al plano k, ésta se sobrerrelaja como la Ec. 7.14.

7.2.5 Método de SOR en Bloque o BSOR.

En problemas donde el método LSOR no converge debido, por ejemplo, a que la formación es altamente heterogénea y anisotrópica, el método BSOR tiene un mejor comportamiento.

Las propiedades de convergencia de estos método iterativos mejoran a medida que el número de ecuaciones resueltas simultáneamente aumenta. Esto; sin embargo, ocasiona un aumento en el trabajo computacional realizado en cada iteración.

Al igual que el método anterior, el método BSOR comienza con unaestimación inicial dada por la Ec. 7.15 y termina cuando alcanza la convergencia estipulada, dada por la Ec. 7.16

27

7.2.6 Algoritmo para el cálculo del parámetro de sobrerelajación.

Una forma de obtener el valor óptimo de ω a emplear en LSOR y BSOR es mediante ensaye y error:

Se realizan corridas de sensibilidad con diferentes valores de ω y se gráfica ω contra el No. de Iteraciones requeridas en la solución. El ωóptimo, ωópt , es aquel que requiere el menor número de iteraciones.

7.2.6 Algoritmo para el cálculo del parámetro de sobrerelajación.

Otra manera de obtener ωopt es a través del procedimiento siguiente:

*)(*)1( duAu mm +=+

( )[ ] 21

2*11

2

Ab

ρω

−+=

donde ωb es el parámetro de sobrerelajación óptimo.

Se parte de considerar que cualquier esquema iterativo para resolver el sistema de ecuaciones puede expresarse de la siguiente forma:

(7.19)

donde m+1 es el nivel iterativo desconocido y m el conocido.

El valor óptimo de está en función del radio espectral de la matriz A*, ρ(Α∗) , de la siguiente manera:

(7.20)

28

7.2.6 Algoritmo para el cálculo del parámetro de sobrerelajación.

El radio espectral de la matriz A*, , está definido como:

(7.21)

donde es el valor promedio del ritmo al cual converge la solución, el cual se calcula con la siguiente expresión:

(7.22)

donde es el vector de los cambios iterativos de la solución, definido como:

(7.23)

y es la norma del vector solución de los cambios iterativos.

( ) ( )2

1

1*

θω

ωθρ

−+=A

( )*Aρ

( )( )

( )m

m

m

u

u

δ

δθ

1

1

+

+ =

θ( )1+mθ

( )1+muδ

( ) ( ) ( )mmm uuu −= ++ 11δ

7.2.6 Algoritmo para el cálculo del parámetro de sobrerelajación.

Los valores de deben estar muy próximos a un valor límite de y este valor se usa como una aproximación en el cálculo del radio espectral.

También se requiere un valor inicial de en la Ec. 7.21 para obtener el vector solución . Por tal motivo, se requiere que este proceso iterativo se inicialice con y se cumpla con la siguiente condición:

(7.24)

De tal manera que este proceso iterativo se detiene hasta lograr la convergencia estipulada, Ec. 7.24. Cabe mencionar, que este proceso converge solo si el valor de es menor que el nuevo valor de

calculado. De otra forma, los valores de oscilarán y no se podrá obtener una aproximación correcta del radio espectral, . En este último caso, debe reducirse hasta que logre la convergencia.

( )1+mθ θ

ω( )1+muδ

1=ω

( ) ( ) toleranciamm ≤−+ θθ 1

)(mω)1( +mω ( )mθ

( )Aρω ( )mθ

29

7.2.7 Método ADIP (ProcedimientoIterativo de Dirección Alternada).

ijjiijjiij

jiijacijyijxjiijjiij

dueub

uaaaucuf

=++

++++

++

−−

1,,1

,,,,,11, )(

El desarrollo del método ADIP, comienza por reconocer que en problemas de flujo bidimensional, el coeficiente aij de la ecuación 7.9 puede descomponerse como la suma de las contribuciones de los términos de flujo en x, y y del término de acumulacion, esto es:

Matricialmente, podemos escribir este sistema de ecuaciones como sigue:

Jj

Ii

,...,2,1

,...,2,1

=

=

Peaceman, D.W. y Rachford, H.H.:” The Numerical Solution of Parabolic and Elliptic Differential Equations,” SIAM J. Numerical Analysis (1955) 3, 28-41

7.2.7 Método ADIP ...

duSVH =++ )(Donde:

H = Matriz que contiene las contribuciones del término de flujo en x

V = Matriz que contiene las contribuciones del término de flujo en y

S = Matriz que contiene la contribución del término de acumulación

=

x

x

x

x

x

x

x

x

x

x

x

x

ac

bac

bac

bac

bac

bac

bac

bac

bac

bac

bac

ba

H

=

y

y

y

y

y

y

y

y

y

y

y

y

af

af

af

eaf

eaf

eaf

eaf

eaf

eaf

ea

ea

ea

V

=

ac

ac

ac

ac

ac

ac

ac

ac

ac

ac

ac

ac

a

a

a

a

a

a

a

a

a

a

a

a

S

30

7.2.7 Método ADIP ...

duSS

VH =+++ )22

(

El sistema matricial ------ puede rearreglarse como:

El algoritmo iterativo del ADIP consiste de resolver las incógnitas dela iteración m+1 en dos barridos. En el primer barrido, en x, se obtiene una solución intermedia, u* , rearreglando ---- como sigue:

durIrISS

VH =−++++ )22

(

y se suma y resta la constante r (parámetro de iteración) en la diagonal principal (o sea la matriz rI, donde I es la matriz identidad):

)()1()1*()1( )2

()2

( mmmm uIrS

HduIrS

V +++ +−−=++

7.2.7 Método ADIP ...

En el segundo barrido, en y, se obtiene la solución de la iteración m+1 :

)*()1()1()1( )2

()2

( mmmm uIrS

VduIrS

H +++ +−−=++

Al final de cada iteración se verifica la convergencia, esto es, se habrá alcanzado la solución solo si para todo i,j se cumple que:

ε≤−+ )()1( m

ij

m

ij uu

Nótese que la ecuación matricial ---- que representa el primer

barrido se puede escribir equivalentemente como:

31

7.2.7 Método ADIP ...

)(

1,

)()1(

,,

)(

1,

)1(*,

,1

)1(*,

,

)1(

,,

)1(*,

,1

)2

1(

)2

1(

m

jiij

m

ij

m

ijacijy

m

jiijij

m

jiij

m

ji

m

ijacijx

m

jiij

ueuraaufd

uburaauc

++

++

+++−

−−+−−=

++++

Jj

Ii

,...,2,1

,...,2,1

=

=

Al escribir esta ecuación en cada j y todas las i’es ( i=1,2,...I) se genera un subsistema de I ecuaciones con I incógnitas, similar al que se resulta de problemas de flujo 1D:

j=12

J

1=1 2 I

)(*,)1(*,

,1

)1(*,

,

)1(

,

)1(*,

,1

m

ij

m

jiij

m

ji

m

ijX

m

jiij dubuauc =++ ++

+++−

dadaj

Ii ,...,2,1=

Primer Barrido: Solución

Intermedia u*i,j

7.2.7 Método ADIP ...

)(

,1

)(*,)1(

,,

)(*,

,1

)1(

1,

)1(

,

)1(

,,

)1(

1,

)2

1(

)2

1(

m

jiij

m

ij

m

ijacijy

m

jiijij

m

jiij

m

ji

m

ijacijy

m

jiij

uburaaucd

ueuraauf

++

++

+++−

−−+−−=

++++

Jj

Ii

,...,2,1

,...,2,1

=

=

Vemos de nuevo que esta ecuación escrita en cada i, para toda j

( j=1,2,...J) genera subsistemas de J ecuaciones con J incógnitas

Similarmente, la ecuación ---- del segundo barrido se escribe como:

j=12

J

i=12 I

)(**,)1(

1,

)1(

,

)1(

,

)1(

1,

m

ij

m

jiij

m

ji

m

ijY

m

jiij dueuauf =++ ++

+++−

dadai

Jj ,...,2,1=

Segundo Barrido: Solución ui,j

(m+1)

32

7.2.7 Método ADIP ...

Bjordammen y Coats, (1969) sugieren calcular rmax y rmin como:

Los parámetros de iteración se calculan mediante una progresión geométrica:

)()1( mm rr ω=+m=1,2,...,M-1

1

1

min

max−

=

M

r

1max =r

∆+

∆+

=

jiy

x

jix

yji

k

k

x

yJ

k

k

y

xI

r

,

2

2

2

,

2

2

2

,min

12

,

12

minππ

7.2.7 Método ADIP ...

La aplicación de estos parámetros durante el proceso iterativo de solución es cíclica. Esto es, si se requiere un número iteraciones mayor que M, los parámetros de iteración se repiten nuevamente, r(1), r(2), ...., hasta alcanzar la convergencia.

El número de parámetros de iteración, M, se determina generalmente por ensaye y error: Típicamente M = 6

33

7.2.8 Método SIP (ProcedimientoFuertemente Implícito)

Fue el primer método de factorización aproximada empleado en la SNY. La solución se obtiene mediante un proceso de eliminación que trabaja sobre una versión modificada de la matriz original.

Sea nuevamente el problema a resolver el siguiente:

Stone, H.L.:”Iterative Solution of Implicit Approximations of Multidimensional Partial Differential Equations,” SIAM J. Numerical Analysis (1968) 5, 530-58.

dAu =

Se busca reemplazar A por A*, siendo esta última tal que pueda factorizarse mas fácilmente en el producto de dos matrices, LU, triangular inferior y triangular superior, respectivamente.

7.2.8 Método SIP ...En problemas bidimensionales, L y U se condicionan a tener sólo tres elementos diferentes de cero en cada renglón. Esto se traduce en menos trabajo computacional para resolver el sistema por eliminación.

La definición del algoritmo iterativo parte de sumar y restar A*u al sistema original:

o bien,

duAuAAu +−= **

y se rearregla iterativamente como:

dAuuAuA mmm −=−+ )()(*)1(*

)()1(* mm RuA =+δ

34

7.2.8 Método SIP ...donde:

)()1()1( mmm uuu −= ++δ

y ,dAuR mm −= )()(

pero,

LUA =*

)()1( mm RuLU =+δ

entonces,

7.2.8 Método SIP ...Si hacemos:

tenemos que podemos resolver el vector v(m+1) hacia adelante,

Una vez resuelto v(m+1) la solución de δu(m+1) se obtiene mediante substitución hacia atrás,

)1()1( ++ = mm vuUδ

)()1( mm RLv =+

Se procede luego a verificar la convergencia, y se dará por concluido el proceso iterativo cuando de solución cuando

ε≤−+ )()1( m

ij

m

ij uu

35

7.2.8 Método SIP ...

Se derivará el algoritmo del SIP mediante un problema bidimensional.

Considérese nuevamente el sistema problema:

ijjiijjiij

jiijjiijjiij

dueub

uaucuf

=++

++

++

−−

1,,1

,,11,

Jj

Ii

,...,2,1

,...,2,1

=

=

i = 1

j = 1

2 3 4

2

3

1 2 3 4

5 6 7 8

9 10 11 12

7.2.8 Método SIP ...Se tiene entonces, siguiendo el ordenamiento indicado:

=

3,4

3,3

3,2

3,1

2,4

2,3

2,2

2,1

1,4

1,3

1,2

1,1

3,4

3,3

3,2

3,1

2,4

2,3

2,2

2,1

1,4

1,3

1,2

1,1

3,43,43,4

3,33,33,33,3

3,23,23,23,2

3,13,13,1

2,42,42,42,4

2,32,32,32,32,3

2,22,22,22,22,2

2,12,12,12,1

1,41,41,4

1,31,31,31,3

1,21,21,21,2

1,11,11,1

000000000

00000000

00000000

000000000

00000000

0000000

0000000

00000000

000000000

00000000

00000000

000000000

d

d

d

d

d

d

d

d

d

d

d

d

u

u

u

u

u

u

u

u

u

u

u

u

acf

bacf

bacf

baf

eacf

ebacf

ebacf

ebaf

eac

ebac

ebac

eba

36

7.2.8 Método SIP ...Si definimos L como:

=

3,43,43,4

3,33,33,3

3,23,23,2

3,13,1

2,42,42,4

2,32,32,3

2,22,22,2

2,12,1

1,41,4

1,31,3

1,21,2

1,1

000000000

000000000

000000000

0000000000

000000000

000000000

000000000

0000000000

0000000000

0000000000

0000000000

00000000000

ACF

ACF

ACF

AF

ACF

ACF

ACF

AF

AC

AC

AC

A

L

7.2.8 Método SIP ...y U como:

=

100000000000

10000000000

01000000000

00100000000

00010000000

0001000000

0000100000

0000010000

00000001000

0000000100

0000000010

0000000001|

3,3

3,2

3,1

2,4

2,32,3

2,22,2

2,12,1

1,4

1,31,3

1,21,2

1,11,1

B

B

B

E

EB

EB

EB

E

EB

EB

EB

U

37

7.2.8 Método SIP ...Entonces tenemos:

==

*

3,4

*

3,4

*

3,4

*

3,3

*

3,3

*

3,3

*

3,3

*

3,3

*

3,2

*

3,2

*

3,2

*

3,2

*

3,2

*

3,1

*

3,1

*

3,1

*

3,1

*

2,4

*

2,4

*

2,4

*

2,4

*

2,4

*

2,3

*

2,3

*

2,3

*

2,3

*

2,3

*

2,3

*

2,3

*

2,2

*

2,2

*

2,2

*

2,2

*

2,2

*

2,2

*

2,2

*

2,1

*

2,1

*

2,1

*

2,1

*

2,1

*

1,4

*

1,4

*

1,4

*

1,4

*

1,3

*

1,3

*

1,3

*

1,3

*

1,3

*

1,2

*

1,2

*

1,2

*

1,2

*

1,2

*

1,1

*

1,1

*

1,1

*

000000000

0000000

0000000

0000000

0000000

00000

00000

0000000

00000000

0000000

0000000

000000000

acf

bachf

bachf

bahf

egacf

egbachf

egbachf

ebahf

egac

egbac

egbac

eba

LUA

7.2.8 Método SIP ...donde:

jiji Ff ,

*

, =

1,,

*

, −= jijiji BFh

jiji Cc ,

*

, =

jijijijijiji ABCEFa ,,1,1,,

*

, ++= −−

jijiji BAb ,,

*

, =

jijiji ECg ,1,

*

, −=

jijiji EAe ,,

*

, =

38

7.2.8 Método SIP ...

Vemos entonces que se tiene ahora lo siguiente:

ijjijijijijiji

jijijijijijijiji

dueugub

uaucuhuf

=+++

+++

++−+

−−+−

1,

*

,1,1

*

,,1

*

,

,

*

,,1

*

,1,1

*

,1,

*

,

Jj

Ii

,...,2,1

,...,2,1

=

=

i,j i+1,ji-1,j

i-1,j-1 i,j-1

i+1,j+1i,j+1

Donde aparecen dos incógnitas adicionales en los nodos i-1.j-1e i+1,j+1:

7.2.8 Método SIP ...

Ahora bien, si modificamos ligeramente el sistema original de ecuaciones como sigue:

ijjijijijijijijijiji

jijijijijijijijijijiji

dueuuuugub

uaucuuuuhuf

=+−+−++

++−+−+

+−++−+

−−+−+−

1,,,,11,1,1,,1,

,,,1,,1,,11,1,1,,

)]([

)]([

α

α

Nótese que

jijijiji uuuu ,1,,11,1 −+≈ −+−+

y

jijijiji uuuu ,,11,1,1 −+≈ −++−

Aproximaciones que se obtienen como sigue:

39

7.2.8 Método SIP ...

)( 2

1,

1,1,1 xOx

uxuu

ji

ijiji ∆+∂

∂∆−=

+

++−

)( 2

,1

,1, xOx

uxuu

ji

ijiji ∆+∂

∂∆+=

)( 2

,1

,11,1 yOy

uyuu

ji

jjiji ∆+∂

∂∆−=

+

+−+

)( 2

1,

1,, yOy

uyuu

ji

jjiji ∆+∂

∂∆+=

restando, y considerando

que

se obtiene la aproximación para ui-1,j+1

ji

i

ji

ix

ux

x

ux

,11, −+ ∂

∂∆=

∂∆

restando, y considerando

que

se obtiene la aproximación para ui+1,j-1

1,,1 −+∂

∂∆=

∂∆

ji

j

ji

jy

uy

y

uy

7.2.8 Método SIP ...

La ecuación modificada se escribe entonces como:

ijjijijijiji

jijijijijijiji

jijijijijijijiji

dugeug

uhbugha

ugcuhuhf

=−++

−++++

−++−

++−

+

−−+−

1,,,1,1,

,1,,,,,,

,1,,1,1,1,,,

)(

)()(

)()(

α

ααα

αα

Comparando esta ecuación con la obtenida previamente del producto A*=LU encontramos las siguientes equivalencias:

40

7.2.8 Método SIP ...

jijiji hff ,,

*

, α−=

jiji hh ,

*

, =

jijiji gcc ,,

*

, α−=

jijijiji ghaa ,,,

*

, αα ++=

jijiji hbb ,,

*

, α−=

jiji gg ,

*

, =

jijiji gee ,,

*

, α−=

7.2.8 Método SIP ...

jijiji Fhf ,,, =−α

1,,, −= jijiji BFh

jijiji Cgc ,,, =−α

jijijijijijijiji ABCEFgha ,,1,1,,,,, ++=++ −−αα

jijijiji BAhb ,,,, =−α

jijiji ECg ,1,, −=

jijijiji EAge ,,,, =−α

y de acuerdo a la definición de f*, h*, c*..., en términos de los elementos de L y U, tenemos:

Sistema de 7 ecuaciones

con 7 incógnitas:

G,C,A,B,F,h,e

41

7.2.8 Método SIP ...

jijiji Fhf ,,, =−α

1,,, −= jijiji BFh

jijiji Cgc ,,, =−α

jijijijijijijiji ABCEFgha ,,1,1,,,,, ++=++ −−αα

jijijiji BAhb ,,,, =−α

jijiji ECg ,1,, −=

jijijiji EAge ,,,, =−α

Resolviendo se obtiene que:

Sistema de 7 ecuaciones con 7

incógnitas:

G,C,A,B,F,h,e

Si se introduce hij y gij en el resto, se

reduce a 5 ecuaciones con 5

incógnitas:

G, C, A, B, F

7.2.8 Método SIP ...

1,

,

,1 −+

=ji

ji

jiB

fF

α

Resolviendo se obtiene:

ji

ji

jiE

cC

,1

,

,1 −+

)()( ,1,1,1,1,,,, jijijijijijijiji BECEBFaA −−−− −+−+= αα

ji

jijiji

jiA

BFbB

,

1,,,

,

−−=

α

ji

jijiji

jiA

ECeE

,

,1,,

,

−−=

α

42

Hemos entonces encontrado la manera de calcular los elementos delas matrices L y U en términos de los elementos de la matriz original.

vemos que se escribe como:

)()1( mm RLv =+

7.2.8 Método SIP ...

Regresando entonces a,

)(

,

)1(

,,

)1(

,1,

)1(

1,,

m

ji

m

jiji

m

jiji

m

jiji RvAvCvF =++ ++−

+−

y se resuelve por substitución hacia adelante:

Una vez resuelto , resolvemos mediante substitución hacia atrás las incógnitas de la iteración (m+1)

lo que es igual a:

)1()1( ++ = mm vuUδ

7.2.8 Método SIP ...

)(

,

)1(

1,,

)1(

,1,

)1(

,

m

ji

m

jiji

m

jiji

m

ji vuEuBu =++ ++

++

+ δδδ

Entonces

)1(

,

+m

jiv

)1(

1,,

)1(

,1,

)(

,

)1(

,

++

++

+ −−= m

jiji

m

jiji

m

ji

m

ji uEuBvu δδδ

43

Stone recomienda usar una secuencia de parámetros de iteración, de manera cíclica como en el ADIP. Los parámetros se espacían geométricamente entre 0 y αmax donde,

7.2.8 Método SIP ...

y los parámetros se calculan como:

∆+

∆+

=−

jiy

x

jix

yji

k

k

x

yJ

k

k

y

xI

,

2

2

2

,

2

2

2

,max

12

,

12

min)1(ππ

α

1max )1()1( −−=− M

m

m αα m=0,1,2,..., M-1

M es el No. de parámetros por ciclo: Stone recomienda M = 4 y usar cada parámetro dos veces en cada ciclo

7.3 Solución de Sistemas de Ecuaciones estructurados en Bloques.

Los métodos directos e iterativos descritos previamente se extienden en forma natural a la solución de sistemas estructurados en bloques. La diferencia estriba en que en lugar de operar con escalares, como hasta ahora se ha mostrado, debe hacerse operaciones matriciales.

El orden de las operaciones es entonces importante en este caso.

Se toma como ejemplo la extensión del algoritmo de Thomas a la solución de sistemas tridiagonales en bloques, como los generados en la aplicación del método de Newton a la linealización de las ecuaciones de flujo multifásico en diferencias. Se puede representar el sistema como:

a1u1 + b1u2 = d1

ciui-1 + aiui + biui+1 = di ; i=2,3,...,I-1

cIuI-1 + aIuI = dI (7.25)

44

7.3 Solución de Sistemas de Ecuaciones estructurados en Bloques.

o bien: Au = d …(7.26)

donde,

A =

así como uT = (u1,u2,...,uI) y dT = (d1,d2,...,dI).

Los elementos ai, bi y ci son para el caso de flujo trifásico de fluidos tipo beta, aceite, gas y agua, submatrices de (3x3). Los elementos ui y dison entonces subvectores de orden 3.

II ac

bac

bac

ba

...

...

...

333

222

11

En forma similar con el procedimiento establecido anteriormente, la solución

del sistema tridiagonal en bloque consiste en descomponer la matriz A en el producto WQ. Por lo que se establece el sistema g=Qu, como paso intermedio de la solución. En este caso, las matrices W y Q se definen como sigue:

=

IIwww

www

www

ccc

ccc

ccc

www

www

www

ccc

ccc

ccc

www

www

www

ccc

ccc

ccc

www

www

www

W

987

654

321

987

654

321

3987

654

321

3987

654

321

2987

654

321

2987

654

321

1987

654

321

45

7.3 Solución de Sistemas de Ecuaciones estructurados en Bloques.

y,

Q =

donde I es la matriz identidad de orden (3x3),

Las submatrices wi, qi y el subvector gi se obtienen como:

…(7.27)

I

qI

qI

qI

qI

I 1

3

2

1

..

..

=

100

010

001

I

Iiqcaw

Iibwq

bwq

aw

iiii

iii

,...,3,2;

,....,3,2;

1

1

1

1

11

11

=−=

==

=

=

7.3 Solución de Sistemas de Ecuaciones estructurados en Bloques.

y,

(7.28)

La solución de u se obtiene en un barrido hacia atrás como sigue:

(7.29)

( ) Iigcdwg

dwg

iiiii ,...,3,2;1

1

1

1

11

=−=

=

−−

1....,,2,1;1 −−=−=

=

+ IIiuqgu

gu

iiii

II

46

7.4 Métodos Directos Versus Métodos Iterativos.

En los métodos directos convencionales, eliminación Gaussiana o descomposición LU por ejemplo, el requerimiento de memoria y eltiempo de cómputo aumentan drásticamente en la medida que aumenta el número de ecuaciones.

Por esta razón, los métodos directos son generalmente preferidoscuando el número de ecuaciones no es muy grande. ¿Qué es grande y

qué es pequeño?: es una pregunta difícil de contestar.

Con el desarrollo de las denominadas supercomputadoras el calificativo puede ser demasiado subjetivo. Lo que antes era un sistema grande, puede ahora considerársele un sistema pequeño.

7.4 Métodos Directos Versus Métodos Iterativos.

Es también indudable que con el desarrollo de los métodos de matrices dispersas y de técnicas especiales de ordenamiento, los métodos directos tienen ahora un mayor potencial de aplicación: el tamaño de los sistemas de ecuaciones que puede resolverse eficientemente mediante estos métodos es cada vez mayor, y lo seguirá siendo en la medida en que los sistemas de cómputo sean más poderosos.

Una desventaja de los métodos iterativos es la falta de metodologías para el cálculo de los parámetros de iteración óptimos. Los métodos existentes para el cálculo de estos parámetros han sido desarrollados bajo una serie de simplificaciones. En algunas situaciones los parámetros teóricos no solo no resuelven eficientemente el problema, sino que provocan problemas de convergencia en el método.

47

SOLUCIÓN DE SISTEMAS LINEALES DE ECUACIONES

Básicamente Existen dos métodos de solución1. Métodos Directos: Requieren de un número

fijo de operaciones para resolver un sistema dado

2. Métodos Iterativos: Consiste en aplicar algoritmos cíclicos, en espera de que el paso de las iteraciones se obtenga una mejor aproximación de la solución. El número de operaciones por ciclo es predecible, sin embargo, el número de iteraciones es impredecible.

ORDENAMIENTO D4Price H. S ξ coats k. h “Direct methods on reservoir simulation” trans SPE of AIME, 257, pp 295 - 308

IDEA BÁSICA: ordenar las ecuaciones por líneas/planos diagonales alternados de forma tal que se reduzca el trabajo requerido durante la solución mediante eliminación gaussiana.

20 109 917 85 713 6

10 918 86 714 62 5

19 87 715 63 511 4

8 716 64 512 41 3

2 3 4 5i=1

2

3

4

J=1I = 5

J = 4

K = 1

No. Planos

NP. = (I+J+K) – 2

NP = 8 planos

Suponer que:

I > J > K

48

ORDENAMIENTO D4

• Cada plano se identifica con el número m• Los nodos asociados al plano m son tales que

i + j + k =mY

m = 3, 4, 5, …MDonde

M = I + J + K

• Si M es par el orden de los planos es 3, 5, 7, …, M -1 , 4, 6, 8, … M

• Si M es impar3, 5, 7, …, M , 4, 6, 8, …, M -1

ORDENAMIENTO D4

• Los nodos en el plano deben numerarse en orden decreciente de k y para cada k cte., en orden decreciente de j y creciente de i.

En el ejemplo M =10 (8 planos) el orden de los planos es:

3, 5, 7, 9, 4, 6, 8, 10

49

2014510

191258

181348

171438

161146

151236

141326

131416

121124

111214

101359

91449

81157

71247

61337

51427

41135

31225

21315

11113

kji

# DEL NODO (ORD. 4)INDICES DEL NODOPLANO

ORDENAMIENTO D4

Jk+1

Jk+4

AUL

ALL

AUR

ALR

XU

XL

bU

bL

ELIMINACIÓN DE ALL

AUL

0

AUR

ALR*

XU

XL

bU

bL*

50

ORDENAMIENTO D4

Donde ALR* es una matriz bandada con ancho total de banda

2 jk+1 (i>j>k)

BOAST (DOE Franehi)

Subrutina D4INI calcula índices de ordenamiento y llena la matriz de coef. Y el vector de términos independientes del sistema de ecs. a resolver

Sub. D4 eliminación Gaussiana de ALL

Sub. Band resuelve ALR* XL = bL

*

en D4 se resuelve XU por substitución hacia atrás

5,5

25

4,5

24

3,5

23

2,5

22

1,5

21

5,4

20

4,4

19

3,4

18

2,4

17

1,4

16

5,3

15

4,3

14

3,3

13

2,3

12

1,3

11

5,2

10

4,2

9

3,2

8

2,2

7

1,2

6

5,1

5

4,1

4

3,1

3

2,1

2

1,1

1

2

3

4

5

J = 1

i = 1 2 3 4 5

NX = 5

NY = 5

ORDENAMIENTO NORMAL

4,5

19

3,5

18

2,5

17

5,4

16

4,4

15

3,4

14

2,4

13

5,3

12

4,3

11

2,3

10

1,3

9

5,2

8

4,2

7

3,2

6

2,2

5

1,2

4

4,1

3

3,1

2

2,1

1

2

3

4

5

J = 1

i = 1 2 3 4 5

ORDENAMIENTO NORMAL

Celda activa

Celda inactiva

51

5,5

13

4,5

25

3,5

12

2,5

23

1,5

9

5,4

24

4,4

11

3,4

22

2,4

8

1,4

19

5,3

10

4,3

21

3,3

7

2,3

18

1,3

4

5,2

20

4,2

6

3,2

17

2,2

3

1,2

15

5,1

5

4,1

16

3,1

2

2,1

14

1,1

1

2

3

4

5

J = 1

i = 1 2 3 4 5

ORDENAMIENTO

D4

Esquema de ordenamiento D4 y un algoritmo de Banda.

Este ordenamiento y el algoritmo de banda constituyen un método directo de solución para resolver un sistema de ecuaciones lineales de la forma:

Donde: es la matriz de coeficienteses el vector de incógnitas es el vector de términos conocidos

pp rXP −=δ

P

pXδ

pr

52

De acuerdo con este ordenamiento, este sistema de ecuaciones se puede particionar como:

Donde son submatrices diagonales, yson submatrices bandadas

Aplicando el proceso de eliminación hacia adelante en la mitad inferior de la matriz P, es posible reducir la submatriz P3 a una matriz nula.

−=

2

1

2

1

43

21

p

p

p

p

r

r

X

X

PP

PP

δ

δ

32 PyP →→

41 PyP →→

Esto es:

En el proceso de eliminación, la submatriz diagonal P4 se transforma en una submatriz bandada, P4* y el vector rp2 en rp2*, ahora es posible resolver

El cual se resuelve mediante un algoritmo de banda para obtener el vector y después se calcula el vector mediante una sustitución

regresiva, ya que la submatriz es una submatriz diagonal. Esto último se expresa como:

−=

**

2

1

2

1

4

21

p

p

p

p

r

r

X

X

PO

PP

δ

δ

[ ] **** 21

42224 pppp rPXrXP−

−=⇒−= δδ

12211 ppp rXPXP −=+ δδ

2pXδ 1pXδ

1P

53

Se puede expresar por lo tanto como:

[ ] [ ]2211

11 ppp XPrPX δδ +−=−

NSPIV, ELIMINACIÓN GAUSSIANA DE MATRICES DISPERSAS CON PIVOTEO PARCIAL

Este método permite resolver un sistema lineal de ecuaciones en forma directa, tomando ventaja de la esparcidad de la matriz de coeficientes para eliminar operaciones con elementos iguales a cero.

El procedimiento de solución es el siguiente:

• Considérese el sistema lineal de ecuaciones expresado de la forma:

• La eliminación Gaussiana se efectúa con intercambios de columnas en la matriz para obtener una factorización de la forma:

bxA =

A

ULQA =

54

• Donde: Es una matriz triangular inferiores una matriz triangular superiores una matriz de permutación

Por lo que se puede establecer el siguiente sistema:

Este sistema se puede descomponer en los siguientes subsistemas:

y

L

U

Q

bxQULT

=

byL =

yxQUT

=

Se resuelve primero el subsistema mediante una sustitución hacia delante para obtener el vector y posteriormente se calcula el vector , del subsistema mediante una sustitución hacia atrás.Este método requiere de 3 vectores para almacenar los elementos diferentes de cero de la matriz

byL =y

xyxQU

T=