Anda di halaman 1dari 11

Revista Internacional de Mtodos Numricos para Clculo y Diseo en Ingeniera. Vol.

11,4, 695-705(1995)

* Departamento de Matemtica Aplicada Universidad Politcnica de Valencia Camino de Vera s / n 4 6071 Valencia, Spain ** Departamento de Sistemas Informticos y Computacin Universidad Politcnica de Valencia Camino de Vera s/n 46071 Valencia, Spain RESUMEN
Presentamos un mtodo numrico hbrido global, y su implementacin en paralelo sobre el multiprocesador de memoria compartida Alliant FX/80, para el tratamiento de ecuaciones de conveccin-difusin en regimen transitorio en dos dimensiones. El mtodo se basa en la discretizacin realizada en el caso estacionario con bases de Legendre adaptadas al operador, conjuntamente con la utilizacin de la transformada de Laplace y un algoritmo por bloques de reduccin cclica o par-impar que implementamos en paralelo para la resolucin de los sistemas tridiagonales por bloques asociados al problema. Esto nos permite obtener soluciones aproximadas de forma rpida y sin restricciones sobre el paso de tiempo, al contrario de lo que sucede en otros mtodos como diferencias finitas o elementos finitos. Se comparan las prestaciones obtenidas en el algoritmo por bloques de reduccin cclica con las de otros algoritmos por bloques basados en eliminacin Gaussiana y tcnicas del tipo divide y vencers.

SUMMARY
We present a global hybrid method and its parallel implementation on the shared memory multiprocesor Alliant FX/80 for the treatment of two dimensional transient convection-diffusion equations. The method is based on the discretization of the steady state using Legendre basis adapted to the operation, together with the use of the Laplace transformation and a cyclic block reduction or odd-even algorithm implemented in parallel for the solution of the tridiagonal block system associated to the problem. This allows us to obtain approximate solutions very
Recibido: Enero 1995 OUniversitat Politecnica de Catalunya (Espaa) ISSN 0213-1315

696

E CHECA MARTNEZ Y V. HERNNDEZ GARCA

fast and without restrictions on the time step comparing favourably with other methods such as finite differences and finite elements. The obtained results using the cyclic block reduction are compared to algorithms based on Gaussian elimination and divide and win techniques.

INTRODUCCI~N
La eleccin de bases para la discretizacin de una ecuacin diferencial, como por ejemplo la de difusin o conveccin-difusin, es uno de los aspectos claves en la aproximacin numrica de la solucin. En particular, en problemas de conveccindifusin aparecen peculiaridades y dificultades propias debidas al trmino de conveccin que destruye la simetra del operador y que complica su resolucin. La eleccin propuesta en este trabajo conduce a estructuras matriciales sencillas, que evitan los problemas computacionales asociados a la obtencin de sistemas con matriz coeficiente densa, mal condicionada etc. En la seccin siguiente consideramos bases polinomiales que son combinacin de polinomios de Legendre. Se consiguen as estructuras matriciales en la discretizacin que nos permiten obtener resultados precisos en rgimen estacionario, tanto en el caso unidimensional como bidimensiona13. En la seccin 2 presentamos un algoritmo numrico hbrido global para el caso transitorio, en el contexto de las ecuaciones citadas, que se apoya en el tratamiento Para realizado en la seccin 1 y que est relacionado con los resultados expuestos en4Y5. llevar a cabo este nuevo enfoque hacemos uso formal de la transformada de Laplace y de un algoritmo de inversin desarrollado en8 cuya implementacin en paralelo ha sido estudiada en3. Finalmente, en la seccin 3 desarrollamos y analizamos, en el contexto de las ecuaciones citadas con la discretizacin realizada, un algoritmo de reduccin cclica por bloques desarrollado e implementado sobre el sistema multiprocesador de memoria compartida Alliant FX/80. Las prestaciones de este algoritmo se comparan con las de un algoritmo del tipo divide y vencers por bloques propuesto tambin en3.
1. RGIMEN ESTACIONARIO. DISCRETIZACION EN BASES

NO CONVENCIONALES
Consideramos el subespacio vectorial de polinomios de grado menor o igual que siguiente VN = {P(x) E PN+2(x) : P(-1) = P(1) = O) y la base {Q3(x)),Q3(x) = L3+2(x) - L3(x) , siendo Lk(x) los polinomios de Legendre de grado k. Estas bases estn incluidas en la literatura cientfica dentro de otras ms generales denominadas hierticasl. Es bien conocido que los polinomios Q3(x) se pueden expresar , como (1 - X ~ ) R ~ ( X ) y por tanto se cumple que se anulan en la frontera. Igualmente se verifica que Q; (x) = (23 3) L3+i (x), propiedad importante en los desarrollos que realizamos para los problemas tratados. Otras frmulas explcitas deducidas de las anteriores y que son tiles en nuestros desarrollos aparecen en3. El esquema est basado en aproximaciones polinomiales en subespacios cuyas bases seleccionadas son producto tensorial de bases del caso unidimensiona13. De este modo se

+2

IMPLEMENTACIN DE UN MT. NUM. HBRIDO GLOBAL EN EC. DE CONV.- DIF.

697

obtienen estructuras matriciales, susceptibles de ser resueltas mediante mtodos propios de la computacin en paralelo. Consideramos el problema1'

( ~ ( 5 , 7 4 2= (71/2)2 )

x2

donde aparece un trmino de difusin dado por las derivadas de segundo orden, junto con uno de conveccin, dado por un fluido con velocidad -2a, paralelo al eje y. Transformando este problema en el intervalo (-1,l) x (-1,l) se tendr, en un planteamiento Galerkin, despus de aplicar un teorema de Green, y considerando que la solucin se desarrolla en bases que son producto tensorial de las utilizadas en el caso unidimensional, las ecuaciones siguientes

I = ( - l , l ) x ( - l , l ) , k = O ,..., N y j = O , . . . , M El sistema que se obtiene tiene matriz coeficiente tridiagonal por bloques, con bloques en la diagonal principal con estructura pentadiagonal y el resto con estructura tridiagonal. Tenemos que aadir, que como suceder en el problema transformado que se considera en la seccin siguiente, si en el problema anterior se considera en la ecuacin correspondiente un trmino adicional de la forma su(x, y ) , como ser el caso del problema transformado de conveccin- difusin, se obtiene que todos los bloques tienen estructura pentadiagonal. con

Cuando se hace uso de la transformada de Laplace es importante disponer de un mtodo de inversin que sea eficiente, pues en caso contrario esta herramienta analtica pierde, en el contexto de los mtodos numricos, parte de su eficiencia. Utilizamos un algoritmo de inversin8 que se est mostrando eficiente, como puede verse en4Y5donde

698

E CHECA MARTNEZY

HERNNDEZGARCA

se combina con el mtodo de diferencias finitas y con el de elementos finitos, todo ello en el contexto de la ecuacin del calor.

Caso unidimensional: Mtodo numrico hbrido global


Consideramos la ecuacin de conveccin-difusin en rgimen transitorio
au(x,y) D a2u(xtV ~ = O + + )

{TN

~ ( 0 ), = 1,u(1, t ) = O, u(x, O) = O t

Convirtiendo la ecuacin en otra equivalente con condiciones de Dirichlet homogneas y transformando el problema, admitiendo que h(x, S) = N an(s)Qn(x) es una aproximacin a la solucin del problema transformado se tiene, en un planteamiento Galerkin estndar, las ecuaciones siguientes 4~ n=O a n ( s ) ( S 1 ( 2 j + 3)(2n
-1
1

+3 ) ~ n + i ( ~ ) ~ j + i ( x ) d ~ -

-S_l

( 2 ~ 3) ( L n + 2 ( ~- Ln(x))dx+ )
-

con ko = -2((v/s) Estas ecuaciones conducen a un sistema lineal con estructura pentadiagonal. Los resultados obtenidos para distintos tiempos aparecen descritos en la siguiente grfica. Los resultados han sido contrastados con la solucin analtica desarrollada en forma de serie.
~ { l ~ ( , l ' l l lTHANs PHO(_'EsC)I)I\IJb,I(CiION ~h 1

+ S S _ : ( ~ n + 2 ( x ) L ~ ( x ) ) ( L ~ + ~ ( x )(x))dx = ~c, - 1/2), kl = -11 y Ic:, = O si j > 2


~j

'

o
11
(

08

'
11

u (5
04

t
C

a.
(

o2

u
-1

-08

-0 6

-0 4

-0 2

U2 '

O1 1

OX

0t

= 10,

+ t = 100, o t = 2000

La situacin se complica cuando el trmino fuente es una distribucin como la S de Dirac, pues aade problemas en torno al punto donde est centrada dicha distribucin. Tambin en estos casos, en rgimen transitorio, se consiguen buenos resultados, aunque con aproximaciones de orden alto7.

Extensin al caso bidimensional. Soluciones numricas por secciones y evolucin temporal en puntos fijos
En este caso, tomamos como referencia un problema de difusin que analiza la dispersin de calor en una placa delgada con temperatura inicial dada y temperatura en la frontera constante. Posteriormente se obtiene la estructura matricial en el caso de conveccin-difusin que se estudiar en la seccin siguiente en un contexto de computacin en paralelo. La ecuacin en derivadas parciales que modeliza el fenmeno anterior, con valores particulares en la frontera y en la condicin inicial, es

con k = 519. Aplicando la transformada de Laplace a este problema, definimos sobre el problema transformado el funcional

siendo D t H ~ ( O )y, O el abierto (-1,l) x ( - 1 , l ) . con f = 30 y A6 = sil-k Aplicando un teorema de Green sobre la expresin del funcional y tomando como base el producto tensorial de bases polinomiales en el caso unidimensional, Qjk(x,y) = Qj(x)Qk(y) donde Qj(x) = (1- x 2 ) ~ j ( xy) Qk(y) = (1 - y 2 ) ~ k ( y ) , buscamos una a proximacin global de la forma

(g+ $1

Esta aproximacin puede implementarse en general, aunque aparezcan pequeos Construimos la problemas por las dimensiones N , M con que se desarrolla. aproximacin para el par ( N , O) suponiendo por las condiciones e interpretacin fsica del caso tratado que la solucin es suave en la direccin y, tomando en esta solamente el polinomio Qo(y). La aplicacin del teorema de Green conduce a la siguiente ecuacin

Despus de sustituir derivar parcialmente respecto de ajo y simplificar se obtiene

700

E. CHECA MARTNEZ Y V. HERNNDEZGARCA

un sistema tridiagonal desacoplado siendo las incgnitas impares nulas a ( 2 k + l ) ~ , = k 0,1,2, .... Los resultados obtenidos, tomando dos funciones polinmicas en la direccin y, se describen seguidamente atendiendo a ciertas posiciones nodales3. Tpo t = 1.2 h Posicin N21 N28 N41 N6 1 N80 TL-EFH
0.166 0.998 1.116 1.697 0.813

TL-DF
0.175 1.176 1.198 1.831 0.871

Brush ( A t = 0.05)
0.185 1.039 1.286 1.938 0.922

S. Exacta
0.173 1.065 1.186 1.812 0.862

S. Aprox. mod(4,2)
0.172 1.064 1.186 1.810 0.862

Si el desarrollo se realiza con Qo(y),Qi(y),se obtendrn dos sistemas desacoplados anlogos al anterior, donde el nico que ofrece informacin como consecuencia de la discretizacin es el que antes hemos descrito. En efecto, basta observar que las incgnitas adicionales son cero ya que J'~Ql(y)Qo(y)dy = O y la estructura de las derivadas parciales respecto a ajl son anlogas a las tratadas. Si introducimos los tres primeros elementos de la base en la direccin y, se puede dividir el sistema resultante en subsistemas desacoplados, algunos de los cuales se pueden suprimir por tener la solucin trivial. El nico que no conduce a esta solucin es el dado por las ecuaciones aF correspondientes a 8Fii aa;M, La estructura que aparece conduce a una matriz por bloques de la forma

aaJzM

(C E)
siendo A,B,C,D tridiagonales. El estudio realizado conduce a los resultados ofrecidos en la tabla anterior. Bajo el encabezamiento S. Aprox. aparecen los resultados ms precisos, y el nmero de grados de libertad son 15. En realidad solo contribuyen 10 funciones de la base, cinco en la direccin x y dos en la direccin y, que son Qo(y),Q2(y). El desarrollo realizado sirve como base para establecer el siguiente resultado en problemas de conveccin-difusin.

PROPIEDAD 1 Dado el problema L u = f (x, y) con condiciones de Dirichlet homogneas y condicin inicial nula, siendo L el operador de conveccin-difusin L u = Au - a $ , se cumple que la discretizacin e n las bases de Legendre adaptadas e n el caso bidimensional con u n enfoque Galerlcin y con transformacin previa, conduce a u n sistema Ax = b con estructura tridiagonal por bloques, siendo, e n general, las matrices que constituyen estos bloques, matrices banda.
La justificacin del resultado anterior se obtiene teniendo en cuenta la discretizacin realizada con estas bases en el caso bidimensional, para el operador L u = Au - a-" Y ay la del caso tra.nsitorio del de difusin, en cuyo problema transformado aparece el factor s u que se corresponde con al aplicar la Transformada de Laplace.

IMPLEMENTACI~NDE UN MT. NUM. HIBRIDO GLOBAL EN EC. DE CONV.- DIF.

701

Destacamos el hecho de que el planteamiento realizado permite el estudio del fenmeno considerado en secciones del dominio para un tiempo cualquiera, sin que ello suponga el conocer la aproximacin a la solucin del problema en puntos contiguos. Adems conviene aadir el inters que supone fijar un punto cualquiera del dominio y estudiar aqu la evolucin temporal del fenmeno, con el mismo coste computacional que para un nico valor de la variable tiempo, pues los procesos son independientes.

En las secciones anteriores se ha realizado un estudio de cierto tipo de ecuaciones de conveccin-difusin que aparecen en la prctica y que, con el enfoque realizado, conducen en el caso de coeficientes constantes a sistemas de ecuaciones lineales con matriz coeficiente tridiagonal por bloques, susceptibles de ser resueltos en paralelo de forma rpida y eficiente. Los resultados del apartado siguiente no slo tienen aplicacin en los problemas sealados sino en contextos ms generales, como al aplicar esquemas de diferencias finitas o elementos finitos en ecuaciones de tipo elpticog. En ambos se obtienen sistemas de ecuaciones lineales con matriz coeficiente tridiagonal por bloques con bloques de estructura determinada.

Algoritmo de reduccin cclica o par-impar por bloques


Consideremos el sistema de ecuaciones lineales Ax = b, siendo A una matriz tridiagonal por bloques expresada de forma genrica como A = (O,. . . ,B,, A,, C,, . . .). El desarrollo es vlido igualmente para la ecuacin matricial AX = B , siendo B una matriz. Suponemos que se verifican condiciones de regularidad sobre las submatrices (bloques) de forma tal que puedan llevarse a efecto las operaciones siguientes. Consideramos el estudio del caso general, donde A es una matriz tridiagonal por bloques, y donde particionamos x y b de acuerdo a los bloques de la matriz A. Suponemos que el nmero de bloques que tiene A en la diagonal es N = 2m - 1, sin que esto suponga ninguna restriccin, pues en la implementacin se ha tomado un valor O, de N cualquiera, completando el sistema con filas de la forma (. . . ,O, 1, . . .) y trmino . independiente ( 1 , 1 , . . . , I ) ~ Una ecuacin caracterstica del sistema tendr la forma B,X,-~ +Aix, C,X,+~ b, donde i = 1,2, ..., N siendo Bl = CN = O y x0 = X N + ~= O = Consideramos pues la fila i-sima de A, con i par,(. . . , O , Bi, Ai, Ci, O, . . .). La idea bsica consiste en premultiplicar, respectivamente las filas i - 1, i 1 por matrices convenien tes tales que al restarlas ambas a la fila i se obtenga otra con la siguiente estructura (. . . , O, B:, O, A:, O, c:,O, . . .). Estas operaciones crean un subsistema tridiagonal a partir de las 2m-1 - 1 ecuaciones de ndice par. Aunque las ecuaciones impares no se consideren, las incgnitas impares se pueden obtener posteriormente a partir de las pares por sustitucin regresiva. Dadas ahora las 2m-1 - 1 ecuaciones con incgnitas pares solamente, se puede eliminar un nuevo grupo de incgnitas, consiguiendo as, un conjunto de 2m-2 - 1 ecuaciones que implican incgnitas cuyo ndice es un mltiplo de 4. Este esquema puede repetirse hasta obtener una nica ecuacin para x2,-i y resolviendo el sistema correspondiente se habr calculado xp-l. Llegados a este

punto se calculan las incgnitas en orden inverso al que fueron eliminadas, mediante sustitucin regresiva. Supuesto que estamos en la iteracin Ic del proceso, con vistas a obtener las frmulas generales para la posterior implementacin del algoritmo se deben calcular matrices (H~)!, (H~)!, tales que

El algoritmo de resolucin implementado puede consultarse en3.

Implementacin y comparacin de resultados sobre el multiprocesador de memoria compartida alliant FX/80


Consideramos en primer lugar un ejemplo test de matriz tridiagonal escalar que figura en2 y posteriormente los casos que surgen al tratar los procesos de conveccindifusin discretizados en bases hierticas. Estos procesos conducen a estructuras matriciales por bloques, con los bloques de la diagonal principal pentadiagonales y los que estn en la subdiagonal y superdiagonal principal con estructura tridiagonal. Aqu no se tendr en cuenta este hecho para darle a nuestro tratamiento un carcter ms general. Se ha comprobado que el algoritmo de reduccin cclica con 8 procesadores ofrece, frente al algoritmo de descomposicin LU con 1 procesador, un speed-up de hasta 3.5 en el caso N1 = 2016, siendo N1 el nmero de bloques en la diagonal principal, y cada bloque de dimensin tres en este caso. Seguidamente presentamos el speed-up conseguido en la implementacin realizada del algoritmo de reduccin cclica
A L ( ~ O K I ' i h 1 0PAKIMPAK
8
I I

BLOQUES E N LA DIAGONAL

Se observa el alto speed-up de este algoritmo, aunque cabe aadir que como algoritmo secuencia1 es francamente ineficiente, al contrario de lo que suceder con

IMPLEMENTACIN DE UN MT. NUM. HBRIDO GLOBAL EN EC. DE CONV.- DIF.

703

el algoritmo DAC que con un procesador supera, en algunos casos, a la descomposicin LU en tiempos de ejecucin3. La siguiente grfica muestra una comparacin en tiempos de los dos algoritmos

0 Parimpar Global, + Dac Combinado


Del estudio realizado conclumos que, en el caso general de matrices tridiagonales por bloques, el mejor algoritmo de los estudiados es el de reduccin cclica. La situacin puede cambiar si el sistema es tridiagonal por bloques con bloques de estructura determinada, como sucede en el tratamiento realizado en los procesos de conveccindifusin donde la estructura de las submatrices es tridiagonal y pentadiagonal. Tenemos que sealar tambin en nuestro contexto que la mejor precisin se obtiene con eli algoritmo de reduccin cclica, igualada por el algoritmo divide y vencers, DAC, para tamaos determinados, y lo que es ms importante con N1 dado, la eleccin que se haga de los parmetros IB e IK en la descomposicin en submatrices pues Nl=IB.IK, siendo IB el nmero de subdivisiones en la matriz e IK el nmero de matrices de cada subdivisin7. Presentamos a continuacin un estudio del speed-up para ambos algoritmos, en funcin del nmero de bloques en la diagonal principal y del tamao de cada bloque.

Algoritmo: REDUCCINCCLICA.Speed up N1 = Nmero de bloques diagonal principal N = Tamao de bloque

704

E. CHECA MARTNEZ Y V. HERNNDEZ GARCA

Algoritmo: DIVIDE Y VENCERS.Speed up N1 = Nmero de bloques diagonal principal N = Tamao de bloque Un estudio comparativo en tiempos como el realizado en3, conduce en nuestros supuestos a que en la mayora de los casos el algoritmo DAC emplea menos tiempo que el de reduccin cclica. Mostramos seguidamente grficas comparativas de tiempos con 8 procesadores para ambos algoritmos, cuando el nmero de bloques es bajo y el tamao de stos es variable e igual a 10,25,50,100. En estos casos se puede observar por el contrario que el algoritmo RC se muestra en ocasiones superior a DAC.

I'I\HIX~PAR-I)A(' ('o1i\ 1=12

40
:5 j

'1'
1

30

25
LO
C 1 1
b

15

10

5
0
10 20

30

o t j n b : ~ t3nin-I tiic<i:c; SII

40

50

00

70

h(l

00

100

Parimpar,

Dac.

Como conclusin, cuando N1 no es alto, cabe pensar en estructuras de concurrencia que combinen ambos algoritmos.

REFERENCIAS
1. 1. Babuska, B.A. Szabo and I.N. Katz, "The p-version of the finite element method", Siam J. Num. Anal., Vo1.18, (1981). 2. S. Bondeli, "Divide and Conquer: A Parallel Algorithm for the Solution of a Tridiagonal Linear System of equations", Parallel Gomputing, Vol. 1 7 , North-Holland, pp. 419-434, (1991). 3. E. Checa, "Aproximacin global y computacin paralela en procesos de conveccindifusin", Tesis Doctoral, Universidad Politcnica de Valencia, Espaa, (1994). 4. H.T. Chen and CH.K. Chen, "Hybrid Laplace Transform/finite difference method for transient heat conduction problem", Int. J. Num. Meth. Engn., Vol. 26, pp. 14331447, (1988). 5. H.T. Chen, T.M. Chen and Ch.K. Chen, "Hybrid Laplace Transformlfinite element method for one dimensional transient heat conduction Problem", Comp. Method in Applied Mechanics and Engn., Vol. 63, pp. 83-95, (1987). 6. G.B. Davis, "A Laplace Transform technique for the Analytic Solution of a DiffusionConvection Equation Over a Finite Domain", Appl. Math. Mod., Vol. 9, pp. 69-71, (1985). 7. V. Hernandez y E. Checa, "Anlisis Matricial y Computacin Paralela de un Algoritmo Divide y Vencers por Bloques Aplicado a Ecuaciones de Conveccin-Difusin Meeting on Matrix Analysis and Applications", Vitoria, Espaa, Septiembre (1994). 8. G. Honig and U. Hirdes, "A Method for the Numerical Inversion of Laplace Transform", J. Comp. Appl. Math., Vol. 1 0 , pp. 113-132, (1984). 9. R.A. Sweet, "A Cyclic Reduction Algorithm for solving block tridiagonal systems of arbytrary dimension", Siam J. Num. Anal., Vol. 1 4 , (1977). 10. R. Wait, A.R. Michel, "Finite Element Analysis and Applications" J. Wiley and Sons, (1985).

Anda mungkin juga menyukai