SlideShare uma empresa Scribd logo
1 de 54
Baixar para ler offline
Simulación Numérica de
     Yacimientos


Dr. Fernando Rodríguez de la Garza


e-mail: frodriguezd@pep.pemex.com
  Tel: 55508712, 5622 3017 al 19




        Capítulo 7.

Solución de Sistemas de
  Ecuaciones Lineales




                                     1
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 Directos
Requieren 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.




                                                              2
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.




                                                             3
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 las
Té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.




                                                            4
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:


                           Au = d
Donde
                 2 1 1                u1          1
            A =  4 1 0
                               ; u = u 2 
                                              ; d = − 2
                                                       
                − 2 2 1
                                     u 3 
                                                    7
                                                       




                                                                       5
7.1.1 Método de Eliminación Gaussiana.

o bien,

                 2        1   1    u1   1 
                 4        1   0   u  =  − 2 
                                   2  
                − 2
                          2   1
                                   u3   7 
                                       


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.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.



           2          1        1       u1   1 
           0       −1         − 2     u  =  − 4 
                                       2        
           0
                      3        2 
                                       u 3   8 
                                                  




                                                                       6
7.1.1 Método de Eliminación Gaussiana.


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




              2       1             1      u1   1 
              0       −1           − 2    u  =  − 4 
                                           2        
              0
                      0            − 4
                                           u 3  − 4 
                                                      




      7.1.1 Método de Eliminación Gaussiana.
  Haciendo:


              2 1 1  u1                        1
         Uu = 0 −1 − 2 u2  ;
                                           c = − 4
                                                    
              0 0 − 4 u3 
                                               − 4
                                                    
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.




                                                                           7
7.1.1 Método de Eliminación Gaussiana.
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.
                    E 21 Au = E 21d
  donde,
                         1 0 0
                  E21 =  − 2 1 0 
                                 
                                                     Matriz
                                                  Elemental 21
                         0 0 1
                                 
  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.




7.1.1 Método de Eliminación Gaussiana.
relación entre A y U...
O sea que,

 1 0 0  2 1 1   u1   2     1 1   u1 
− 2 1 0  4 1 0 u  =  0 − 1 − 2  u 
                   2             2
 0 0 1   − 2 2 1  u3   − 2 2
                             1  u 3 
                                       
Haciendo ahora,
                             E 21 d
                1 0 0          1   1 
               − 2 1 0         − 2  =  − 4 
                                  
                0 0 1
                               7   7 
                                    




                                                                            8
7.1.1 Método de Eliminación Gaussiana.
Similarmente, la operación 2 de eliminación se representa
matricialmente como:

                E 31 (E 21 A )u = E 31 (E 21 d )

                     1 0 0 
               E31 = 0 1 0 
                           
                                                    Matriz
                                                 Elemental 31
                     1 0 1 
                           
 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.




7.1.1 Método de Eliminación Gaussiana.
Esto es:


 1 0 0  2 1 1  u1  1 0 0  1 
 0 1 0  0 − 1 − 2 u  = 0 1 0 − 4
                   2         
 1 0 1 − 2 2 1  u3  1 0 1  7 
                             
 Realizando operaciones:

                2     1    1           u1   1 
                0     − 1 − 2         u  =  − 4 
                                       2  
                0
                       3   2 
                                       u3   8 
                                           




                                                                           9
7.1.1 Método de Eliminación Gaussiana.
 y la operación 3 de eliminación es:

           E 32 (E 31 E 21 A )u = E 32 (E 31 E 21 d )
 donde:
                        1         0      0
               E 32   = 0
                                  1      0
                                           
                                                        Matriz
                                                     Elemental 32
                        0
                                  3      1
                                           
  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.




7.1.1 Método de Eliminación Gaussiana.
La operación 3 de eliminación es entonces,

  1       0   0   2      1       1     u1  1      0     0   1
  0       1   0   0      −1     − 2   u  =  0     1     0   - 4 
                                       2                     
  0
          3   1
                   0
                           3       2 
                                         u 3   0
                                                      3     1
                                                                   8
                                                                     
y realizando operaciones, se tiene que:

                    2     1      1     x1   1 
                    0     −1    − 2    x  = - 4 
                                       2  
                    0
                           0    − 4
                                        x3  - 4 
                                           
    Resumiendo:          Las operaciones de eliminación generaron,


                            Uu = c                U es una matriz
                                                 triangular superior




                                                                             10
7.1.1 Método de Eliminación Gaussiana.

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.

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

                     E32 E31 E21 A = U
Similarmente:


                      E32 E31 E21d = c




7.1.1 Método de Eliminación Gaussiana.

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


                             1 0 0
              E32 E31 E21 = − 2 1 0
                                    
                             − 5 3 1
                                    
                matriz triangular inferior




                                                                           11
7.1.1 Método de Eliminación Gaussiana.
Notar que:
                −                        −
              E 321 E 32 E 31 E 21 A = E 321U
Recordando que:
                          −
                        E 321 E 32 = I
 Donde:


                           1          0       0
                   −
                 E 321   = 0
                                      1       0
                                                
                           0
                                  −3          1
                                                




7.1.1 Método de Eliminación Gaussiana.
o sea:

         1        0     0   1   0       0  1     0   0
         0     1        0   0   1       0  = 0   1   0
                                                      
         0
               −3       1
                             0
                                  3       1  0
                                                    0   1
                                                           

De igual forma:


              (E   −1
                   31         )         −     −
                        E 31 E 21 A = E 311 E 321U
 Finalmente:

                         −     −     −
                   A = E 211 E 311 E 321U



                                                               12
7.1.1 Método de Eliminación Gaussiana.

Pero:
                    −    −    −
                   E211 E311 E321 = L
Es la matriz que convierte U en A:

             1 0 0  1 0 0 1 0 0
         L = 2 1 0  0 1 0 0 1 0
                                   
             0 0 1 − 1 0 1 0 − 3 1 
                                   

                    1    0 0
                    2
                  L=     1 0
                    − 1 − 3 1
                             




7.1.1 Método de Eliminación Gaussiana.
Resumiendo:

                      Au = d
 pero A se puede descomponer en el producto LU:


                       LUu = d
 de manera que por eliminación se transformó en:


                   L−1 (LUu) = L−1d
o sea:

                          Uu = c




                                                   13
7.1.1 Método de Eliminación Gaussiana.

 Entonces:
                       x = U −1c

                     x = L−1U −1d
  ó,

                        x = A−1b

  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)




                                                                      14
7.1.2 Solución de Sistemas Tridiagonales…Thomas.

donde,
              a1    b1                                  
             c      a2    b2                            
              2                                         
                    c3    a3 b3                         
                                                        
           A=              .  .         .               
                                .       .       .       
                                                        
                                        .       .     .
                                                cI   aI 
                                                        

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




 7.1.2 Solución de Sistemas Tridiagonales.. Thomas.


La matriz A se descompone como el siguiente el producto

                     A = WQ                                  …(7.3)

Donde,
               w1                                       
              c      w2                                 
               2                                        
                     c3    w3                           
                                                        
           W =              .       .                   
                                    .       .           
                                                        
                                            .    .      
                                                cI   wI 
                                                        




                                                                      15
7.1.2 Solución de Sistemas Tridiagonales… Thomas.

  y,

                 1 q1                            
                   1       q2                    
                                                 
                           1      q3             
                                                 
               Q=                  .   .         
                                       . .       
                                                 
                                         1 qI −1 
                                            1 
                                                 




 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:
                     w1 = a1
                            b1
                     q1 =
                            w1
                            bi
                    qi =       ;                              …(7.4)
                            wi
                    wi = ai − ci qi −1                        …(7.5)
                                            i = 2,3,...., I




                                                                       16
7.1.2 Solución de Sistemas Tridiagonales…Thomas.

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

                   Au = WQu = Wg                                                                        …(7.6)

 donde
                               g = Qu
 Es decir,
                                                             (ν )            (ν +1)              (ν )
           w1                                                      g1                d1 
          c      w2                                               g                 d 
           2                                                       2                 2
                 c3     w3                                        g3                d 3 
                                                                                     
                         .     .                                  .                = . 
                               .    .                             .                 . 
                                                                                     
                                    .        .                    .                 . 
          
                                            cI     wI 
                                                                   gI 
                                                                                      d I 
                                                                                         




 7.1.2 Solución de Sistemas Tridiagonales…Thomas.

y en un barrido hacia delante se resuelve g:
                         d1
                  g1 =
                         w1
                                                                                                         …(7.7)
                         d i − ci g i −1
                  gi =                   ;                                  i = 2,3,...., I
                              wi
Finalmente se puede resolver Qu=g como sigue:
                                                  (ν )            (ν +1)              (ν )
          1 q1                                          u1               g1 
            1     q2                                   u                g 
                                                        2                2
                  1      q3                            u3                g3 
                                                                         
                          .    .                       .               = . 
                               .   .                   .                . 
                                                                         
                                   1 q I −1            .                . 
          
                                      1               u I 
                                                                          gI 
                                                                             




                                                                                                                  17
7.1.2 Solución de Sistemas Tridiagonales: Algoritmo de
                        Thomas.
y en un barrido hacia atrás se obtiene la solución deseada:
                   uI = gI                             …(7.8)

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


 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 ui
 mediante las Ecs. 7.8.




 7.1.3 Algoritmos de matrices dispersas:
            Descomposición LDU.




                                                                18
7.2 Métodos Iterativos.
Los métodos iterativos adquieren interés en el caso de problemas
multidimensionales, 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.




                                                                          19
7.2 Métodos Iterativos.


Los métodos iterativos están ligados a parámetros de iteración, que
se 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:

   f ij ui , j −1 + cij ui −1, j + aij ui , j + bij ui +1, j + eij ui , j +1 = d ij   …(7.9)
                                 i = 1,2,..., I
                                  j = 1,2,..., J
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.




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


            Jacobi y de Gauss Seidel.




                  7.2.1 Método de Jacobi.
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:
                   1
    ui(,m +1) =
        j
                  ai , j
                         {d i, j − f i, j ui(,mj−)1 − ci, j ui(−m1), j − bi, j ui(+m1), j − ei, j ui(,mj+)1 }

                                                                                                 …(7.10)

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




                                                                                                                21
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:

                 1
  ui(,m +1) =
      j
                ai , j
                       {d i, j − f i, j ui(,mj−+11) − ci, j ui(−m1+, 1j ) − bi, j ui(+m1), j − ei, j ui(,mj+)1 }   (7.11)


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.

 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.




                                                                                                                            22
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 de
Gauss-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:



                            u i(,m +1) = (1 − ω )u i(,m ) + ω u i*(jm +1)
                                 j                    j           ,
                                                                                                          …(7.12)
                                            1≤ ω ≤ 2


 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.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áneamente
las 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:


  ci , j ui*−(1, +1) + ai , j ui*,(jm+1) + bi , j ui*+(1, +1) = d i , j − f i , j ui(,m−1 ) − ei , j ui(,m+1
              m
                 j
                                                       m
                                                          j                           j
                                                                                        +1
                                                                                                          j
                                                                                                            )
                                                                                                                (7.13)


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




                                                                                                                         23
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:


                    ui(,m+1) = (1 − ω )ui(,m ) + ωui*(jm +1)
                        j                  j         ,
                                                               …(7.14)
                               1≤ ω ≤ 2


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.2.4 Método de SOR en Línea o LSOR.
El proceso iterativo LSOR comienza con la siguiente estimación inicial:


                           δ u i(,0j) = δ u in, j                   (7.15)


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

                 δ u i(,mj + 1 ) − δ u i(,mj ) ≤ tolerancia         (7.16)


 Para todo
                              i = 1 , 2 ,..., I
                              j = 1 , 2 ,..., J




                                                                              24
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:

            hi , j ,k ui , j ,k −1 + f i , j ,k ui , j −1,k + ci , j ,k ui −1, j ,k + ai , j ,k ui , j ,k
                                                                                                                                  (7.17)
            + bi , j ,k ui +1, j ,k + ei , j ,k ui , j +1,k + gi , j ,k ui , j ,k +1 = di , j

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

  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.




       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 siguiente
proceso iterativo:


   f i , j ,k ui*,(jm1,1k) + ci , j ,k ui*−(1, +,1k) + ai , j ,k ui*,(jmk+1) + bi , j ,k ui*+1, +,1k) + ei , j ,k ui*,(jm1,1k)
                    −
                     +                      m
                                               j                       ,
                                                                                            (m
                                                                                                j                       +
                                                                                                                         +

                                                                                                                                 (7.18)
  = di , j − hi , j ,k ui(,m,+k1−1 − gi , j ,k ui(,m,)k +1
                           j
                                )
                                                   j


                          Para cada plano, k = 1,2,…,K
            Se resuelven simultáneamente: i = 1,2,...,I ; j = 1,2,...,J




                                                                                                                                           25
7.2.5 Método de SOR en Bloque o BSOR.



El problema bidimensional, Ec. 7.18, genera para un ordenamiento
normal, 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,….,J
correspondientes 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 una
estimación inicial dada por la Ec. 7.15 y termina cuando alcanza la
convergencia estipulada, dada por la Ec. 7.16




                                                                       26
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:
Se parte de considerar que cualquier esquema iterativo para resolver el
sistema de ecuaciones puede expresarse de la siguiente forma:


                    u ( m+1) = A* u ( m ) + d *                   (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:
                                     2
                     ωb =
                               [
                            1 + 1 − ρ A* ( )]
                                           2
                                               1
                                                   2              (7.20)


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




                                                                           27
7.2.6 Algoritmo para el cálculo del parámetro de
                      sobrerelajación.
 El radio espectral de la matriz A*,       ρ (A * )       , está definido como:

                           ρ (A* )=
                                      (θ + ω − 1)
                                                 1                           (7.21)
                                           ωθ        2



 donde θ es el valor promedio del ritmo al cual converge la solución,
 θ (m +1) el cual se calcula con la siguiente expresión:
                                           δ u ( m +1 )
                            θ ( m +1 ) =                                     (7.22)
                                            δu (m )
           ( m +1 )
 donde δ u          es el vector de los cambios iterativos de la solución,
 definido como:
                             δ u ( m +1 ) = u ( m +1 ) − u ( m )      (7.23)

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




      7.2.6 Algoritmo para el cálculo del parámetro de
                      sobrerelajación.
 Los valores de θ (m +1) 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
                                 (m +1 )
 obtener el vector solución δ u          . Por tal motivo, se requiere que este
 proceso iterativo se inicialice con ω = 1 y se cumpla con la siguiente
 condición:

                     θ (m +1) − θ (m ) ≤ tolerancia                     (7.24)

 De tal manera que este proceso iterativo se detiene hasta lograr la
 convergencia estipulada, Ec. 7.24. Cabe mencionar, que este proceso
                                   (m )
 converge solo si el valor de ω         es menor que el nuevo valor de
  ( m +1)
        calculado. De otra forma, los valores deθ ( m ) oscilarán y no se podrá
ω
 obtener una aproximación correcta del radio espectral, ρ ( A ) . En este
 último caso, debe    ω    reducirse hasta que θ ( m ) logre la convergencia.




                                                                                      28
7.2.7 Método ADIP (Procedimiento
          Iterativo de Dirección Alternada).
      Peaceman, D.W. y Rachford, H.H.:” The Numerical Solution of Parabolic and
      Elliptic Differential Equations,” SIAM J. Numerical Analysis (1955) 3, 28-41

  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:

           f ij ui , j −1 + cij ui −1, j + (a x ,ij + a y ,ij + aac ,ij )ui , j
          + bij ui +1, j + eij ui , j +1 = d ij
                                           i = 1,2,..., I
                                           j = 1,2,..., J

    Matricialmente, podemos escribir este sistema de ecuaciones
    como sigue:




                           7.2.7 Método ADIP ...

                                 ( H + V + S )u = d
       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

   ax b                           
   c a b                                ay       e                                aac                                          
       x                                   ay       e                              a                                           
      c ax b                                                                          ac                                       
                                              ay       e                                 aac                                   
         c ax b                                                                                                                
                                           f       ay       e                                  aac                               
           c ax b                 
                                            f       ay       e                                   aac                           
              c ax b                                                                                                           
H =                                            f       ay       e                                    aac                       
                 c ax b                V =                                       S =                                             
                                                   f       ay       e                                       aac
                   c ax b                                                                                                      
                                                     f       ay       e                                      aac               
   
                      c ax b
                                                         f       ay       e                                                     
                                                                                                                    aac
                        c ax b                                                                                                   
                                                           f       ay                                                aac       
                          c ax b                                                                                               
                                                                f       ay                                                 aac 
   
                             c ax 
                                                                  f       ay       
                                                                                                                                   
                                                                                                                                 aac
                                                                              




                                                                                                                                        29
7.2.7 Método ADIP ...
 El sistema matricial ------ puede rearreglarse como:

                              S S
                 (H + V +      + )u = d
                              2 2
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):

                          S S
            (H + V +       + + rI − rI )u = d
                          2 2
El algoritmo iterativo del ADIP consiste de resolver las incógnitas de
la iteración m+1 en dos barridos. En el primer barrido, en x, se obtiene
una solución intermedia, u* , rearreglando ---- como sigue:
          S                                      S
   (V +     + r ( m +1) I )u *( m +1) = d − ( H − + r ( m+1) I )u ( m )
          2                                      2




                7.2.7 Método ADIP ...
En el segundo barrido, en y, se obtiene la solución de la iteración m+1 :

          S                                  S
   (H +     + r ( m+1) I )u ( m+1) = d − (V − + r ( m +1) I )u *( m )
          2                                  2
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:

                       uijm +1) − uijm ) ≤ ε
                        (          (




Nótese que la ecuación matricial ---- que representa el primer
barrido se puede escribir equivalentemente como:




                                                                            30
7.2.7 Método ADIP ...
                              1
  c ij u i*, (1mj+1) + ( a x ,ij +
           − ,                     a ac ,ij + r ( m +1) )u i*, (j m +1) + bij u i*, (1mj+1)
                                                             ,                    + ,
                              2                                                                i = 1,2,..., I
                                          1                                                    j = 1,2,..., J
  = d ij − f ij u i(,m−1 − ( a y ,ij + a ac ,ij − r ( m +1) )u ijm ) − eij u i(,m+1
                     j
                       )                                                (
                                                                                         j
                                                                                           )

                                          2
  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:
                                                                                               i = 1,2,..., I
             cij ui*,(1mj+1) + a (Xm,ij 1)ui*,(j m +1) + bij ui*,(1mj+1) = d ij ( m )
                    − ,
                                     +
                                             ,                  + ,
                                                                             *,

                                                                                               j dada
                             1=1 2                               I
                 j=1
                   2                                                            Primer Barrido:
                                                                                    Solución
                                                                                Intermedia u*i,j
                     J




                           7.2.7 Método ADIP ...
Similarmente, la ecuación ---- del segundo                     barrido se escribe como:
                              1
   f ij ui(,m−1 ) + (a y ,ij + aac ,ij + r ( m +1) )ui(,m +1) + eij ui(,m+1 )
            j
              +1
                                                         j               j
                                                                           +1

                              2                                                        i = 1,2,..., I
                                      1                                                 j = 1,2,..., J
  = d ij − cij ui*,(1mj) − (a y ,ij + aac ,ij − r ( m +1) )uij ( m ) − bij ui(+1), j
                     − ,
                                                                *,              m

                                      2
 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
                                       f ij ui(,m−1 ) + aYmij+1)ui(,m +1) + eij ui(,m+1 ) = d ij ( m )
                                                j
                                                  +1       (
                                                             ,      j               j
                                                                                      +1        **,

      i=12                             I
                                                                             j = 1,2,..., J
j=1                                                                         i dada
  2
                                                                  Segundo Barrido:
                                                                  Solución ui,j(m+1)
  J




                                                                                                                31
7.2.7 Método ADIP ...
 Los parámetros de iteración se calculan mediante una progresión
 geométrica:
                           r ( m +1) = ω r ( m )             m=1,2,...,M-1
                                                1
                              r              M −1
                          ω =  max
                              r             
                                             
                               min          
 Bjordammen y Coats, (1969) sugieren calcular rmax y rmin como:
                                     rmax = 1
                                                                                     
                                                                                     
                                π   2
                                                                   π   2              
    rmin   = min                                   ,                                 
                    2          ∆x  k y                                 
                                         2                               2
              i, j
                                                            1 +  ∆ y  k x         
                    2 I 1 +                          2
                                
                                 ∆y  k 
                                                 2J
                                                                                   
                   
                         
                                      x                      ∆ x  k y  i, j
                                                                                     
                                            i, j                                     




                   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




                                                                                          32
7.2.8 Método SIP (Procedimiento
         Fuertemente Implícito)
  Stone, H.L.:”Iterative Solution of Implicit Approximations of Multidimensional
  Partial Differential Equations,” SIAM J. Numerical Analysis (1968) 5, 530-58.

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:


                           Au = d
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:

                  Au = A*u − A*u + d
 y se rearregla iterativamente como:

             A*u ( m+1) − A*u ( m) = Au(m) − d
 o bien,

                           A*δu ( m+1) = R( m)




                                                                                   33
7.2.8 Método SIP ...
donde:

              δu (m+1) = u ( m+1) − u ( m)
 y,
                R( m) = Au( m) − d
pero,

                     A* = LU
entonces,


                  LUδu ( m+1) = R( m)




               7.2.8 Método SIP ...
Si hacemos:

                    Uδu ( m+1) = v( m+1)
tenemos que podemos resolver el vector v(m+1) hacia adelante,

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

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

                      uijm +1) − uijm ) ≤ ε
                       (          (




                                                                        34
7.2.8 Método SIP ...
Se derivará el algoritmo del SIP mediante un problema bidimensional.

Considérese nuevamente el sistema problema:
               f ij ui , j −1 + cij ui −1, j + aij ui , j                     i = 1,2,..., I
              + bij ui +1, j + eij ui , j +1 = d ij                            j = 1,2,..., J


                       i=1                   2        3      4
               j=1                1          2        3      4

                     2            5          6        7      8

                     3            9          10      11     12




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

    a1,1    b,1
              1      0      0         e1,1    0      0      0 0 0 0     0  u1,1  d1,1 
    c       a2,1   b2,1    0          0     e2,1    0      0 0 0 0     0  u2,1 d2,1
     2,1                                                                      
    0       c3,1   a3,1   b3,1        0      0     e3,1    0 0 0 0     0  u3,1 d3,1
                                                                              
    0        0     c4,1   a4,1        0      0      0     e4,1 0 0 0   0  u4,1 d4,1
     f1,2    0      0      0         a1,2   b,2
                                              1      0      0 e1,2 0 0  0  u1,2  d1,2 
                                                                              
    0       f2,2    0      0         c2,2   a2,2   b2,2    0 0 e2,2 0  0  u2,2 d2,2
    0                                                                              =
              0     f3,2    0          0     c3,2   a3,2   b3,2 0 0 e3,20  u3,2 d3,2
                                                                              
    0        0      0 f4,2            0 0          c4,2 a4,2 0 0 0 e4,2  u4,2 d4,2
    0        0      0 0              f1,3 0         0 0 a1,3 b,3 0 0  u1,3  d1,3 
                                                               1              
    0        0      0 0               0 f2,3        0 0 c2,3 a2,3 b2,3 0  u2,3 d2,3
                                                                              
    0        0      0 0               0 0          f3,3 0 0 c3,3 a3,3 b3,3  u3,3 d3,3
    0
             0      0 0               0 0           0 f4,3 0 0 c4,3 a4,3 u4,3 d4,3
                                                                               




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

          A,1 0 0 0 0 0 0 0 0 0 0 0 
            1
         C A 0 0 0 0 0 0 0 0 0 0 
          2,1 2,1                          
          0 C,1 A,1 0 0 0 0 0 0 0 0 0 
               3   3
                                           
          0 0 C4,1 A,1 0 0 0 0 0 0 0 0 
                     4
         F,2 0 0 0 A,2 0 0 0 0 0 0 0 
            1           1
                                           
          0 F,2 0 0 C2,2 A,2 0 0 0 0 0 0 
               2            2
      L= 
           0 0 F,2 0 0 C,2 A,2 0 0 0 0 0 
                  3        3 3
                                            
          0 0 0 F,2 0 0 C4,2 A,2 0 0 0 0 
                     4          4
         0 0 0 0 F 0 0 0 A 0 0 0
                       1,3       1,3       
          0 0 0 0 0 F,3 0 0 C2,3 A,3 0 0 
                            2         2
                                           
          0 0 0 0 0 0 F,3 0 0 C,3 A,3 0 
                              3       3 3
          0 0 0 0 0 0 0 F,3 0 0 C4,3 A,3
                               4         4 




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

        |1 B,1 0 0 E,1 0 0 0 0 0 0 0 
             1        1
       0 1 B 0 0 E 0 0 0 0 0 0
               2,1     2,1            
        0 0 1 B,1 0 0 E3,1 0 0 0 0 0 
                    3
                                      
        0 0 0 1 0 0 0 E4,1 0 0 0 0 
        0 0 0 0 1 B,2 0 0 E,2 0 0 0 
                        1     1
                                      
        0 0 0 0 0 1 B2,2 0 0 E2,2 0 0 
     U=
         0 0 0 0 0 0 1 B,2 0 0 E3,2 0 
                           3
                                       
        0 0 0 0 0 0 0 1 0 0 0 E4,2
       0 0 0 0 0 0 0 0 1 B 0 0
                               1,3    
        0 0 0 0 0 0 0 0 0 1 B2,3 0 
                                      
        0 0 0 0 0 0 0 0 0 0 1 B,3  3
       0 0 0 0 0 0 0 0 0 0 0 1
                                      




                                                36
7.2.8 Método SIP ...
Entonces tenemos:

             a1,1
                *
                            b*,1 0 0 e1,1 0 0 0 0
                             1
                                           *
                                                                               0    0    0
             *              *    *        *  *                                              
             c2,1          a2,1 b2,1 0 g2,1 e2,1 0 0 0                        0    0    0
             0              *    *    *      *    *
                            c3,1 a3,1 b3,1 0 g3,1 e3,1 0 0                     0    0    0
                                 *    *           *   *                                     
             0              0 c4,1 a4,1 0 0 g4,1 e4,1 0                       0    0    0
             f*            h*,2 0 0 a1,2 b*,2 0 0 e1,2
                                           *             *
                                                                               0    0    0
              1,2           1                1
                                                                                             
             0                f2*2 h2,2 0 c2,2
                                 ,
                                     *      *         *
                                                     a2,2     *
                                                             b2,2        *
                                                                     0 g2,2    *
                                                                              e2,2 0 0 
   A* = LU = 
               0                0 f3*2 h3,2 0
                                         *            *
                                                     c3,2     *
                                                             a3,2    *
                                                                    b3,2 0    g3,2 e3,2 0 
                                                                               *    *
                                     ,                                                      
             0                 0 0 f4*,2 0           0       *
                                                             c4,2    *
                                                                    a4,2 0     0 g4,2 e4,2 
                                                                                    *    *

                                                                                            
             0                 0 0 0 f1*3   ,       h*,3
                                                      1       0          *
                                                                     0 a1,3   b*,3 0
                                                                               1             
             0                 0 0 0 0              f2*,3    *
                                                             h2,3        *
                                                                     0 c2,3   a2,3 b2,3 0 
                                                                               *    *

                                                                                        * 
             0                 0 0 0 0               0      f3*3
                                                               ,
                                                                     *
                                                                    h3,3 0     *    *
                                                                              c3,3 a3,3 b3,3 
             0                 0 0 0 0               0       0     f4*3 0     0 c4,3 a4,3 
                                                                                    *    *
                                                                     ,                      




                     7.2.8 Método SIP ...
donde:

   f i *j = Fi , j
       ,


   hi*, j = Fi , j Bi , j −1

   ci*, j = Ci , j

   ai*, j = Fi , j Ei , j −1 + Ci , j Bi −1, j + Ai , j

   bi*, j = Ai , j Bi , j

    g i*, j = Ci , j Ei −1, j

   ei*, j = Ai , j Ei , j




                                                                                                 37
7.2.8 Método SIP ...
      Vemos entonces que se tiene ahora lo siguiente:

            f i *j ui , j −1 + hi*, j ui +1, j −1 + ci*, j ui −1, j + ai*, j ui , j
                ,                                                                     i = 1,2,..., I
                                                                                       j = 1,2,..., J
           + bi*, j ui +1, j + g i*, j ui −1, j +1 + ei*, j ui , j +1 = d ij
         Donde aparecen dos incógnitas adicionales en los nodos i-1.j-1
         e i+1,j+1:

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

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


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




                            7.2.8 Método SIP ...
      Ahora bien, si modificamos ligeramente el sistema original de
      ecuaciones como sigue:

f i , j ui , j −1 + hi , j [ui +1, j −1 − α (ui +1, j + ui , j −1 − ui , j )] + ci , j ui −1, j + ai , j ui , j
+ bi , j ui +1, j + g i , j [ui −1, j +1 − α (ui , j +1 + ui −1, j − ui , j )] + ei , j ui , j +1 = d ij

    Nótese que
                             ui +1, j −1 ≈ ui +1, j + ui , j −1 − ui , j
     y

                              ui −1, j +1 ≈ ui , j +1 + ui −1, j − ui , j
     Aproximaciones que se obtienen como sigue:




                                                                                                                  38
7.2.8 Método SIP ...
                                ∂u
ui −1, j +1 = ui , j +1 − ∆xi               + O(∆x 2 )          restando, y considerando
                                ∂x i , j +1                      que ∆xi
                                                                           ∂u
                                                                                       = ∆xi
                                                                                             ∂u
                                                                           ∂x i , j +1       ∂x i −1, j
                            ∂u                                  se obtiene la aproximación
ui , j = ui −1, j + ∆xi                + O(∆x 2 )               para ui-1,j+1
                            ∂x i −1, j
                                ∂u
ui +1, j −1 = ui +1, j − ∆y j              + O(∆y 2 )           restando, y considerando
                                ∂y i +1, j                                 ∂u                ∂u
                                                                 que ∆y j             = ∆y j
                                                                           ∂y i +1, j        ∂y i , j −1
                            ∂u                                  se obtiene la aproximación
ui , j = ui , j −1 + ∆y j               + O(∆y 2 )              para ui+1,j-1
                            ∂y i , j −1




                    7.2.8 Método SIP ...
La ecuación modificada se escribe entonces como:


           ( f i, j − αhi , j )ui, j −1 + hi , j ui +1, j −1 + (ci , j − αgi , j )ui −1, j
           + (ai , j + αhi, j + αgi , j )ui , j + (bi , j − αhi , j )ui +1, j
           + gi, j ui −1, j +1 + (ei , j − αgi , j )ui, j +1 = dij

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




                                                                                                           39
7.2.8 Método SIP ...

     f i *j = f i , j − αhi , j
         ,


    hi*, j = hi , j

    ci*, j = ci , j − αg i , j

    ai*, j = ai , j + αhi , j + αg i , j

    bi*, j = bi , j − αhi , j

    g i*, j = g i , j

    ei*, j = ei , j − αg i , j




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

  f i , j − αhi , j = Fi , j

   hi , j = Fi , j Bi , j −1                                                  Sistema de 7
  ci , j − αg i , j = Ci , j                                                   ecuaciones
                                                                                  con 7
  ai , j + αhi , j + αg i , j = Fi , j Ei , j −1 + Ci , j Bi −1, j + Ai , j    incógnitas:

  bi , j − αhi , j = Ai , j Bi , j                                            G,C,A,B,F,h,e
   g i , j = Ci , j Ei −1, j

   ei , j − αg i , j = Ai , j Ei , j




                                                                                              40
7.2.8 Método SIP ...
 Resolviendo se obtiene que:
                                                                               Sistema de 7
f i , j − αhi , j = Fi , j                                                   ecuaciones con 7
                                                                                incógnitas:
 hi , j = Fi , j Bi , j −1
                                                                              G,C,A,B,F,h,e
ci , j − αg i , j = Ci , j
                                                                            Si se introduce hij y
ai , j + αhi , j + αg i , j = Fi , j Ei , j −1 + Ci , j Bi −1, j + Ai , j
                                                                             gij en el resto, se
bi , j − αhi , j = Ai , j Bi , j                                                 reduce a 5
                                                                             ecuaciones con 5
 g i , j = Ci , j Ei −1, j                                                       incógnitas:

 ei , j − αg i , j = Ai , j Ei , j                                             G, C, A, B, F




                              7.2.8 Método SIP ...
Resolviendo se obtiene:
                     fi, j
   Fi , j =
              1 + αBi , j −1
                    ci , j
   Ci , j =
              1 + αEi −1, j
   Ai , j = ai , j + Fi , j (αBi , j −1 − Ei , j −1 ) + Ci , j (αEi −1, j − Bi −1, j )

              bi , j − αFi , j Bi , j −1
   Bi , j =
                             Ai , j

              ei , j − αCi , j Ei −1, j
   Ei , j =
                             Ai , j




                                                                                                    41
7.2.8 Método SIP ...
Hemos entonces encontrado la manera de calcular los elementos de
las matrices L y U en términos de los elementos de la matriz original.

Regresando entonces a,

                          Lv( m+1) = R( m)
vemos que se escribe como:



      Fi, j vi(,m−1 ) + Ci , j vi(−1+j1) + Ai, j vi(,m+1) = Ri(,m)
                j
                  +1              m
                                    ,                j          j


y se resuelve por substitución hacia adelante:




                7.2.8 Método SIP ...
                      ( m+1)
Una vez resuelto vi , j   , resolvemos mediante substitución hacia
atrás las incógnitas de la iteración (m+1)

                      Uδu ( m+1) = v( m+1)
 lo que es igual a:


      δui(,m+1) + Bi , jδui(+1+j1) + Ei , jδui(,m+1) = vi(,m)
           j
                            m
                              ,                 j
                                                  +1
                                                           j

Entonces

       δui(,m+1) = vi(,m) − Bi , jδui(+1+j1) − Ei , jδui(,m+1)
            j          j
                                      m
                                        ,                 j
                                                            +1




                                                                         42
7.2.8 Método SIP ...
 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,
                                                                                 
                                                                                 
                                      π 2
                                                                    π 2           
     (1 − α max ) = min                             ,                            
                           2   ∆x  k y                    ∆y  2 k x  
                     i, j                    2

                           2 I 1 +      
                                  ∆y  k x 
                                                      2 J 2 1 +          
                                                               ∆x  k y  
                                           i, j                      i, j 
                                                                                 

     y los parámetros se calculan como:
                                               m
                  (1 − α m ) = (1 − α max )   M −1
                                                              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)




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

o bien:                                      Au = d                               …(7.26)
donde,
                                       a1   b1                           
                                      c     a2   b2                      
                                       2                                 
                                            c3   a3 b3                   
                          A=                                             
                                                  .  .       .           
                                                      .      .    .      
                                                                         
                                                             .    .    .
                                                                 cI   aI 
                                                                         
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 di
son entonces subvectores de orden 3.




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:

      w1    w2 w3                                                                                       
                                                                                                         
     w4     w5 w6                                                                                       
                     
     w7
             w8 w9 1
                                                                                                          
                                                                                                          
       c1   c2 c3       w1   w2 w3                                                                    
      c4    c5 c6      w     w5 w6                                                                    
                        4                                                                             
      c7
             c8 c9  2
                         w7
                                w8 w9  2
                                                                                                          
                          c1   c2 c3        w1 w2 w3                                                  
                          c                                                                              
                                c5 c6       w w w 
                                                                                                           
                            4                4   5  6
                          c7
                                c8 c9 3
                                             w7 w8 w9  3
                                                                                                         
  W =                                                                                                     
                                                                                                          
                                                                                                          
                                                                                                          
                                                                                                          
                                                                                                          
                                                                                                          
                                                                                                          
                                                                                                          
                                                                                                          
                                                                         c1 c2 c3       w1 w2   w3  
                                                                         c c c         w w             
                                                                                                   w6  
                                                                           4 5 6         4   5      
                                                                         c7 c8 c9  I   w7 w8    w9  I 
                                                                                                    




                                                                                                               44
7.3 Solución de Sistemas de Ecuaciones
            estructurados en Bloques.
                         I   q1                              
y,                                                           
                              I    q2
                                                             
                                  I    q3                    
                  Q=                                         
                                       .    .                
                                            .     .          
                                                             
                                                  I   q I −1 
                                                        I 
                                                                       1 0 0
                                                             
                                                                   I =  0 1 0
donde I es la matriz identidad de orden (3x3),                               
                                                                       0 0 1 
                                                                             

Las submatrices wi, qi y el subvector gi se obtienen como:
                       w1 = a1
                       q1 = w1−1b1
                       qi = wi−1bi ;             i = 2,3,...., I
                    wi = ai − ci qi −1 ;         i = 2,3,..., I                   …(7.27)




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

       g1 = w1−1d 1
       g i = wi−1 (d i − ci g i −1 );                  i = 2,3,..., I              (7.28)


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

       uI = g I
       u i = g i − q i u i +1 ;          i = I − 1, I − 2 , ...., 1
                                                                                   (7.29)




                                                                                            45
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 el
tiempo 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 preferidos
cuando 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.




                                                                        46
SOLUCIÓN DE SISTEMAS LINEALES
        DE ECUACIONES
 Básicamente Existen dos métodos de solución
 1. 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 D4
 Price 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.

                            i=1             2           3       4     5
                                                                                 No. Planos
    I=5                        1   3   12 4         4   5   16 6    8     7
                   J=1                                                           NP. = (I+J+K) – 2
    J=4
                               11 4     3       5   15 6    7   7   19 8         NP = 8 planos
    K=1                 2

                        3      2   5   14 6         6   7   18 8    10 9
                                                                                 Suponer que:
                        4      13 6     5       7   17 8    99      20 10
                                                                                     I>J>K




                                                                                                         47
ORDENAMIENTO D4
•   Cada plano se identifica con el número m
•   Los nodos asociados al plano m son tales que
                         i + j + k =m
Y
                         m = 3, 4, 5, …M
Donde
                         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 impar
                3, 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




                                                            48
PLANO                          INDICES DEL NODO               # DEL NODO (ORD. 4)

                    i                 j           k
  3                 1                 1           1                            1
  5                 1                 3           1                            2
  5                 2                 2           1                            3
  5                 3                 1           1                            4
  7                 2                 4           1                            5
  7                 3                 3           1                            6
  7                 4                 2           1                            7
  7                 5                 1           1                            8
  9                 4                 4           1                            9
  9                 5                 3           1                          10
  4                 1                 2           1                          11
  4                 2                 1           1                          12
  6                 1                 4           1                          13
  6                 2                 3           1                          14
  6                 3                 2           1                          15
  6                 4                 1           1                          16
  8                 3                 4           1                          17
  8                 4                 3           1                          18
  8                 5                 2           1                          19
 10                 5                 4           1                          20




              ORDENAMIENTO D4

                        Jk+4




Jk+1                                                      ELIMINACIÓN DE ALL


        AUL   AUR         XU         bU               AUL    AUR          XU        bU

        ALL   ALR         XL         bL               0      ALR*         XL        b L*




                                                                                           49
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




       i=          1                2                 3                 4               5
                 1,1          2,1             3,1               4,1               5,1
      J=1                                                                                               NX = 5
                        1               2             3                     4               5

        2
                 1,2          2,2             3,2               4,2               5,2                   NY = 5
                        6               7                 8                 9           10
                 1,3          2,3             3,3               4,3               5,3                  ORDENAMIENTO
        3
                       11           12                13                14              15             NORMAL
                 1,4          2,4             3,4               4,4               5,4
        4
                       16           17                18                19              20
                 1,5          2,5             3,5               4,5               5,5
        5
                       21           22                23                24              25



            i=              1                 2                 3               4               5
                                        2,1               3,1               4,1
        J=1                                                                                              ORDENAMIENTO
                        1,2             2,2
                                                  1
                                                          3,2
                                                                2
                                                                            4,2
                                                                                    3
                                                                                            5,2
                                                                                                         NORMAL
            2
                              4                   5                 6               7              8
                        1,3             2,3                                 4,3             5,3
            3                                                                                                    Celda activa
                              9               10                                  11              12
                                        2,4               3,4               4,4             5,4
            4                                                                                                    Celda inactiva
                                              13                14                15              16
                                        2,5               3,5               4,5
            5
                                              17                18                19




                                                                                                                                  50
i=         1             2             3      4          5
               1,1           2,1           3,1        4,1        5,1
         J=1
                         1         14            2          16          5   ORDENAMIENTO
               1,2           2,2           3,2        4,2        5,2
          2
                     15                3         17          6         20
                                                                                 D4
               1,3           2,3           3,3        4,3        5,3
          3
                     4             18            7          21         10
               1,4           2,4           3,4        4,4        5,4
          4
                     19                8         22         11         24
               1,5           2,5           3,5        4,5        5,5
          5
                     9             23            12         25         13




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:

                                           Pδ X p = − rp

Donde:     P es la matriz de coeficientes
          δXp es el vector de incógnitas
          rp   es el vector de términos conocidos




                                                                                           51
De acuerdo con este ordenamiento, este sistema de
    ecuaciones se puede particionar como:
                        P1    P 2   δ X p1      r p1 
                                            = − 
                       P3     P 4  δ Xp 2       rp 2 

 Donde P1 → y → P 4 son submatrices diagonales, y
        P 2 → y → P3 son 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.




   Esto es:          P1 P 2   δXp1      rp1 
                                    = − * 
                     O P 4  δXp 2       rp 2 
                            *



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


                                                      [ ]
              P4 * δ X p 2 = − r p 2* ⇒ δ X p 2 = − P4 *
                                                              −1
                                                                   rp 2 *
El cual se resuelve mediante un algoritmo de banda para obtener el vector
δXp 2 y después se calcula el vector δXp1 mediante una sustitución
regresiva, ya que la submatriz P es una submatriz diagonal. Esto último
                                 1
se expresa como:
                       P1 δ X p1 + P2 δ X p 2 = − r p1




                                                                                52
Se puede expresar por lo tanto como:


                δXp1 = −[P1 ] [rp1 + P2 δXp 2 ]
                                −1




     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:

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

                                AQ = LU




                                                                           53
• Donde:         L Es una matriz triangular inferior
               U   es una matriz triangular superior
               Q   es una matriz de permutación
Por lo que se puede establecer el siguiente sistema:
                            T
                     LU Q x = b

Este sistema se puede descomponer en los siguientes
  subsistemas:
                      Ly = b
             y
                        T
                     UQ x = y




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




                                                           54

Mais conteúdo relacionado

Mais procurados

Solucionario ecuaciones2
Solucionario ecuaciones2Solucionario ecuaciones2
Solucionario ecuaciones2ERICK CONDE
 
Ecuaciones metodo branislapmatie
Ecuaciones metodo  branislapmatieEcuaciones metodo  branislapmatie
Ecuaciones metodo branislapmatiechestermatie
 
Ecuaciones de 1er orden
Ecuaciones de 1er ordenEcuaciones de 1er orden
Ecuaciones de 1er ordenVelmuz Buzz
 
Computacion, uls, computacion aplicada
Computacion, uls, computacion aplicadaComputacion, uls, computacion aplicada
Computacion, uls, computacion aplicadaRobert_Hooke
 
Ecuaciones lineales y reducibles a estas ejercicios
Ecuaciones lineales y reducibles a estas ejerciciosEcuaciones lineales y reducibles a estas ejercicios
Ecuaciones lineales y reducibles a estas ejerciciosDERORI
 
Solucionario ecuaciones1
Solucionario ecuaciones1Solucionario ecuaciones1
Solucionario ecuaciones1ERICK CONDE
 
Texto de ecuaciones_diferenciales (1)
Texto de ecuaciones_diferenciales (1)Texto de ecuaciones_diferenciales (1)
Texto de ecuaciones_diferenciales (1)salvatore78
 
Clase 07 ecuaciones diferenciales de segundo orden
Clase 07   ecuaciones diferenciales de segundo ordenClase 07   ecuaciones diferenciales de segundo orden
Clase 07 ecuaciones diferenciales de segundo ordenJimena Rodriguez
 
Ecuaciones (conceptos)
Ecuaciones (conceptos)Ecuaciones (conceptos)
Ecuaciones (conceptos)ERICK CONDE
 
Sistemas de ecuauciones dif.
Sistemas de ecuauciones dif.Sistemas de ecuauciones dif.
Sistemas de ecuauciones dif.verdonica
 

Mais procurados (16)

Solucionario ecuaciones2
Solucionario ecuaciones2Solucionario ecuaciones2
Solucionario ecuaciones2
 
Ecuaciones metodo branislapmatie
Ecuaciones metodo  branislapmatieEcuaciones metodo  branislapmatie
Ecuaciones metodo branislapmatie
 
Ecuaciones de 1er orden
Ecuaciones de 1er ordenEcuaciones de 1er orden
Ecuaciones de 1er orden
 
Cap1
Cap1Cap1
Cap1
 
Computacion, uls, computacion aplicada
Computacion, uls, computacion aplicadaComputacion, uls, computacion aplicada
Computacion, uls, computacion aplicada
 
Ecuaciones lineales y reducibles a estas ejercicios
Ecuaciones lineales y reducibles a estas ejerciciosEcuaciones lineales y reducibles a estas ejercicios
Ecuaciones lineales y reducibles a estas ejercicios
 
Cap 7 desigualdades
Cap 7 desigualdadesCap 7 desigualdades
Cap 7 desigualdades
 
Solucionario ecuaciones1
Solucionario ecuaciones1Solucionario ecuaciones1
Solucionario ecuaciones1
 
Tarea remedial-andrés-pastuña
Tarea remedial-andrés-pastuñaTarea remedial-andrés-pastuña
Tarea remedial-andrés-pastuña
 
Texto de ecuaciones_diferenciales (1)
Texto de ecuaciones_diferenciales (1)Texto de ecuaciones_diferenciales (1)
Texto de ecuaciones_diferenciales (1)
 
Ecuaciones diferenciales ordinarias
Ecuaciones diferenciales ordinariasEcuaciones diferenciales ordinarias
Ecuaciones diferenciales ordinarias
 
Mate4 guia3
Mate4 guia3Mate4 guia3
Mate4 guia3
 
Clase 07 ecuaciones diferenciales de segundo orden
Clase 07   ecuaciones diferenciales de segundo ordenClase 07   ecuaciones diferenciales de segundo orden
Clase 07 ecuaciones diferenciales de segundo orden
 
Ecuaciones (conceptos)
Ecuaciones (conceptos)Ecuaciones (conceptos)
Ecuaciones (conceptos)
 
Sistemas de ecuauciones dif.
Sistemas de ecuauciones dif.Sistemas de ecuauciones dif.
Sistemas de ecuauciones dif.
 
Cap 6 ecuaciones
Cap 6 ecuacionesCap 6 ecuaciones
Cap 6 ecuaciones
 

Destaque

Software Malicios
Software MaliciosSoftware Malicios
Software MaliciosDavid_bcn
 
Com Es Fa La Truita De Patates
Com Es Fa La Truita De PatatesCom Es Fa La Truita De Patates
Com Es Fa La Truita De Patatesangelarm
 
Factura
FacturaFactura
Facturamfmr
 
Karjäärivalikud
KarjäärivalikudKarjäärivalikud
Karjäärivalikudguestac0ace
 
מצגת אם המושבות
מצגת אם המושבותמצגת אם המושבות
מצגת אם המושבותguesteb74b67
 
Cartagena
CartagenaCartagena
Cartagenaieplab
 
Rimando y reciclando
Rimando y reciclandoRimando y reciclando
Rimando y reciclandojjjjjjjj
 
Rola Chronometrażysty
Rola ChronometrażystyRola Chronometrażysty
Rola ChronometrażystyAdam
 
Jedna priča udruge mladih
Jedna priča udruge mladihJedna priča udruge mladih
Jedna priča udruge mladihalen
 
狂禅教主——李贽
狂禅教主——李贽狂禅教主——李贽
狂禅教主——李贽Xu jiakon
 
Кафедра документознавства та інформаційної діяльності ІФНТУНГ
Кафедра документознавства та інформаційної діяльності ІФНТУНГКафедра документознавства та інформаційної діяльності ІФНТУНГ
Кафедра документознавства та інформаційної діяльності ІФНТУНГHeavyoksy
 

Destaque (20)

Software Malicios
Software MaliciosSoftware Malicios
Software Malicios
 
Guernika
GuernikaGuernika
Guernika
 
Com Es Fa La Truita De Patates
Com Es Fa La Truita De PatatesCom Es Fa La Truita De Patates
Com Es Fa La Truita De Patates
 
Factura
FacturaFactura
Factura
 
Karjäärivalikud
KarjäärivalikudKarjäärivalikud
Karjäärivalikud
 
מצגת אם המושבות
מצגת אם המושבותמצגת אם המושבות
מצגת אם המושבות
 
Cartagena
CartagenaCartagena
Cartagena
 
Rimando y reciclando
Rimando y reciclandoRimando y reciclando
Rimando y reciclando
 
Repertoire Revisited
Repertoire RevisitedRepertoire Revisited
Repertoire Revisited
 
Uprazhnenije
UprazhnenijeUprazhnenije
Uprazhnenije
 
Mayda Seis
Mayda SeisMayda Seis
Mayda Seis
 
Blogging
BloggingBlogging
Blogging
 
Rola Chronometrażysty
Rola ChronometrażystyRola Chronometrażysty
Rola Chronometrażysty
 
Cuatro
CuatroCuatro
Cuatro
 
Jedna priča udruge mladih
Jedna priča udruge mladihJedna priča udruge mladih
Jedna priča udruge mladih
 
狂禅教主——李贽
狂禅教主——李贽狂禅教主——李贽
狂禅教主——李贽
 
cuaresma
cuaresmacuaresma
cuaresma
 
Animales
AnimalesAnimales
Animales
 
Кафедра документознавства та інформаційної діяльності ІФНТУНГ
Кафедра документознавства та інформаційної діяльності ІФНТУНГКафедра документознавства та інформаційної діяльності ІФНТУНГ
Кафедра документознавства та інформаційної діяльності ІФНТУНГ
 
Codeti
CodetiCodeti
Codeti
 

Semelhante a Sny cap7

Metodos numericos 4
Metodos numericos 4Metodos numericos 4
Metodos numericos 4monica
 
Método de gauss y gauss seidel
Método de gauss y gauss seidelMétodo de gauss y gauss seidel
Método de gauss y gauss seidelLilly Kwang
 
Metodos numericos 4
Metodos numericos 4Metodos numericos 4
Metodos numericos 4monica
 
Metodos numericos 4
Metodos numericos 4Metodos numericos 4
Metodos numericos 4monica
 
Resolucion de Sistemas de Ecuaciones Lineales
Resolucion de Sistemas de Ecuaciones LinealesResolucion de Sistemas de Ecuaciones Lineales
Resolucion de Sistemas de Ecuaciones LinealesRene Stalyn Ortega
 
3.2.2 eliminacion gaussiana
3.2.2 eliminacion gaussiana3.2.2 eliminacion gaussiana
3.2.2 eliminacion gaussianaRoger Burgos
 
Algebra elemental sistema de ecuaciones
Algebra elemental sistema de ecuacionesAlgebra elemental sistema de ecuaciones
Algebra elemental sistema de ecuacionesChristian Farinango
 
Método de Gauss
Método de GaussMétodo de Gauss
Método de GaussKike Prieto
 
Métodos de Gaus-Jacobi y Gauss-Seidel(2022).pdf
Métodos de Gaus-Jacobi y Gauss-Seidel(2022).pdfMétodos de Gaus-Jacobi y Gauss-Seidel(2022).pdf
Métodos de Gaus-Jacobi y Gauss-Seidel(2022).pdflinos13
 
XSistemas de ecuaciones
XSistemas de ecuacionesXSistemas de ecuaciones
XSistemas de ecuacionesJose VS
 
Metodos de optimizacion
Metodos de optimizacionMetodos de optimizacion
Metodos de optimizaciondev_david
 
Ecuaciones diferenciales parciales
Ecuaciones diferenciales parciales Ecuaciones diferenciales parciales
Ecuaciones diferenciales parciales Kike Prieto
 
329938280 100401-47-trabajo-n-2
329938280 100401-47-trabajo-n-2329938280 100401-47-trabajo-n-2
329938280 100401-47-trabajo-n-2migueska
 
“Año del Fortalecimiento de la Soberanía Nacional” (2).pdf
“Año del Fortalecimiento de la Soberanía Nacional” (2).pdf“Año del Fortalecimiento de la Soberanía Nacional” (2).pdf
“Año del Fortalecimiento de la Soberanía Nacional” (2).pdfTaniaLeguiaRojas
 

Semelhante a Sny cap7 (20)

Metodos numericos 4
Metodos numericos 4Metodos numericos 4
Metodos numericos 4
 
Slide share wileon
Slide share wileonSlide share wileon
Slide share wileon
 
Continuation methods
Continuation methodsContinuation methods
Continuation methods
 
Método de gauss y gauss seidel
Método de gauss y gauss seidelMétodo de gauss y gauss seidel
Método de gauss y gauss seidel
 
Metodos numericos 4
Metodos numericos 4Metodos numericos 4
Metodos numericos 4
 
Metodos numericos 4
Metodos numericos 4Metodos numericos 4
Metodos numericos 4
 
Resolucion de Sistemas de Ecuaciones Lineales
Resolucion de Sistemas de Ecuaciones LinealesResolucion de Sistemas de Ecuaciones Lineales
Resolucion de Sistemas de Ecuaciones Lineales
 
3.2.2 eliminacion gaussiana
3.2.2 eliminacion gaussiana3.2.2 eliminacion gaussiana
3.2.2 eliminacion gaussiana
 
Matrices
MatricesMatrices
Matrices
 
Actividad numero7
Actividad numero7Actividad numero7
Actividad numero7
 
Algebra elemental sistema de ecuaciones
Algebra elemental sistema de ecuacionesAlgebra elemental sistema de ecuaciones
Algebra elemental sistema de ecuaciones
 
19 3-11-control_tema3_soluciones-1
 19 3-11-control_tema3_soluciones-1 19 3-11-control_tema3_soluciones-1
19 3-11-control_tema3_soluciones-1
 
Método de Gauss
Método de GaussMétodo de Gauss
Método de Gauss
 
Métodos de Gaus-Jacobi y Gauss-Seidel(2022).pdf
Métodos de Gaus-Jacobi y Gauss-Seidel(2022).pdfMétodos de Gaus-Jacobi y Gauss-Seidel(2022).pdf
Métodos de Gaus-Jacobi y Gauss-Seidel(2022).pdf
 
Sistemasdeecuaciones
SistemasdeecuacionesSistemasdeecuaciones
Sistemasdeecuaciones
 
XSistemas de ecuaciones
XSistemas de ecuacionesXSistemas de ecuaciones
XSistemas de ecuaciones
 
Metodos de optimizacion
Metodos de optimizacionMetodos de optimizacion
Metodos de optimizacion
 
Ecuaciones diferenciales parciales
Ecuaciones diferenciales parciales Ecuaciones diferenciales parciales
Ecuaciones diferenciales parciales
 
329938280 100401-47-trabajo-n-2
329938280 100401-47-trabajo-n-2329938280 100401-47-trabajo-n-2
329938280 100401-47-trabajo-n-2
 
“Año del Fortalecimiento de la Soberanía Nacional” (2).pdf
“Año del Fortalecimiento de la Soberanía Nacional” (2).pdf“Año del Fortalecimiento de la Soberanía Nacional” (2).pdf
“Año del Fortalecimiento de la Soberanía Nacional” (2).pdf
 

Mais de fabianchopinto (20)

Taller refuerzo
Taller refuerzoTaller refuerzo
Taller refuerzo
 
Newton
NewtonNewton
Newton
 
Fixedpoint
FixedpointFixedpoint
Fixedpoint
 
Taller ej 1 gauss seidel
Taller ej 1 gauss seidelTaller ej 1 gauss seidel
Taller ej 1 gauss seidel
 
Metodos especiales ejercicio en clase
Metodos especiales ejercicio en claseMetodos especiales ejercicio en clase
Metodos especiales ejercicio en clase
 
Metodos iterativos
Metodos iterativosMetodos iterativos
Metodos iterativos
 
Metodo Jacobiano
Metodo JacobianoMetodo Jacobiano
Metodo Jacobiano
 
Metodo Jacobiano
Metodo JacobianoMetodo Jacobiano
Metodo Jacobiano
 
Metodos especiales
Metodos especialesMetodos especiales
Metodos especiales
 
Gauss con pivoteo
Gauss con pivoteoGauss con pivoteo
Gauss con pivoteo
 
Curso programación y_métodos_numéricos_linux
Curso programación y_métodos_numéricos_linuxCurso programación y_métodos_numéricos_linux
Curso programación y_métodos_numéricos_linux
 
02 ec no_lineales_v4.128
02 ec no_lineales_v4.12802 ec no_lineales_v4.128
02 ec no_lineales_v4.128
 
T080
T080T080
T080
 
Sesion practica i[1]
Sesion practica i[1]Sesion practica i[1]
Sesion practica i[1]
 
Psor
PsorPsor
Psor
 
P46 articulo gcc
P46 articulo gccP46 articulo gcc
P46 articulo gcc
 
Multifasico
MultifasicoMultifasico
Multifasico
 
Multifasico
MultifasicoMultifasico
Multifasico
 
Cavm0 b3x
Cavm0 b3xCavm0 b3x
Cavm0 b3x
 
Capiii
CapiiiCapiii
Capiii
 

Sny cap7

  • 1. Simulación Numérica de Yacimientos Dr. Fernando Rodríguez de la Garza e-mail: frodriguezd@pep.pemex.com Tel: 55508712, 5622 3017 al 19 Capítulo 7. Solución de Sistemas de Ecuaciones Lineales 1
  • 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 Directos Requieren 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. 2
  • 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. 3
  • 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 las Té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. 4
  • 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: Au = d Donde  2 1 1  u1  1 A =  4 1 0   ; u = u 2    ; d = − 2   − 2 2 1   u 3    7   5
  • 6. 7.1.1 Método de Eliminación Gaussiana. o bien,  2 1 1  u1   1   4 1 0 u  =  − 2     2   − 2  2 1  u3   7      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.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. 2 1 1   u1   1  0 −1 − 2 u  =  − 4     2   0  3 2   u 3   8      6
  • 7. 7.1.1 Método de Eliminación Gaussiana. 3a. Operación: Restamos –3 veces la segunda ecuación de la tercera. 2 1 1   u1   1  0 −1 − 2 u  =  − 4     2   0  0 − 4  u 3  − 4      7.1.1 Método de Eliminación Gaussiana. Haciendo: 2 1 1  u1  1 Uu = 0 −1 − 2 u2  ;    c = − 4   0 0 − 4 u3     − 4   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. 7
  • 8. 7.1.1 Método de Eliminación Gaussiana. 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. E 21 Au = E 21d donde,  1 0 0 E21 =  − 2 1 0    Matriz Elemental 21  0 0 1   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. 7.1.1 Método de Eliminación Gaussiana. relación entre A y U... O sea que,  1 0 0  2 1 1   u1   2 1 1   u1  − 2 1 0  4 1 0 u  =  0 − 1 − 2  u      2    2  0 0 1   − 2 2 1  u3   − 2 2      1  u 3    Haciendo ahora, E 21 d  1 0 0 1   1  − 2 1 0 − 2  =  − 4         0 0 1   7   7      8
  • 9. 7.1.1 Método de Eliminación Gaussiana. Similarmente, la operación 2 de eliminación se representa matricialmente como: E 31 (E 21 A )u = E 31 (E 21 d ) 1 0 0  E31 = 0 1 0    Matriz Elemental 31 1 0 1    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. 7.1.1 Método de Eliminación Gaussiana. Esto es: 1 0 0  2 1 1  u1  1 0 0  1  0 1 0  0 − 1 − 2 u  = 0 1 0 − 4     2    1 0 1 − 2 2 1  u3  1 0 1  7         Realizando operaciones: 2 1 1   u1   1  0 − 1 − 2 u  =  − 4     2   0  3 2   u3   8      9
  • 10. 7.1.1 Método de Eliminación Gaussiana. y la operación 3 de eliminación es: E 32 (E 31 E 21 A )u = E 32 (E 31 E 21 d ) donde: 1 0 0 E 32 = 0  1 0  Matriz Elemental 32 0  3 1  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. 7.1.1 Método de Eliminación Gaussiana. La operación 3 de eliminación es entonces, 1 0 0 2 1 1   u1  1 0 0 1 0 1 0 0 −1 − 2 u  =  0 1 0 - 4       2     0  3 1  0  3 2   u 3   0    3 1  8   y realizando operaciones, se tiene que: 2 1 1   x1   1  0 −1 − 2  x  = - 4     2   0  0 − 4   x3  - 4      Resumiendo: Las operaciones de eliminación generaron, Uu = c U es una matriz triangular superior 10
  • 11. 7.1.1 Método de Eliminación Gaussiana. 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. Las 3 operaciones matriciales que convierten a la matriz A en U son: E32 E31 E21 A = U Similarmente: E32 E31 E21d = c 7.1.1 Método de Eliminación Gaussiana. Nótese también que se pudo haber realizado, independientemente, la siguiente operación:  1 0 0 E32 E31 E21 = − 2 1 0    − 5 3 1   matriz triangular inferior 11
  • 12. 7.1.1 Método de Eliminación Gaussiana. Notar que: − − E 321 E 32 E 31 E 21 A = E 321U Recordando que: − E 321 E 32 = I Donde: 1 0 0 − E 321 = 0  1 0  0  −3 1  7.1.1 Método de Eliminación Gaussiana. o sea: 1 0 0 1 0 0  1 0 0 0 1 0 0 1 0  = 0 1 0       0  −3 1  0  3 1  0   0 1  De igual forma: (E −1 31 ) − − E 31 E 21 A = E 311 E 321U Finalmente: − − − A = E 211 E 311 E 321U 12
  • 13. 7.1.1 Método de Eliminación Gaussiana. Pero: − − − E211 E311 E321 = L Es la matriz que convierte U en A: 1 0 0  1 0 0 1 0 0 L = 2 1 0  0 1 0 0 1 0     0 0 1 − 1 0 1 0 − 3 1      1 0 0 2 L= 1 0 − 1 − 3 1   7.1.1 Método de Eliminación Gaussiana. Resumiendo: Au = d pero A se puede descomponer en el producto LU: LUu = d de manera que por eliminación se transformó en: L−1 (LUu) = L−1d o sea: Uu = c 13
  • 14. 7.1.1 Método de Eliminación Gaussiana. Entonces: x = U −1c x = L−1U −1d ó, x = A−1b 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) 14
  • 15. 7.1.2 Solución de Sistemas Tridiagonales…Thomas. donde,  a1 b1  c a2 b2   2   c3 a3 b3    A= . . .   . . .     . . .  cI aI    uT = (u1,u2,...,uI) y, dT = (d1,d2,...,dI). 7.1.2 Solución de Sistemas Tridiagonales.. Thomas. La matriz A se descompone como el siguiente el producto A = WQ …(7.3) Donde,  w1  c w2   2   c3 w3    W = . .   . .     . .   cI wI    15
  • 16. 7.1.2 Solución de Sistemas Tridiagonales… Thomas. y, 1 q1   1 q2     1 q3    Q= . .   . .     1 qI −1   1    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: w1 = a1 b1 q1 = w1 bi qi = ; …(7.4) wi wi = ai − ci qi −1 …(7.5) i = 2,3,...., I 16
  • 17. 7.1.2 Solución de Sistemas Tridiagonales…Thomas. La solución del sistema tridiagonal se obtiene como sigue: Au = WQu = Wg …(7.6) donde g = Qu Es decir, (ν ) (ν +1) (ν )  w1   g1   d1  c w2  g  d   2   2  2  c3 w3  g3  d 3         . .  .  = .   . .  .  .         . .  .  .    cI wI   gI    d I    7.1.2 Solución de Sistemas Tridiagonales…Thomas. y en un barrido hacia delante se resuelve g: d1 g1 = w1 …(7.7) d i − ci g i −1 gi = ; i = 2,3,...., I wi Finalmente se puede resolver Qu=g como sigue: (ν ) (ν +1) (ν ) 1 q1   u1   g1   1 q2  u  g     2  2  1 q3  u3   g3         . .  . = .   . .  . .         1 q I −1  . .    1   u I    gI    17
  • 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: uI = gI …(7.8) ui = gi - qiui+1; i= I-1, I-2,…, 1 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 ui mediante las Ecs. 7.8. 7.1.3 Algoritmos de matrices dispersas: Descomposición LDU. 18
  • 19. 7.2 Métodos Iterativos. Los métodos iterativos adquieren interés en el caso de problemas multidimensionales, 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. 19
  • 20. 7.2 Métodos Iterativos. Los métodos iterativos están ligados a parámetros de iteración, que se 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: f ij ui , j −1 + cij ui −1, j + aij ui , j + bij ui +1, j + eij ui , j +1 = d ij …(7.9) i = 1,2,..., I j = 1,2,..., J 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. 20
  • 21. Como antecedentes a los métodos SOR se presenta primeramente los métodos de: Jacobi y de Gauss Seidel. 7.2.1 Método de Jacobi. 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: 1 ui(,m +1) = j ai , j {d i, j − f i, j ui(,mj−)1 − ci, j ui(−m1), j − bi, j ui(+m1), j − ei, j ui(,mj+)1 } …(7.10) donde m+1 y m son los niveles iterativos, desconocido y conocido respectivamente. 21
  • 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: 1 ui(,m +1) = j ai , j {d i, j − f i, j ui(,mj−+11) − ci, j ui(−m1+, 1j ) − bi, j ui(+m1), j − ei, j ui(,mj+)1 } (7.11) 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. 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. 22
  • 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 de Gauss-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: u i(,m +1) = (1 − ω )u i(,m ) + ω u i*(jm +1) j j , …(7.12) 1≤ ω ≤ 2 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.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áneamente las 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: ci , j ui*−(1, +1) + ai , j ui*,(jm+1) + bi , j ui*+(1, +1) = d i , j − f i , j ui(,m−1 ) − ei , j ui(,m+1 m j m j j +1 j ) (7.13) i = 1,2,....,I para cada j 23
  • 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: ui(,m+1) = (1 − ω )ui(,m ) + ωui*(jm +1) j j , …(7.14) 1≤ ω ≤ 2 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.2.4 Método de SOR en Línea o LSOR. El proceso iterativo LSOR comienza con la siguiente estimación inicial: δ u i(,0j) = δ u in, j (7.15) y termina cuando los cambios iterativos de las incógnitas son, en valor absoluto, menores que una cierta tolerancia estipulada, esto es: δ u i(,mj + 1 ) − δ u i(,mj ) ≤ tolerancia (7.16) Para todo i = 1 , 2 ,..., I j = 1 , 2 ,..., J 24
  • 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: hi , j ,k ui , j ,k −1 + f i , j ,k ui , j −1,k + ci , j ,k ui −1, j ,k + ai , j ,k ui , j ,k (7.17) + bi , j ,k ui +1, j ,k + ei , j ,k ui , j +1,k + gi , j ,k ui , j ,k +1 = di , j i = 1,2,...,I ; j = 1,2,...,J ; k = 1,2,…,K 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. 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 siguiente proceso iterativo: f i , j ,k ui*,(jm1,1k) + ci , j ,k ui*−(1, +,1k) + ai , j ,k ui*,(jmk+1) + bi , j ,k ui*+1, +,1k) + ei , j ,k ui*,(jm1,1k) − + m j , (m j + + (7.18) = di , j − hi , j ,k ui(,m,+k1−1 − gi , j ,k ui(,m,)k +1 j ) j Para cada plano, k = 1,2,…,K Se resuelven simultáneamente: i = 1,2,...,I ; j = 1,2,...,J 25
  • 26. 7.2.5 Método de SOR en Bloque o BSOR. El problema bidimensional, Ec. 7.18, genera para un ordenamiento normal, 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,….,J correspondientes 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 una estimación inicial dada por la Ec. 7.15 y termina cuando alcanza la convergencia estipulada, dada por la Ec. 7.16 26
  • 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: Se parte de considerar que cualquier esquema iterativo para resolver el sistema de ecuaciones puede expresarse de la siguiente forma: u ( m+1) = A* u ( m ) + d * (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: 2 ωb = [ 1 + 1 − ρ A* ( )] 2 1 2 (7.20) donde ωb es el parámetro de sobrerelajación óptimo. 27
  • 28. 7.2.6 Algoritmo para el cálculo del parámetro de sobrerelajación. El radio espectral de la matriz A*, ρ (A * ) , está definido como: ρ (A* )= (θ + ω − 1) 1 (7.21) ωθ 2 donde θ es el valor promedio del ritmo al cual converge la solución, θ (m +1) el cual se calcula con la siguiente expresión: δ u ( m +1 ) θ ( m +1 ) = (7.22) δu (m ) ( m +1 ) donde δ u es el vector de los cambios iterativos de la solución, definido como: δ u ( m +1 ) = u ( m +1 ) − u ( m ) (7.23) y δu es la norma del vector solución de los cambios iterativos. 7.2.6 Algoritmo para el cálculo del parámetro de sobrerelajación. Los valores de θ (m +1) 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 (m +1 ) obtener el vector solución δ u . Por tal motivo, se requiere que este proceso iterativo se inicialice con ω = 1 y se cumpla con la siguiente condición: θ (m +1) − θ (m ) ≤ tolerancia (7.24) De tal manera que este proceso iterativo se detiene hasta lograr la convergencia estipulada, Ec. 7.24. Cabe mencionar, que este proceso (m ) converge solo si el valor de ω es menor que el nuevo valor de ( m +1) calculado. De otra forma, los valores deθ ( m ) oscilarán y no se podrá ω obtener una aproximación correcta del radio espectral, ρ ( A ) . En este último caso, debe ω reducirse hasta que θ ( m ) logre la convergencia. 28
  • 29. 7.2.7 Método ADIP (Procedimiento Iterativo de Dirección Alternada). Peaceman, D.W. y Rachford, H.H.:” The Numerical Solution of Parabolic and Elliptic Differential Equations,” SIAM J. Numerical Analysis (1955) 3, 28-41 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: f ij ui , j −1 + cij ui −1, j + (a x ,ij + a y ,ij + aac ,ij )ui , j + bij ui +1, j + eij ui , j +1 = d ij i = 1,2,..., I j = 1,2,..., J Matricialmente, podemos escribir este sistema de ecuaciones como sigue: 7.2.7 Método ADIP ... ( H + V + S )u = d 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 ax b  c a b  ay e  aac   x   ay e   a   c ax b     ac     ay e   aac   c ax b       f ay e   aac   c ax b     f ay e   aac   c ax b      H =   f ay e   aac  c ax b V =  S =    f ay e aac  c ax b         f ay e   aac   c ax b   f ay e     aac  c ax b       f ay   aac   c ax b       f ay   aac    c ax    f ay     aac   29
  • 30. 7.2.7 Método ADIP ... El sistema matricial ------ puede rearreglarse como: S S (H + V + + )u = d 2 2 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): S S (H + V + + + rI − rI )u = d 2 2 El algoritmo iterativo del ADIP consiste de resolver las incógnitas de la iteración m+1 en dos barridos. En el primer barrido, en x, se obtiene una solución intermedia, u* , rearreglando ---- como sigue: S S (V + + r ( m +1) I )u *( m +1) = d − ( H − + r ( m+1) I )u ( m ) 2 2 7.2.7 Método ADIP ... En el segundo barrido, en y, se obtiene la solución de la iteración m+1 : S S (H + + r ( m+1) I )u ( m+1) = d − (V − + r ( m +1) I )u *( m ) 2 2 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: uijm +1) − uijm ) ≤ ε ( ( Nótese que la ecuación matricial ---- que representa el primer barrido se puede escribir equivalentemente como: 30
  • 31. 7.2.7 Método ADIP ... 1 c ij u i*, (1mj+1) + ( a x ,ij + − , a ac ,ij + r ( m +1) )u i*, (j m +1) + bij u i*, (1mj+1) , + , 2 i = 1,2,..., I 1 j = 1,2,..., J = d ij − f ij u i(,m−1 − ( a y ,ij + a ac ,ij − r ( m +1) )u ijm ) − eij u i(,m+1 j ) ( j ) 2 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: i = 1,2,..., I cij ui*,(1mj+1) + a (Xm,ij 1)ui*,(j m +1) + bij ui*,(1mj+1) = d ij ( m ) − , + , + , *, j dada 1=1 2 I j=1 2 Primer Barrido: Solución Intermedia u*i,j J 7.2.7 Método ADIP ... Similarmente, la ecuación ---- del segundo barrido se escribe como: 1 f ij ui(,m−1 ) + (a y ,ij + aac ,ij + r ( m +1) )ui(,m +1) + eij ui(,m+1 ) j +1 j j +1 2 i = 1,2,..., I 1 j = 1,2,..., J = d ij − cij ui*,(1mj) − (a y ,ij + aac ,ij − r ( m +1) )uij ( m ) − bij ui(+1), j − , *, m 2 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 f ij ui(,m−1 ) + aYmij+1)ui(,m +1) + eij ui(,m+1 ) = d ij ( m ) j +1 ( , j j +1 **, i=12 I j = 1,2,..., J j=1 i dada 2 Segundo Barrido: Solución ui,j(m+1) J 31
  • 32. 7.2.7 Método ADIP ... Los parámetros de iteración se calculan mediante una progresión geométrica: r ( m +1) = ω r ( m ) m=1,2,...,M-1 1 r  M −1 ω =  max r    min  Bjordammen y Coats, (1969) sugieren calcular rmax y rmin como: rmax = 1      π 2 π 2  rmin = min  ,   2  ∆x  k y    2 2 i, j 1 +  ∆ y  k x    2 I 1 +  2   ∆y  k   2J          x    ∆ x  k y  i, j    i, j  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 32
  • 33. 7.2.8 Método SIP (Procedimiento Fuertemente Implícito) Stone, H.L.:”Iterative Solution of Implicit Approximations of Multidimensional Partial Differential Equations,” SIAM J. Numerical Analysis (1968) 5, 530-58. 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: Au = d 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: Au = A*u − A*u + d y se rearregla iterativamente como: A*u ( m+1) − A*u ( m) = Au(m) − d o bien, A*δu ( m+1) = R( m) 33
  • 34. 7.2.8 Método SIP ... donde: δu (m+1) = u ( m+1) − u ( m) y, R( m) = Au( m) − d pero, A* = LU entonces, LUδu ( m+1) = R( m) 7.2.8 Método SIP ... Si hacemos: Uδu ( m+1) = v( m+1) tenemos que podemos resolver el vector v(m+1) hacia adelante, Lv( m+1) = R( m) Una vez resuelto v(m+1) la solución de δu(m+1) se obtiene mediante substitución hacia atrás, Se procede luego a verificar la convergencia, y se dará por concluido el proceso iterativo cuando de solución cuando uijm +1) − uijm ) ≤ ε ( ( 34
  • 35. 7.2.8 Método SIP ... Se derivará el algoritmo del SIP mediante un problema bidimensional. Considérese nuevamente el sistema problema: f ij ui , j −1 + cij ui −1, j + aij ui , j i = 1,2,..., I + bij ui +1, j + eij ui , j +1 = d ij j = 1,2,..., J i=1 2 3 4 j=1 1 2 3 4 2 5 6 7 8 3 9 10 11 12 7.2.8 Método SIP ... Se tiene entonces, siguiendo el ordenamiento indicado: a1,1 b,1 1 0 0 e1,1 0 0 0 0 0 0 0  u1,1  d1,1  c a2,1 b2,1 0 0 e2,1 0 0 0 0 0 0  u2,1 d2,1  2,1     0 c3,1 a3,1 b3,1 0 0 e3,1 0 0 0 0 0  u3,1 d3,1      0 0 c4,1 a4,1 0 0 0 e4,1 0 0 0 0  u4,1 d4,1  f1,2 0 0 0 a1,2 b,2 1 0 0 e1,2 0 0 0  u1,2  d1,2       0 f2,2 0 0 c2,2 a2,2 b2,2 0 0 e2,2 0 0  u2,2 d2,2 0 = 0 f3,2 0 0 c3,2 a3,2 b3,2 0 0 e3,20  u3,2 d3,2      0 0 0 f4,2 0 0 c4,2 a4,2 0 0 0 e4,2  u4,2 d4,2 0 0 0 0 f1,3 0 0 0 a1,3 b,3 0 0  u1,3  d1,3   1     0 0 0 0 0 f2,3 0 0 c2,3 a2,3 b2,3 0  u2,3 d2,3      0 0 0 0 0 0 f3,3 0 0 c3,3 a3,3 b3,3  u3,3 d3,3 0  0 0 0 0 0 0 f4,3 0 0 c4,3 a4,3 u4,3 d4,3     35
  • 36. 7.2.8 Método SIP ... Si definimos L como:  A,1 0 0 0 0 0 0 0 0 0 0 0  1 C A 0 0 0 0 0 0 0 0 0 0   2,1 2,1   0 C,1 A,1 0 0 0 0 0 0 0 0 0  3 3    0 0 C4,1 A,1 0 0 0 0 0 0 0 0  4 F,2 0 0 0 A,2 0 0 0 0 0 0 0  1 1    0 F,2 0 0 C2,2 A,2 0 0 0 0 0 0  2 2 L=  0 0 F,2 0 0 C,2 A,2 0 0 0 0 0   3 3 3   0 0 0 F,2 0 0 C4,2 A,2 0 0 0 0  4 4 0 0 0 0 F 0 0 0 A 0 0 0  1,3 1,3   0 0 0 0 0 F,3 0 0 C2,3 A,3 0 0  2 2    0 0 0 0 0 0 F,3 0 0 C,3 A,3 0  3 3 3  0 0 0 0 0 0 0 F,3 0 0 C4,3 A,3  4 4  7.2.8 Método SIP ... y U como:  |1 B,1 0 0 E,1 0 0 0 0 0 0 0  1 1 0 1 B 0 0 E 0 0 0 0 0 0  2,1 2,1   0 0 1 B,1 0 0 E3,1 0 0 0 0 0  3    0 0 0 1 0 0 0 E4,1 0 0 0 0   0 0 0 0 1 B,2 0 0 E,2 0 0 0  1 1    0 0 0 0 0 1 B2,2 0 0 E2,2 0 0  U= 0 0 0 0 0 0 1 B,2 0 0 E3,2 0   3   0 0 0 0 0 0 0 1 0 0 0 E4,2 0 0 0 0 0 0 0 0 1 B 0 0  1,3   0 0 0 0 0 0 0 0 0 1 B2,3 0     0 0 0 0 0 0 0 0 0 0 1 B,3 3 0 0 0 0 0 0 0 0 0 0 0 1   36
  • 37. 7.2.8 Método SIP ... Entonces tenemos: a1,1 * b*,1 0 0 e1,1 0 0 0 0 1 * 0 0 0 * * * * *  c2,1 a2,1 b2,1 0 g2,1 e2,1 0 0 0 0 0 0 0 * * * * * c3,1 a3,1 b3,1 0 g3,1 e3,1 0 0 0 0 0  * * * *  0 0 c4,1 a4,1 0 0 g4,1 e4,1 0 0 0 0 f* h*,2 0 0 a1,2 b*,2 0 0 e1,2 * * 0 0 0  1,2 1 1  0 f2*2 h2,2 0 c2,2 , * * * a2,2 * b2,2 * 0 g2,2 * e2,2 0 0  A* = LU =  0 0 f3*2 h3,2 0 * * c3,2 * a3,2 * b3,2 0 g3,2 e3,2 0  * *  ,  0 0 0 f4*,2 0 0 * c4,2 * a4,2 0 0 g4,2 e4,2  * *   0 0 0 0 f1*3 , h*,3 1 0 * 0 a1,3 b*,3 0 1  0 0 0 0 0 f2*,3 * h2,3 * 0 c2,3 a2,3 b2,3 0  * *  *  0 0 0 0 0 0 f3*3 , * h3,3 0 * * c3,3 a3,3 b3,3  0 0 0 0 0 0 0 f4*3 0 0 c4,3 a4,3  * *  ,  7.2.8 Método SIP ... donde: f i *j = Fi , j , hi*, j = Fi , j Bi , j −1 ci*, j = Ci , j ai*, j = Fi , j Ei , j −1 + Ci , j Bi −1, j + Ai , j bi*, j = Ai , j Bi , j g i*, j = Ci , j Ei −1, j ei*, j = Ai , j Ei , j 37
  • 38. 7.2.8 Método SIP ... Vemos entonces que se tiene ahora lo siguiente: f i *j ui , j −1 + hi*, j ui +1, j −1 + ci*, j ui −1, j + ai*, j ui , j , i = 1,2,..., I j = 1,2,..., J + bi*, j ui +1, j + g i*, j ui −1, j +1 + ei*, j ui , j +1 = d ij Donde aparecen dos incógnitas adicionales en los nodos i-1.j-1 e i+1,j+1: i-1,j-1 i,j-1 i-1,j i,j i+1,j i,j+1 i+1,j+1 7.2.8 Método SIP ... Ahora bien, si modificamos ligeramente el sistema original de ecuaciones como sigue: f i , j ui , j −1 + hi , j [ui +1, j −1 − α (ui +1, j + ui , j −1 − ui , j )] + ci , j ui −1, j + ai , j ui , j + bi , j ui +1, j + g i , j [ui −1, j +1 − α (ui , j +1 + ui −1, j − ui , j )] + ei , j ui , j +1 = d ij Nótese que ui +1, j −1 ≈ ui +1, j + ui , j −1 − ui , j y ui −1, j +1 ≈ ui , j +1 + ui −1, j − ui , j Aproximaciones que se obtienen como sigue: 38
  • 39. 7.2.8 Método SIP ... ∂u ui −1, j +1 = ui , j +1 − ∆xi + O(∆x 2 ) restando, y considerando ∂x i , j +1 que ∆xi ∂u = ∆xi ∂u ∂x i , j +1 ∂x i −1, j ∂u se obtiene la aproximación ui , j = ui −1, j + ∆xi + O(∆x 2 ) para ui-1,j+1 ∂x i −1, j ∂u ui +1, j −1 = ui +1, j − ∆y j + O(∆y 2 ) restando, y considerando ∂y i +1, j ∂u ∂u que ∆y j = ∆y j ∂y i +1, j ∂y i , j −1 ∂u se obtiene la aproximación ui , j = ui , j −1 + ∆y j + O(∆y 2 ) para ui+1,j-1 ∂y i , j −1 7.2.8 Método SIP ... La ecuación modificada se escribe entonces como: ( f i, j − αhi , j )ui, j −1 + hi , j ui +1, j −1 + (ci , j − αgi , j )ui −1, j + (ai , j + αhi, j + αgi , j )ui , j + (bi , j − αhi , j )ui +1, j + gi, j ui −1, j +1 + (ei , j − αgi , j )ui, j +1 = dij Comparando esta ecuación con la obtenida previamente del producto A*=LU encontramos las siguientes equivalencias: 39
  • 40. 7.2.8 Método SIP ... f i *j = f i , j − αhi , j , hi*, j = hi , j ci*, j = ci , j − αg i , j ai*, j = ai , j + αhi , j + αg i , j bi*, j = bi , j − αhi , j g i*, j = g i , j ei*, j = ei , j − αg i , j 7.2.8 Método SIP ... y de acuerdo a la definición de f*, h*, c*..., en términos de los elementos de L y U, tenemos: f i , j − αhi , j = Fi , j hi , j = Fi , j Bi , j −1 Sistema de 7 ci , j − αg i , j = Ci , j ecuaciones con 7 ai , j + αhi , j + αg i , j = Fi , j Ei , j −1 + Ci , j Bi −1, j + Ai , j incógnitas: bi , j − αhi , j = Ai , j Bi , j G,C,A,B,F,h,e g i , j = Ci , j Ei −1, j ei , j − αg i , j = Ai , j Ei , j 40
  • 41. 7.2.8 Método SIP ... Resolviendo se obtiene que: Sistema de 7 f i , j − αhi , j = Fi , j ecuaciones con 7 incógnitas: hi , j = Fi , j Bi , j −1 G,C,A,B,F,h,e ci , j − αg i , j = Ci , j Si se introduce hij y ai , j + αhi , j + αg i , j = Fi , j Ei , j −1 + Ci , j Bi −1, j + Ai , j gij en el resto, se bi , j − αhi , j = Ai , j Bi , j reduce a 5 ecuaciones con 5 g i , j = Ci , j Ei −1, j incógnitas: ei , j − αg i , j = Ai , j Ei , j G, C, A, B, F 7.2.8 Método SIP ... Resolviendo se obtiene: fi, j Fi , j = 1 + αBi , j −1 ci , j Ci , j = 1 + αEi −1, j Ai , j = ai , j + Fi , j (αBi , j −1 − Ei , j −1 ) + Ci , j (αEi −1, j − Bi −1, j ) bi , j − αFi , j Bi , j −1 Bi , j = Ai , j ei , j − αCi , j Ei −1, j Ei , j = Ai , j 41
  • 42. 7.2.8 Método SIP ... Hemos entonces encontrado la manera de calcular los elementos de las matrices L y U en términos de los elementos de la matriz original. Regresando entonces a, Lv( m+1) = R( m) vemos que se escribe como: Fi, j vi(,m−1 ) + Ci , j vi(−1+j1) + Ai, j vi(,m+1) = Ri(,m) j +1 m , j j y se resuelve por substitución hacia adelante: 7.2.8 Método SIP ... ( m+1) Una vez resuelto vi , j , resolvemos mediante substitución hacia atrás las incógnitas de la iteración (m+1) Uδu ( m+1) = v( m+1) lo que es igual a: δui(,m+1) + Bi , jδui(+1+j1) + Ei , jδui(,m+1) = vi(,m) j m , j +1 j Entonces δui(,m+1) = vi(,m) − Bi , jδui(+1+j1) − Ei , jδui(,m+1) j j m , j +1 42
  • 43. 7.2.8 Método SIP ... 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,      π 2 π 2  (1 − α max ) = min  ,   2   ∆x  k y    ∆y  2 k x   i, j 2  2 I 1 +     ∆y  k x   2 J 2 1 +     ∆x  k y       i, j   i, j    y los parámetros se calculan como: m (1 − α m ) = (1 − α max ) M −1 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) 43
  • 44. 7.3 Solución de Sistemas de Ecuaciones estructurados en Bloques. o bien: Au = d …(7.26) donde,  a1 b1  c a2 b2   2   c3 a3 b3  A=    . . .   . . .     . . .  cI aI    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 di son entonces subvectores de orden 3. 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:  w1 w2 w3     w4 w5 w6    w7  w8 w9 1       c1 c2 c3   w1 w2 w3    c4 c5 c6  w w5 w6      4    c7  c8 c9  2  w7  w8 w9  2    c1 c2 c3   w1 w2 w3    c   c5 c6  w w w    4   4 5 6  c7  c8 c9 3  w7 w8 w9  3    W =                     c1 c2 c3   w1 w2 w3    c c c  w w   w6    4 5 6  4 5   c7 c8 c9  I w7 w8 w9  I        44
  • 45. 7.3 Solución de Sistemas de Ecuaciones estructurados en Bloques. I q1  y,   I q2    I q3  Q=    . .   . .     I q I −1   I  1 0 0   I =  0 1 0 donde I es la matriz identidad de orden (3x3),   0 0 1    Las submatrices wi, qi y el subvector gi se obtienen como: w1 = a1 q1 = w1−1b1 qi = wi−1bi ; i = 2,3,...., I wi = ai − ci qi −1 ; i = 2,3,..., I …(7.27) 7.3 Solución de Sistemas de Ecuaciones estructurados en Bloques. y, g1 = w1−1d 1 g i = wi−1 (d i − ci g i −1 ); i = 2,3,..., I (7.28) La solución de u se obtiene en un barrido hacia atrás como sigue: uI = g I u i = g i − q i u i +1 ; i = I − 1, I − 2 , ...., 1 (7.29) 45
  • 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 el tiempo 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 preferidos cuando 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. 46
  • 47. SOLUCIÓN DE SISTEMAS LINEALES DE ECUACIONES Básicamente Existen dos métodos de solución 1. 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 D4 Price 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. i=1 2 3 4 5 No. Planos I=5 1 3 12 4 4 5 16 6 8 7 J=1 NP. = (I+J+K) – 2 J=4 11 4 3 5 15 6 7 7 19 8 NP = 8 planos K=1 2 3 2 5 14 6 6 7 18 8 10 9 Suponer que: 4 13 6 5 7 17 8 99 20 10 I>J>K 47
  • 48. ORDENAMIENTO D4 • Cada plano se identifica con el número m • Los nodos asociados al plano m son tales que i + j + k =m Y m = 3, 4, 5, …M Donde 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 impar 3, 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 48
  • 49. PLANO INDICES DEL NODO # DEL NODO (ORD. 4) i j k 3 1 1 1 1 5 1 3 1 2 5 2 2 1 3 5 3 1 1 4 7 2 4 1 5 7 3 3 1 6 7 4 2 1 7 7 5 1 1 8 9 4 4 1 9 9 5 3 1 10 4 1 2 1 11 4 2 1 1 12 6 1 4 1 13 6 2 3 1 14 6 3 2 1 15 6 4 1 1 16 8 3 4 1 17 8 4 3 1 18 8 5 2 1 19 10 5 4 1 20 ORDENAMIENTO D4 Jk+4 Jk+1 ELIMINACIÓN DE ALL AUL AUR XU bU AUL AUR XU bU ALL ALR XL bL 0 ALR* XL b L* 49
  • 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 i= 1 2 3 4 5 1,1 2,1 3,1 4,1 5,1 J=1 NX = 5 1 2 3 4 5 2 1,2 2,2 3,2 4,2 5,2 NY = 5 6 7 8 9 10 1,3 2,3 3,3 4,3 5,3 ORDENAMIENTO 3 11 12 13 14 15 NORMAL 1,4 2,4 3,4 4,4 5,4 4 16 17 18 19 20 1,5 2,5 3,5 4,5 5,5 5 21 22 23 24 25 i= 1 2 3 4 5 2,1 3,1 4,1 J=1 ORDENAMIENTO 1,2 2,2 1 3,2 2 4,2 3 5,2 NORMAL 2 4 5 6 7 8 1,3 2,3 4,3 5,3 3 Celda activa 9 10 11 12 2,4 3,4 4,4 5,4 4 Celda inactiva 13 14 15 16 2,5 3,5 4,5 5 17 18 19 50
  • 51. i= 1 2 3 4 5 1,1 2,1 3,1 4,1 5,1 J=1 1 14 2 16 5 ORDENAMIENTO 1,2 2,2 3,2 4,2 5,2 2 15 3 17 6 20 D4 1,3 2,3 3,3 4,3 5,3 3 4 18 7 21 10 1,4 2,4 3,4 4,4 5,4 4 19 8 22 11 24 1,5 2,5 3,5 4,5 5,5 5 9 23 12 25 13 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: Pδ X p = − rp Donde: P es la matriz de coeficientes δXp es el vector de incógnitas rp es el vector de términos conocidos 51
  • 52. De acuerdo con este ordenamiento, este sistema de ecuaciones se puede particionar como:  P1 P 2   δ X p1   r p1     = −  P3 P 4  δ Xp 2   rp 2  Donde P1 → y → P 4 son submatrices diagonales, y P 2 → y → P3 son 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. Esto es:  P1 P 2   δXp1   rp1     = − *   O P 4  δXp 2   rp 2  * 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 [ ] P4 * δ X p 2 = − r p 2* ⇒ δ X p 2 = − P4 * −1 rp 2 * El cual se resuelve mediante un algoritmo de banda para obtener el vector δXp 2 y después se calcula el vector δXp1 mediante una sustitución regresiva, ya que la submatriz P es una submatriz diagonal. Esto último 1 se expresa como: P1 δ X p1 + P2 δ X p 2 = − r p1 52
  • 53. Se puede expresar por lo tanto como: δXp1 = −[P1 ] [rp1 + P2 δXp 2 ] −1 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: Ax = b • La eliminación Gaussiana se efectúa con intercambios de columnas en la matriz A para obtener una factorización de la forma: AQ = LU 53
  • 54. • Donde: L Es una matriz triangular inferior U es una matriz triangular superior Q es una matriz de permutación Por lo que se puede establecer el siguiente sistema: T LU Q x = b Este sistema se puede descomponer en los siguientes subsistemas: Ly = b y T UQ x = y Se resuelve primero el subsistema L y = b mediante una sustitución hacia delante para obtener el vector y y posteriormente se calcula el vector x , del T subsistema U Q x = y mediante una sustitución hacia atrás. Este método requiere de 3 vectores para almacenar los elementos diferentes de cero de la matriz 54