Metodos Numericos II imf unmsm

download Metodos Numericos II imf unmsm

of 16

description

Metodos Numericos II imf unmsm ecuaciones parciales elipticas Solución de Ecuaciones

Transcript of Metodos Numericos II imf unmsm

  • Captulo IV Solucin de Ecuaciones Diferenciales Parciales Elpticas 4.1 Clasificacin de las Ecuaciones Diferenciales Parciales

    Las ecuaciones diferenciales parciales (EDPs) de segundo orden se pueden clasificar en tres tipos: Elpticas, Parablicas e Hiperblicas. Para distinguir dichos tipos de EDPs, consideremos la siguiente forma general de una ecuacin diferencial parcial lineal de segundo orden de dos variables:

    (68) donde ( )yx,= es la funcin o variable dependiente; x e y son las variables independientes; A, B, C, D, E, F y G son funciones dadas de x, y. representa el dominio. La ecuacin anterior ser de uno de los tres tipos, si cumple con una de las condiciones siguientes:

    Elptica, si 0)4( 2 ACB : Existen 2 direcciones caractersticas en

    0222

    2

    2=++

    +

    +

    +

    +

    GFy

    Ex

    Dy

    Cyx

    Bx

    A

  • 38 V. Yzocupe (Mayo 2015)

    NOMBRE MATEMATICO

    ECUACION PROBLEMAS DESCRITOS

    OTROS NOMBRES

    Elptico

    ( )yxyx

    yx

    ,

    0

    2

    2

    2

    2

    2

    2

    2

    2

    =

    =

    Equilibrio o estado estacionario, Conduccin de calor estacionario en slidos, Distribucin del potencial elctrico, Flujo potencial.

    Ecuacin de Laplace

    Ecuacin de Poisson

    Parablico

    2

    2

    xt

    =

    es constante

    Difusin de partculas, Conduccin de calor, Flujo en medios porosos.

    Ecuacin de Fourier

    o Difusin pura

    Hiperblico

    0

    2

    22

    2

    2

    =

    +

    =

    xk

    t

    xC

    t

    C, k son constantes

    Ondas elsticas, acsticas y electromagnticas. Propagacin, Transporte convectivo de la materia.

    Ecuacin de onda

    Ecuacin de adveccin pura

    4.2 Ecuaciones Diferenciales Parciales Elpticas

    Las EDP elpticas aparecen en problemas estacionarios de dos y tres dimensiones. Entre los problemas elpticos tpicos estn la conduccin de calor en slidos, la difusin de partculas y la vibracin de membranas. Otra aplicacin en hidrodinmica, es el problema del flujo potencial. Las ecuaciones elpticas requieren condiciones de frontera especificadas en todas las fronteras de una regin de la superficie solucin, aunque tales fronteras puedan ser cerradas al infinito. Estos datos de frontera pueden consistir de valores de la funcin (tipo Dirichlet), de su derivada normal (tipo Neumann), o de una combinacin de ambos (tipo Cauchy). La frontera debe envolver completamente la regin solucin, an si una frontera esta localizada en el infinito. Las discontinuidades u otras perturbaciones en la frontera desaparecen rpidamente porque no logran propagarse con fuerza hacia el interior de la solucin. Las EDP elpticas se pueden escribir en la siguiente forma general:

    (69)

    donde p, q y S son funciones dadas y 0q . Cuando p = 1 y q = 0, la ecuacin (69) se transforma en la ecuacin de Poisson o Laplace:

    ),(),(),(),(),( yxSyxyxqyxyxp =+

  • Solucin de Ecuaciones Diferenciales Parciales 39

    Ecuacin de Poisson:

    (70) Ecuacin de Laplace: Una EDP elptica puede contener derivadas de primer orden, como:

    (71) donde u y v son funciones dadas. En dinmica de fluidos, u y v se conocen como los trminos advectivos. Si stos dominan al primer trmino, la ecuacin tiene un comportamiento ms parecido al de una EDP hiperblica. Los mtodos de solucin numrica para las EDP elpticas se pueden clasificar en dos categoras: a) mtodo de diferencias finitas y b) mtodo de elementos finitos. El primero se aplica a una malla rectangular y tiene la ventaja que se dispone de numerosas tcnicas de solucin. La ventaja del segundo es que puede adaptarse mejor a los contornos de geometras curvas o irregulares.

    4.3 Solucin de una EDP Elptica para Geometras Rectangulares

    En esta seccin obtendremos las ecuaciones en diferencias finitas para la ecuacin general de Poisson en coordenadas cartesianas rectangulares:

    (72) donde ),( yxS es una funcin dada, la cual recibe el nombre de trmino no homogneo o trmino fuente. El dominio estar definido por: ,max0 xx

    max0 yy .

    Figura 7. Dominio rectangular y grilla de clculo Con las siguientes condiciones de frontera:

    0),(

    ),(),(2

    2

    =

    =

    yx

    yxSyx

    Sqy

    yxvx

    yxup =+

    +

    + ),(),(

    ),(),(),(

    2

    2

    2

    2yxS

    yyx

    xyx

    =

  • 40 V. Yzocupe (Mayo 2015)

    Frontera izquierda: 0=

    x ( tipo Neumann ) (73)

    Frontera derecha: 0= ( tipo Dirichlet )

    Frontera inferior: 0=

    y ( tipo Neumann )

    Frontera superior: 0= ( tipo Dirichlet ) Para obtener las ecuaciones en diferencias finitas, se establece una grilla regular dentro de las fronteras del dominio, con intervalos espaciados de manera uniforme, como lo muestra la figura 7. El tamao de los intervalos espaciales en las direcciones x e y se denotan como x y y , respectivamente. Los nodos de la grilla se identifican mediante los ndices i, j; donde el ndice i se utiliza para la coordenada x, y el ndice j para la coordenada y. 4.3.1 Algoritmo para los Nodos situados dentro de la Frontera

    Figura 8. Nodo interior

    Los nodos (i, j) de la grilla situados dentro de la frontera estn rodeados por otros cuatro nodos, de los cuales pueden obtener informacin. Por lo tanto es factible de aproximar, mediante una diferencia finita central, los dos trminos de la ecuacin (72):

    (74)

    (75) Luego, sustituimos las ecuaciones (74) y (75) en la ecuacin (72) para obtener:

    (76) Finalmente, el algoritmo ser:

    (77) Los nodos (i, j) de la grilla localizados en las fronteras requieren un tratamiento especial debido a que el nmero de nodos vecinos es menor de cuatro, y adems deben tomar en cuenta la informacin proporcionada por las condiciones de frontera dadas. Para este caso en particular, no se necesitan establecer las

    2,1,,1

    2

    2 2

    xxjijiji

    +

    +

    21,,1,

    2

    2 2

    yyjijiji

    +

    +

    jijijijijijiji S

    yx ,21,,1,

    2,1,,1 22 =

    +

    + ++

    jijiyx

    jiyx

    jijijiyx Sx ,

    21,

    2,1

    2,,11,

    2 )()()( ][12 =++++ ++

  • Solucin de Ecuaciones Diferenciales Parciales 41

    ecuaciones en diferencias finitas para los nodos de las fronteras derecha y superior, porque los valores de son conocidos: 0= .

    4.3.2 Algoritmo para los Nodos situados en la Frontera Inferior

    Figura 9. Nodo fronterizo inferior Los nodos (i, j) de la grilla situados en la frontera inferior estn rodeados solamente por otros tres nodos y el ndice i est en el rango max1 ii

  • 42 V. Yzocupe (Mayo 2015)

    4.3.3 Algoritmo para los Nodos situados en la Frontera Izquierda

    Figura 10. Nodo fronterizo lateral

    Los nodos (i, j) de la grilla situados en la frontera lateral izquierda estn rodeados tambin por solamente tres nodos y el ndice j est en el rango

    max1 jj

  • Solucin de Ecuaciones Diferenciales Parciales 43

    4.3.4 Algoritmo para el Nodo situado en la Esquina Inferior Izquierda

    Figura 11. Nodo en esquina El nodo de la grilla situado en la esquina inferior izquierda con 1== ji , est rodeada solamente por dos nodos. Por lo que el primer trmino de la ecuacin (72) se puede aproximar mediante la ecuacin (87) para 1=j :

    (90) Mientras que el segundo trmino de la ecuacin (72) lo aproximamos mediante la ecuacin (81) para 1=i :

    (91) Luego, sustituimos las ecuaciones (90) y (91) en la ecuacin (72) para obtener:

    (92)

    Finalmente, el algoritmo ser:

    (93)

    4.4 Generacin del Sistema de Ecuaciones Lineales

    Para ilustrar la generacin del sistema de ecuaciones lineales, podemos particularizar la aplicacin al caso en el que 4141 , ji y

    hyx == .

    Figura 12. Grilla de clculo

    1,121,12,1

    21,11,2 2222 S

    yx=

    1,12

    1,22

    1,12,12 2122 ][ )()( Sxyxyx =++

    21,11,2

    1,12

    2 22

    xx

    =

    21,12,1

    1,12

    2 22

    yy

    =

  • 44 V. Yzocupe (Mayo 2015)

    El conjunto de algoritmos (77), (83), (89) y (93) sern aplicados a todos los nodos de la grilla, excepto a los que se ubican en las fronteras derecha y superior, donde tiene valores conocidos por las condiciones de frontera dadas. Los ndices ),( ji , variarn segn el siguiente orden ][ 3,2,13,2,1 ),( == ji , produciendo las siguientes nueve ecuaciones algebraicas lineales:

    (94) o en forma matricial, [ ]{ } [ ]b=A :

    (95)

    Todos los elementos de la matriz de la ecuacin (95) son cero, excepto los elementos de las cinco diagonales. A esta matriz de forma especial se le llama matriz pentadiagonal.

    nSh

    Sh

    Sh

    Sh

    Sh

    Sh

    Sh

    Sh

    Sh

    nnn

    =

    3,32

    3,22

    3,12

    2,32

    2,22

    2,12

    1,32

    1,22

    1,12

    3,3

    3,2

    3,1

    2,3

    2,2

    2,1

    1,3

    1,2

    1,1

    x411

    1411

    241

    1411

    11411

    1241

    241

    2141

    224

    3,32

    3,22

    3,12

    2,32

    2,22

    2,12

    1,32

    1,22

    1,12

    3,33,22,3

    3,33,23,12,2

    3,23,12,1

    3,32,32,21,3

    3,22,32,22,11,2

    3,12,22,11,1

    2,31,31,2

    2,21,31,21,1

    2,11,21,1

    4

    4

    24

    4

    4

    24

    24

    24

    224

    Sh

    Sh

    Sh

    Sh

    Sh

    Sh

    Sh

    Sh

    Sh

    =

    =

    =

    =

    =

    =

    =

    =

    =

    +

    ++

    +

    ++

    +++

    ++

    +

    ++

    ++

  • Solucin de Ecuaciones Diferenciales Parciales 45

    4.5 Ejemplo de Solucin de EDP Elptica

    Calcular y dibujar las lneas de flujo para un canal con un pilar de seccin rectangular. El patrn del flujo potencial se asume que es simtrico respecto a los ejes x e y; as que solamente es necesario calcular la regin ABCDEF. El flujo a travs de la seccin AB es uniforme con una velocidad igual a 1 m/s, ( m5.0== yx ).

    CDen0AB,enBC,en4AFED,en0 ==== xUy .

    Solucin: El flujo dentro de la regin delimitada ABCDEFA es potencial, la cual se gobierna por la ecuacin de Laplace:

    (97) Con las siguientes condiciones de frontera:

    (98) Frontera izquierda: yU= (tipo Dirichlet)

    Frontera derecha: 0=

    x (tipo Neumann)

    Frontera inferior: 0= (tipo Dirichlet) Frontera superior: 4= (tipo Dirichlet)

    Para resolver la ecuacin (97) mediante el mtodo de diferencias finitas, establecemos un grillado regular dentro del dominio ABCDEFA, con

    m5.0== yx , lo que produce los siguientes rangos para los subndices: 131 max= ii y 91 max= jj , como lo muestra la figura:

    x

    y

    =

    =

    v

    u

    v)V(u,

    022

    =

    +

    yx

  • 46 V. Yzocupe (Mayo 2015)

    4.5.1 Algoritmo para los Nodos internos

    El algoritmo para calcular las incgnitas en los nodos (i, j) situados dentro de la frontera se deduce de la siguiente manera: Mediante diferencias finitas centrales se reemplazan los dos trminos de la ecuacin (97):

    (99)

    Finalmente, con 2)( yxr = , el algoritmo es:

    (100)

    Los nodos (i, j) de la grilla localizados en las fronteras requieren un tratamiento especial debido a que el nmero de nodos vecinos es menor de cuatro. Adems deben tomarse en cuenta la informacin proporcionada por las condiciones de frontera. Para el problema planteado, no se necesitan establecer las ecuaciones en diferencias finitas para los nodos de las fronteras izquierda, inferior y superior, porque los valores de son conocidos.

    4.5.2 Algoritmo para la Frontera Derecha

    Los nodos (i, j) de la grilla situados en la frontera lateral derecha estn rodeados solamente por tres nodos y el ndice j est en el rango

    max5 jj

  • Solucin de Ecuaciones Diferenciales Parciales 47

    mediante una diferencia finita central para maxii= :

    (101) Mientras que el primer trmino de la ecuacin (97) se puede aproximar por:

    (102) La condicin de frontera derecha dada en las ecuaciones (98), 0=

    x ,

    anula el primer trmino de la ecuacin anterior; mientras que el segundo trmino se puede aproximar por una diferencia finita central: Por lo que la ecuacin (102) se transforma en:

    (103) Luego, sustituimos las ecuaciones (101) y (103) en la ecuacin (97) para obtener:

    Finalmente, el algoritmo ser:

    (104)

    Luego, el conjunto de ecuaciones algebraicas se forma por las condiciones de frontera y por la aplicacin del algoritmo (100) para i=2,,12, j=2,,8. Las ecuaciones obtenidas pasan a formar parte del sistema matricial A =b, el cual fue solucionado mediante el mtodo de eliminacin de Gauss, obtenindose el vector solucin, . Dicho procedimiento se muestra en el programa de cmputo siguiente:

    2

    1maxmax1max

    max2

    2,,,

    ,

    2

    yyjjj

    j

    iii

    i

    +

    +

    ( ) ( )2

    ,maxmax,

    max,2

    221

    x

    xx jiji

    jix

    =

    0222

    2

    1maxmax1max

    2

    max1max ,,,,, =

    ++

    +yx

    jjjjj iiiii

    xxjj

    j

    ii

    i

    ,,

    ,

    1maxmax

    max 21

    2

    max1max

    2

    2,,

    max,

    22

    xxjj

    ji

    ii

    =

    0122 1max,max,,1max1max, ][ =+++ + jijijiji rrr

  • 48 V. Yzocupe (Mayo 2015)

    ! Programa que soluciona la ecuacin de Laplace para flujo potencial ! en un canal con una obstruccin de seccin rectangular Program potencial

    real coef(1:200,1:200),vctb(1:200) real A(200,200),x(200),b(200),xaux(200) real*8 suma,r,dx,dy integer i,j,k,l,m,imax,jmax,jmp,nn ! Abre archivo de salida open (2,file='potencial.out') open (3,file='potencial1.dat') open (4,file='potencial2.dat') ! Establece valores de parametros xlt = 6; ylt = 4; xlp = 1; ylp = 2 dx = 0.5; dy = 0.5 imax = xlt/dx + 1; jmax = ylt/dy + 1; nn = imax*jmax imp = xlp/dx; jmp = ylp/dy + 1 ! Limpia la matriz de coeficientes y el vector de residuos coef = 0 vctb = 0 ! Coloca los coeficientes de frontera inferior do i=1,imax coef(i,i) = 1 vctb(i) = 0 enddo ! Coloca los coeficientes de frontera izquierda do j=2,jmax k = (j-1)*imax + 1 coef(k,k) = 1 vctb(k) = (j-1)*dy enddo ! Coloca los coeficientes de frontera superior do i=2,imax k = (jmax-1)*imax + i coef(k,k) = 1 vctb(k) = (jmax-1)*dy enddo ! Coloca los coeficientes de frontera derecha (fi=0) do j=2,jmp

    k = j*imax coef(k,k) = 1 vctb(k) = 0

  • Solucin de Ecuaciones Diferenciales Parciales 49

    enddo ! Coloca los coeficientes de frontera derecha (dfi/dx=0) do j=jmp+1,jmax-1 k = j*imax coef(k,k-imax) = 1 coef(k,k-1) = 2 coef(k,k) = -4 coef(k,k+imax) = 1 vctb(k) = 0 enddo ! Coloca los coeficientes de los nodos internos do j=2,jmax-1 do i=2,imax-1 k = (j-1)*imax + i coef(k,k-imax) = 1 coef(k,k-1) = 1 coef(k,k) = -4 coef(k,k+1) = 1 coef(k,k+imax) = 1 vctb(k) = 0

    enddo enddo ! Coloca los coeficientes de los nodos especiales ! donde esta ubicado el pilar rectangular do l=jmp,2,-1 do m=1,imp do j=1,nn coef(l*imax-m,j) = 0 enddo coef(l*imax-m,l*imax-m) = 1 vctb(l*imax-m) = 0 enddo enddo ! Transfiere los coeficientes a la matriz A y vector B do i=1,nn

    do j=1,nn A(i,j) = coef(i,j) enddo b(i) = vctb(i) enddo ! Imprime la matriz de coeficientes y el vector de residuos ! write (2,20) ! do i=1,nn ! write (2,21) ( coef(i,j),j=1,nn), vctb(i) ! enddo

  • 50 V. Yzocupe (Mayo 2015)

    ! Realiza la solucin por el mtodo de Gauss do i=1,nn-1 do k=i+1,nn if( A(k,i)==0.) cycle r = A(k,i)/A(i,i) do j=1,nn A(k,j) = A(k,j) - r*A(i,j) enddo b(k) = b(k) - r*b(i) enddo

    enddo do i=nn,1,-1 suma = 0. do j=i+1,nn

    suma = suma + A(i,j)*x(j) enddo x(i) = ( b(i)-suma )/A(i,i) enddo ! Imprime la solucin en forma ordenada ! desde la frontera superior hacia la inferior write (2,23) do j=jmax,1,-1 k = (j-1)*imax do i=1,imax xaux(i) = x(k+i) enddo write (2,26) (xaux(i),i=1,imax ) enddo ! Imprime la solucin del primer cuadrante para graficarse en Surfer do j=jmax,1,-1 k = (j-1)*imax do i=1,imax

    write (3,27) (i-1)/2.,(j-1)/2.,x(k+i) enddo enddo ! Imprime la solucin de todos los cuadrantes para graficarse en Surfer do j=jmax,1,-1 k = (j-1)*imax do i=1,imax write (4,27) (i-1)/2.,(j-1)/2.,x(k+i) enddo do i=imax-1,1,-1 write (4,27) (xlt-(i-1)/2.)+xlt,(j-1)/2.,x(k+i) enddo enddo

  • Solucin de Ecuaciones Diferenciales Parciales 51

    do j=2,jmax k = (j-1)*imax do i=1,imax write (4,27) (i-1)/2.,-(j-1)/2.,-x(k+i) enddo do i=imax-1,1,-1 write (4,27) (xlt-(i-1)/2.)+xlt,-(j-1)/2.,-x(k+i) enddo enddo 20 format (/15x,'Matriz A :',20x,'Vector b :'//) 21 format (35f4.0,6x,f4.0) 23 format (/10x,'Solucin de Flujo Potencial (Mtodo de Gauss):'/) 26 format (20f8.2) 27 format (3f8.2) close (2) close (3) close (4) stop end

    Solucin de Flujo Potencial (Mtodo de Gauss):

    4.00 4.00 4.00 4.00 4.00 4.00 4.00 4.00 4.00 4.00 4.00 4.00 4.00

    3.50 3.49 3.48 3.47 3.45 3.42 3.38 3.33 3.27 3.19 3.12 3.08 3.06

    3.00 2.98 2.96 2.94 2.90 2.85 2.78 2.68 2.55 2.38 2.21 2.12 2.10

    2.50 2.48 2.45 2.42 2.37 2.30 2.20 2.06 1.86 1.57 1.22 1.11 1.08

    2.00 1.97 1.95 1.91 1.86 1.78 1.67 1.51 1.25 .83 .00 .00 .00

    1.50 1.48 1.45 1.41 1.37 1.30 1.20 1.04 .82 .48 .00 .00 .00

    1.00 .98 .96 .93 .90 .84 .77 .66 .50 .28 .00 .00 .00

    .50 .49 .48 .46 .44 .42 .38 .32 .24 .13 .00 .00 .00

    .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00 .00

  • 52 V. Yzocupe (Mayo 2015)

    0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5 7.0 7.5 8.0 8.5 9.0 9.5 10.0 10.5 11.0 11.5 12.0

    X (m)

    -4.0

    -3.5

    -3.0

    -2.5

    -2.0

    -1.5

    -1.0

    -0.5

    0.0

    0.5

    1.0

    1.5

    2.0

    2.5

    3.0

    3.5

    4.0

    Y (m

    )

    0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0

    X (m)

    0.0

    0.5

    1.0

    1.5

    2.0

    2.5

    3.0

    3.5

    4.0

    Y (m

    )

    Captulo IVSolucin de Ecuaciones DiferencialesParciales Elpticas

    NOMBREMATEMATICOECUACION