tema6 largo
TRANSCRIPT
-
8/16/2019 Tema6 Largo
1/29
Métodos numéricos y simulación
Grado de Física, curso 2
Tema 6
Resolución numérica de ecuaciones enderivadas parciales parabólicas
(Complementos al tema)
Prof.: Mercedes Marín
Universidad de Córdoba
Dpto. Informática y Análisis Numérico
©2012
-
8/16/2019 Tema6 Largo
2/29
Índice general
Índice general 2
6 Resolución numérica de ecuaciones en derivadas parciales parabólicas 36.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36.2 Ecuación del calor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46.3 Algunos esquemas en diferencias finitas . . . . . . . . . . . . . . . . . . . . . 96.4 Ecuación de calor bidimensional . . . . . . . . . . . . . . . . . . . . . . . . 23
2
-
8/16/2019 Tema6 Largo
3/29
-
8/16/2019 Tema6 Largo
4/29
Métodos Numéricos y Simulación
Figura 6.1: Problema modelo
Fenómenos de difusión.
Movimiento de poblaciones no sedentarias.
Para desarrollar los métodos numéricos que se aplican en la resolución de este tipo de problemasconsideraremos la ecuación del calor unidimensional.
SECCIÓN 6.2
Ecuación del calor
Consideremos el problema de calcular la distribución de temperatura a lo largo del tiempo, en unabarra como la que aparece en la figura 6.1
Cuando se estudia el flujo de calor en cuerpos térmicamente conductores, se encuentra una ecua-ción en derivadas parciales de tipo parabólico.
Suponemos que el material del cual esta hecha es térmicamente isotrópico, es decir, que la con-ductividad térmica en cada punto del mismo es independiente de la dirección del flujo de calor através del punto. Si el material es no homogéneo su densidad ρ y su calor específico C dependen “apriori” del punto (x , y , z ) pero no del tiempo t :
ρ = ρ(x , y , z ), C = C (x , y , z ).
Supongamos que el material recibe, conduce y absorbe un cierto flujo de calor. Su temperatura u =u (x , y , z , t )cambiaportantoeneltiempoyenelespacio.Suexpresióndepende,claroestá,delaformadel cuerpo, de las características térmicas del material, de la distribución inicial de temperatura y de las condiciones mantenidas sobre la superficie del cuerpo. El físico francés Joseph Fourier (1768-1830), analizó esteproblema en 1822 en su tratado Théorie Analytique de la Chaleur. Utilizó principios
físicos para probar que la temperatura u debía verificar la ecuación diferencial en derivadas parciales∂
∂x
k
∂u
∂x
+
∂
∂ y
k
∂u
∂ y
+
∂
∂z
k
∂u
∂z
= c ρ
∂u
∂t ,
donde k es la conductividad térmica del material.Si el material es homogéneo, ρ,C y k son constantes, de donde la ecuación se transforma en
(6.3) ∂u
∂t = α2∆u
con α2 = k /ρC > 0. La ecuación (6.3) se denomina ecuación del calor o ecuación de difusión.Para deducir esta ecuación Fourier utilizó los siguientes principios físicos:
Prof.: M. M AR ÍN 4
-
8/16/2019 Tema6 Largo
5/29
Tema 6. Resolución numérica de ecuaciones en derivadas parciales parabólicas
(a) El calor fluye en la dirección de temperatura decreciente, o sea, de las zonas calientes a lasfrías.
(b) Elritmoalquefluyeelcaloratravésdeunáreaesproporcionalaláreayalritmodecambiode la temperatura respecto de la distancia en una dirección perpendicular al área. Siendoel factor de proporcionalidad la conductividad térmica del material k .
(c) La cantidad de calor ganado o perdido por un cuerpo cuando su temperatura cambia, esdecir, la variación de su energía térmica, es proporcional a la masa del cuerpo y al cambiode temperatura. El factor de proporcionalidad es, en este caso, el calor específico del ma-terial C , que será la cantidad de calor necesaria para aumentar en un grado la unidad demasa.
Consideraremos el problema de calor unidimensional, esto es, consideramos el flujo de calor enuna varilla cilíndrica delgada, hecha de un material homogéneo, cuya superficie lateral está perfec-tamente aislada de modo que no fluye calor por ella. Al decir que la varilla es delgada, estamos supo-niendo que la temperatura puede considerarse uniforme en cualquier sección transversal del cilin-dro, siendo por tanto función sólo del tiempo y de la posición x .
En este caso, la ecuación del calor se escribe como
(6.4) α2∂2u
∂x 2 =
∂u
∂t ,
Esta ecuación del calor constituye el prototipo de ecuación en derivadas parciales parabólica, que
está presente en todos los fenómenos de térmica y contaminación1. Modela fenómenos de difusiónen los que la densidad tiende a transferirse de las zonas de concentración más alta a las zonas de con-centración más baja (Ley de Fick ). Así, por ejemplo, se puede considerar un gas distribuido de formano uniforme sobre un determinado volumen, o bien, una disolución en la quela concentración de losmateriales no es uniforme. También puede modelar, como apuntamos al principio, el movimiento deuna población no sedentaria.
Si la frontera del cuerpo es relativamente simple, la resolución de esta ecuación puede efectuarsemediante series de Fourier.
Si embargo, en la mayoría de los casos, cuando k ,C y ρ no son constantes o cuando la frontera esirregular, no es posible encontrar una solución analítica de dicha ecuación y por ello se ha de recurrira métodos numéricos para conseguir soluciones aproximadas.
Para que un problema de este tipo esté bien planteado, es necesario añadir una condición inicialque, en el caso de venir dada para t = 0, será de la forma
(6.5) u (x ,0) = u 0(x )
con u 0 conocida. La solución del problema verificará (6.1) para t > 0 y x en una región abierta Ω.En este caso unidimensional suele ser la propia recta real, la semirrecta x > 0 o bien un intervaloabierto (a ,b ). En los dos últimos casos la solución ha de verificar unas condiciones de contorno que
1La ecuación (6.10) no varía si se sustituye x por −x . Pero no es la misma si se cambia t por −t . El fenómeno descritopor la ecuación del calor no es reversible y el sentido del tiempo juega un papel fundamental.
Prof.: M. M AR ÍN 5
-
8/16/2019 Tema6 Largo
6/29
Métodos Numéricos y Simulación
supondremos que son también lineales y que pueden involucrar a u o a su primera derivada ∂u /∂x ,o a ambas. Si x = 0 es el extremo izquierdo, la condición de contorno será de la forma
(6.6) α0(t )u (0) + α1(t )∂u
∂x (0) = α2(t )
donde
(6.7) α0 ≥ 0, α1 ≤ 0 y α0 − α1 > 0.
Si x = 1 es el extremo derecho se necesitará una condición de la forma
(6.8) β0(t )u (1) + β1(t )∂u
∂x (1) = β2(t )
donde
(6.9) β0 ≥ 0, β1 ≥ 0 y β0 + β1 > 0.
Notemos el cambio de signo entre α1 y β1, reflejando el hecho de que en el extremo derecho ∂/∂x esuna derivada normal exterior, mientras que en el extremo izquierdo es una normal interior.
Cálculo de la solución analítica
En lo que sigue, supondremos, por comodidad que se han elegido convenientementelas unidadesde tiempo y espacio para que α = 1. Nos limitaremos, así mismo, al caso anterior del flujo de calor en
una barra metálica, por tanto la ecuación será
(6.10) ∂u
∂t =
∂2u
∂x 2.
Supondremos que la barra tiene una longitud L , y es tal que sus extremos están en contacto condos fuentes térmicas que los mantienen a temperaturas a (t ) y b (t ).
Se conoce la temperatura en el instante inicial, y se quiere determinar como evoluciona a lo largodel tiempo. Se busca, por tanto u (x , t ) para 0 ≤ x ≤ L , t ≥ 0, que verifique el problema
(6.11)
∂u
∂t =
∂2u
∂x 2 para 0 ≤ x ≤ L , t > 0,
u (0, t ) = a (t ) para t > 0,u (L , t ) = b (t ) para t > 0,u (x ,0) = u 0(x ) para 0 ≤ x ≤ L .
Se necesita, por supuesto, que u 0(0) = a (0), y u 0(L ) = b (0) para que las condiciones de contorno seancompatibles con la condición inicial.
Se puede encontrar una solución analítica de este problema cuando la temperatura en los extre-mos son constantes, T 1 en x = 0 y T 2 en x = L . En efecto, la distribución de calor en la barra tenderá auna distribución estacionaria de temperatura,
v (x ) = T 1 + (T 2 − T 1)x
L .
Prof.: M. M AR ÍN 6
-
8/16/2019 Tema6 Largo
7/29
Tema 6. Resolución numérica de ecuaciones en derivadas parciales parabólicas
Haciendou (x , t ) = v (x ) + w (x , t ),
se ve que la distribución de temperatura w (x , t ) llamada transitoria, verifica un problema del tipo (P)con temperatura inicial w 0(x ) dada por
w 0(x ) = u 0(x ) − [T 1 + (T 2 − T 1)x
L ],
y condiciones de contorno homogéneas w (0, t ) = w (1, t ) = 0.Luego el problema (6.11) estará resuelto si somos capaces de resolver el problema con condiciones
homogéneas
(6.12)
∂u
∂t =
∂2u
∂x 2 para 0 ≤ x ≤ 1, t > 0,
u (0, t ) = 0 para t > 0,u (1, t ) = 0 para t > 0,u (x ,0) = u 0(x ) para 0 ≤ x ≤ 1.
en donde hemos tomado L = 1 por simplicidad.Para encontrar la solución de este problema se aplica el llamado método de Fourier que combina
la técnica de separación de variables con el principio de superposición de soluciones .Quizás sea con Fourier con quien mejor se puede apreciar que la trayectoria histórica de la física
matemática, el análisis matemático y los métodos para resolver ecuaciones en derivadas parcialesestán estrechamente relacionados y a menudo es difícil marcar fronteras entre ellos. Fourier no sólodedujo la ecuación del calor sino que inventó un método para resolverla método que, desde entonceshasta nuestros días, más ha influido en la resolución de las ecuaciones diferenciales. Durante 200años su trabajo ha sido la base de diferentes áreas del análisis matemático.
Vamos a recordar brevemente cómo se aplica este método con objeto de poder comparar las so-luciones numéricas que obtendremos con la solución analítica y así estudiar la estabilidad de losmétodos de diferencias finitas empleados.
Aplicando la separación de variables, se buscan soluciones de (6.12) en la forma
u (x , t ) = X (x )T (t ),
sustituyendo en la ecuación diferencial debe de verificarse que
X (x )
X (x ) =
T (t )
T (t ) .
Como el primer miembro depende sólo de x y el segundo sólo de t , ambos deben de ser iguales auna constante λ. Debido a las condiciones de contorno homogéneas, se llega a la conclusión quelos valores admisibles para λ que hacen que el problema tenga solución no trivial (se supone queu 0(x ) 0) han de ser negativos, es decir, λ = −k 2, resolviendo las ecuaciones diferenciales ordinariaspara X y para T , se llega a que son soluciones
u k (x , t ) = e −k 2 t sen(k x ),
Prof.: M. M AR ÍN 7
-
8/16/2019 Tema6 Largo
8/29
Métodos Numéricos y Simulación
para k = m π, donde m es un entero positivo. Al ser una ecuación lineal homogénea con condicionesde contorno también homogéneas, el principio de superposición de soluciones nos dice que todacombinación lineal de soluciones vuelve a ser solución. Tal combinación puede escribirse como
(6.13) u (x , t ) =∞
m =1a m e
−(m π)2 t sen(m πx ).
Los coeficientes de esta combinación lineal han de elegirse tal que se satisfaga la condición inicialque hasta ahora no se ha utilizado. Escribiendo (6.13) para t = 0, se obtiene
(6.14) u (x ,0) = u 0(x ) =∞
m =1a m sen(m πx ).
lo que indica que los coeficientes a m no son otros sino los coeficientes de la serie de Fourier en senosde la función u 0(x ), es decir,
(6.15) a m = 2
10
u 0(x )sen(m πx ) d x , m = 1,2,...
EJEMPLO
Consideremos el problema
(6.16)
∂u
∂t =
∂2u
∂x 2 para 0 < x < 1, t > 0,
u (0, t ) = 0, u (1, t ) = 0 para t > 0,u (x ,0) = 3sen(πx ) + 5sen(4πx ) para 0 ≤ x ≤ 1.
en este caso, la solución (6.13) viene dada por
u (x , t ) = 3e −π2t sen(πx ) + 5e −16π
2t sen(4πx ).
En la siguiente figura aparece su gráfica como función de x , para t = 0,0.01,0.1.
Notemos que el máximo valor de la solución se alcanza para t = 0, y que la solucióntotal se hace más pequeña conforme t aumenta, tendiendo a cero conforme t tiende
a infinito.
La expresión para u (x , t ) dada por (6.13) con los coeficientes (6.15) es la solución analítica delproblema pero también puede interpretarse como una aproximación numérica por dos motivos:
Prof.: M. M AR ÍN 8
-
8/16/2019 Tema6 Largo
9/29
Tema 6. Resolución numérica de ecuaciones en derivadas parciales parabólicas
1. Si queremos el valor de u (x , t ) para ciertos valores de x y de t , necesitamos primero determinarlos coeficientes a m ; éstos pueden encontrarse de forma exacta sólo para funciones especialmen-te simples u 0(x ) y, en general, necesitaremos recurrir a alguna fórmula de integración numéricaaproximada.
2. Por otra parte, y también de forma general, sólo podremos realizar la suma de un número finitode términos de la serie.
Paraesteproblema, sin embargo, estaaproximación numérica suele ser bastante eficiente; inclusopara valores pequeños de t , unos pocos términos de la serie proporcionan una buena aproximación ya que dicha serie converge muy rápidamente.
La limitación real de este método es que no es fácil generalizarlo en cuanto la geometría del pro-blema es un poco complicada o la ecuación diferencial cambia ligeramente. Por ello desarrollaremosotros métodos numéricos que permitirán buscar soluciones aproximadas en situaciones más gene-
rales.
NOTA En uno de los extremos, o en ambos, se puede reemplazar el dato de Dirichlet u poruno de Neumann ∂u /∂x , que equivale a fijar el flujo de calor en ese extremo y seobtendría de forma análoga una expresión para la solución.
SECCIÓN 6.3
Algunos esquemas en diferencias finitas
La forma de obteneresquemas en diferencias finitas para esta ecuación es muy parecida a la forma
como se obtuvieron esquemas para ecuaciones elípticas. La idea básica es de nuevo reemplazar lasderivadas por diferencias finitas, teniendo en cuenta que ahora las derivadas que aparecen son entiempo y en espacio.
Discretizamos el dominio considerando un paso en espacio h , y un paso en tiempo k , y sea
x j = j h 0 ≤ j ≤ N + 1,
t m = mk m ≥ 0.
lo cual da lugar a un mallado de puntos M m j
de coordenadas ( j h ,mk ) en el plano (x , t ).2
Como x recorre el intervalo [0,1] se tiene que h = 1/(N + 1). Nuestro objetivo consiste en calcularsoluciones aproximadas de la función solución u en los puntos del mallado M m
j = (x j , t m ).
Método explícito
Sustituimos el problema por una versión discretizada utilizando las aproximaciones de las deriva-das dadas por
u t (x , t ) =u (x , t + k ) − u (x , t )
k + O (k )
u xx (x , t ) =1
h 2[u (x + h , t ) − 2u (x , t ) + u (x − h , t )] + O (h 2).
2El índice para el tiempo se suele situar como superíndice ya que, para ciertas situaciones hace el papel de contadorde iteraciones.
Prof.: M. M AR ÍN 9
-
8/16/2019 Tema6 Largo
10/29
Métodos Numéricos y Simulación
Figura 6.2: Mallado
Llamamos U a la solución del problema discreto:
1
h 2[U (x + h , t ) − 2U (x , t ) +U (x − h , t )] =
1
k [U (x , t + k ) −U (x , t )].
Escribimos este problema en los puntos del mallado M m j
= (x j , t m ) y denotamos a la solución aproxi-mada en dichos puntos por U m
j = U (x j , t m ) ≈ u (x j , t m ). Así, se verifica que
(6.17) 1
h 2[U m j +1 − 2U
m j +U
m j −1] =
1
k [U m +1 j −U
m j ].
para j = 1,..., N , m ≥ 0.Utilizando las condiciones de contorno, se tiene
U m 0 = 0 y U m N +1 = 0
para toda m ≥ 0. Cuando m = 0 en la ecuación (6.17) todos los términos son conocidos a excepciónde U 1
j . De hecho, la distribución inicial de temperaturas, u 0 indica que
u 0(x j ) = u (x j ,0) = U 0
j para j = 1,..., N .
En otras palabras, conocemos el valor correcto de u (y de U ) en el nivel de t que corresponde a t = 0.
Por ello, los valores de U 1 j pueden calcularse a partir de la ecuación (6.17). Con este fin la ecuación seescribe en la forma equivalente:
(6.18) U m +1 j =k
h 2[U m j +1 − 2U
m j +U
m j −1] +U
m j .
o, utilizando la abreviatura
ν =k
h 2,
escribimos
(6.19) U m +1 j = νU m
j +1 + (1 − 2ν)U m
j + νU m
j −1 para j = 1,..., N m ≥ 0.
Prof.: M. M AR ÍN 10
-
8/16/2019 Tema6 Largo
11/29
Tema 6. Resolución numérica de ecuaciones en derivadas parciales parabólicas
Figura 6.3: Plantilla del método
Losvaloresenelnivel t m +1 se calculan directamente a partir de los valores en el nivel t m sin necesidadde resolver ninguna ecuación, por ello el esquema se dice explícito. Más adelante veremos algunosesquemas implícitos para los cuales es necesario resolver un sistema algebraico lineal a fin de pasarde un nivel de tiempo al siguiente.
En la figura 6.3 se presenta de forma esquemática mediante su plantilla, la estructura básica deeste método.
Seudocódigo del método
El algoritmo para llevar a cabo los cálculos del método explícito anterior comprende dos etapas:inicio del proceso y solución. En este caso el número de puntos x j en el intervalo [0,1] es N + 2, lalongitud del paso en la variable t es k y M es el número de pasos que tomaremos en tiempo.
La ecuación (6.19) define el proceso numérico y se puede interpretar usando notación vectorial.Llamaremos U m al vector formado por los valores de la aproximación en el tiempo t m , es decir
U m =
U m 1U m
2...U m N
La ecuación (6.19) puede escribirse
U m +1 = BU m
siendo B la matriz N × N definida por
Prof.: M. M AR ÍN 11
-
8/16/2019 Tema6 Largo
12/29
Métodos Numéricos y Simulación
(6.20) B =
1 − 2ν ν 0 · · · 0ν 1 − 2ν ν · · · 0...
. . . . . .
. . . ...
0 · · · ν 1 − 2ν ν0 · · · 0 ν 1 − 2ν
,
El seudocódigo del método será
Algoritmo 6.3.1: MÉTODO EXPLÍCITOENTRADA : Longitud del intervalo L
Número de puntos interiores N Paso de discretización en tiempo k Número de iteraciones en tiempo M
1 % Paso de discretización en espacio2 h = L /(N + 1)3 ν = k /h 2
4 x = [0 : h : L ]5 para j= 1 hasta N+2 hacer6 W ( j ) = u 0(x ( j ))
7 fin para 8 t = 09 para m = 1 hasta M hacer
10 U (1) = valor frontera11 U (N + 2) = valor frontera12 para i= 2 hasta N+1 hacer13 U (i ) = νW (i − 1) + (1 − 2ν)W (i ) + νW (i + 1)14 fin para 15 t = mk
SALIDA : m , t , U (0),...,U (N + 1)16 para i= 1 hasta N+2 hacer
17 W (i ) = U (i )18 fin para
19 fin para
En el seudocódigo hemos puesto la actualización de las condiciones frontera dentro del bucleen tiempo por si éstas dependen de él. En caso de que los valores frontera fuesen constantes, lascondiciones frontera se asignarían al principio, antes de entrar en el bucle.
Veamos algunos ejemplos para ilustrar como trabaja el esquema.
Prof.: M. M AR ÍN 12
-
8/16/2019 Tema6 Largo
13/29
Tema 6. Resolución numérica de ecuaciones en derivadas parciales parabólicas
EJEMPLO
Consideremos el problema
(6.21)
u t = u xx para 0 < x < 1, t > 0,u (0, t ) = 0, u (1, t ) = 0 para t > 0,u (x ,0) = sen(2πx ) para 0 < x < 1.
Su solución analítica esu (x , t ) = e −4π
2t sen(2πx ).
Tomamos h = 1/6 y k = 1/80 y calculamos la solución numérica para 0 ≤ t m ≤ 0.1.La solución numérica y la solución analítica aparecen representadas en la siguientefigura para t = 0.1. En ella se ha realizado una interpolación lineal de los valores de lasolución numérica.
En esta otra figura se ha utilizado un mallado más fino, h = 1/20 y k = 1/800.
Notamos que la aproximación es mucho mejor en este caso.
Prof.: M. M AR ÍN 13
-
8/16/2019 Tema6 Largo
14/29
-
8/16/2019 Tema6 Largo
15/29
Tema 6. Resolución numérica de ecuaciones en derivadas parciales parabólicas
Análisis de la estabilidad
En los ejemplos anteriores observamos dos hechos interesantes de las soluciones numéricas. Pri-mero notamos que el esquema puede generar muy buenas aproximaciones de las soluciones ana-líticas. Y segundo, vemos que cambiando ligeramente los parámetros del mallado pueden aparecerimportantes oscilaciones que desvirtúan la solución numérica. Tales oscilaciones no corresponden ala realidad ya que la solución analítica tiene, como ya hemos dicho, un comportamiento muy regular.
El objetivo de esta sección es entender estas observaciones. Queremos saber cuándo pueden apa-recer estas oscilaciones y como prevenir tal comportamiento.Además, queremos llegar a comprenderpor qué el esquema genera aproximaciones muy buenas cuando se elige un mallado conveniente.
El análisis de la estabilidad en los procedimientos numéricos para resolver ecuaciones diferen-ciales parciales surge en casi todos los problemas que usan el tiempo como variable independiente.Esto es natural, dado que puede ser de interés conocer las soluciones en intervalos largos de tiempo.
Para analizar la estabilidad del método podemos utilizar varios argumentos, en todos ellos necesi-taremos conocer los autovalores de la matriz B . Para el esquema explícito, la matriz puede escribirsecomo
B = I − ν A
donde A ∈ RN ×N es la matriz
(6.24) A =
2 −1 0 · · · 0−1 2 −1 · · · 0
... . . .
. . . . . .
...
0 · · · −1 2 −10 · · · 0 −1 2
.
Los autovalores µi de B se relacionan con los autovalores λi de A a través de la ecuación
(6.25) µi = 1 − νλi .
Basta por tanto calcular los autovalores de A .
PROPOSICIÓN
Los autovalores de la matriz A definida en (6.24) son de la forma λ j = 2 − 2cosθ j ,con θ
j = j π/(N + 1), j = 1,..., N . El vector x ( j ) = (sen θ
j ,sen2θ
j , . . . ,senN θ
j ) es un
autovector asociado al autovalor λ j .
Demostración
Vamos a suprimir el índice j por simplicidad de notación, es decir, vamos a demostrar que λ =2 − 2cos θ con θ = j π/(N + 1) es autovalor de A asociado al autovector x = (senθ,sen2θ,...,sen N θ).
Si A = ( A i j ) y δi j es la delta de Kronecker, se verifica que
A i j = 2δi j − δi +1, j − δi −1, j .
Prof.: M. M AR ÍN 15
-
8/16/2019 Tema6 Largo
16/29
Métodos Numéricos y Simulación
Por lo tanto, si 2 ≤ i ≤ N − 1, entonces
( Ax )i =N
j =1(2δi j − δi +1, j − δi −1, j )x j
= 2x i − x i +1 − x i −1
= 2sen i θ − [sen(i + 1)θ + sen(i − 1)θ]
= 2sen i θ − 2seni θ cosθ
= (2 − 2cos θ)seni θ = (2 − 2cos θ)x i .
Hemos utilizado la conocida igualdad
sen(α + β) + sen(α − β) = 2senαcosβ.
Si i = 1 o i = N , podemos utilizar el mismo cálculo siempre y cuando se tome x 0 = 0 y x N +1 = 0. Lafórmula x i = sen i θ automáticamente nos da x 0 = 0, y la ecuación x N +1 = 0 será cierta si sen(N +1)θ =0 o (N + 1)θ = j π para algún entero j . Para los dos casos especiales (i = 1 e i = N ) resulta lo siguiente
( Ax )1 = 2x 1 − x 2 = 2x 1 − x 2 − x 0 = (2 − 2cos θ)x 1,
( Ax )N = 2x N − x N −1 = 2x N − x N +1 − x N −1 = (2 − 2cos θ)x N .
Luego, podemos escribir que Ax = (2 − 2cos θ)x .
■
Gracias a este resultado, llegamos a que los autovalores de la matriz B son
µ j = 1 − 2ν(1 − cosθ j ) con θ j = j π
(N + 1) (1 ≤ j ≤ N ).
A continuación estudiaremos la estabilidad del método explícito utilizando diferentes argumentos.
(A) Argumento físico
Podemos utilizar, para este problema, el hecho físico de que la temperatura en la barra tenderáa cero conforme t → ∞, debido a que los extremos se mantienen a temperatura cero. Por ello, lasolución numérica también deberá tender a cero conforme t → ∞. Como U m +1 = BU m , se tiene
U m = BU m −1 = B 2U m −2 = . . . = B m U 0.
Se puede demostrar que las siguientes condiciones son equivalentes:
(i) limm →∞
B m U = 0 para todos los vectores U .
(ii) ρ(B ) < 1.
Prof.: M. M AR ÍN 16
-
8/16/2019 Tema6 Largo
17/29
Tema 6. Resolución numérica de ecuaciones en derivadas parciales parabólicas
Donde ρ(B ) es el radio espectral de la matriz B
ρ(B ) = máx{|λ|, λ es autovalor de B }.
Por lo tanto el parámetro ν = k /h 2 deberá tomarse de manera que ρ(B ) < 1.
(B) Argumento del error
Podemos llegar a la misma conclusión sin necesidad de utilizar este razonamiento físico. Para elloanalizamos los errores de redondeo que se cometen durante los cálculos numéricos. Supongamosque en cierto paso (que puede ser el primero) se produce un error. Entonces, en lugar del vector U 0
tendremos una perturbación de dicho vector que denotaremos por Ũ 0. El método explícito dará lugara vectores Ũ m = B m Ũ 0, y el error en el m −ésimo paso será:
U m − Ũ m = B m U 0 − B m Ũ 0 = B m (U 0 − Ũ 0).
Para asegurar que el error decaerá conforme m → ∞ deberemos pedir de nuevo que ρ(B ) < 1.Como los autovalores son
µ j = 1 − 2ν(1 − cosθ j ) con θ j = j π
(N + 1) (1 ≤ j ≤ N ).
para que ρ(B ) < 1, necesitamos que
−1 < 1 − 2ν(1 − cosθ j ) < 1.
Esto se verifica si y sólo si ν < (1 − cosθ j )−1. Como ν es positivo, la máxima restricción sobre ν tiene
lugar cuando cosθ j = −1.Envistadeque θ j tendrá un valor muy cercano a π cuando j = N , debemospedir que ν ≤ 1/2.
Resumiendo, para que el algoritmo explícito sea estable es suficiente suponer que
(6.26) ν =k
h 2 ≤
1
2.
NOTA
La restricción tan severa impuesta por esta condición hace que el método sea muy lento. Por ejemplo, si h = 0.01, entonces el máximo valor permisible para k es 5×10−5.Si deseamos calcular una solución para 0 ≤ t ≤ 10, entonces el número de pasos entiempo será 0.5 × 106 y el número de puntos del mallado deberá ser superior a 20millones. Así, el método explícito es fácil pero ineficiente.
El método quehemos utilizado para estudiar la estabilidad del métodoexplícito es conocido comométodo matricial. Otro método, adjudicado a von Neumann, se conoce con el nombre de métodode Fourier. Se trata de una herramienta muy versátil que se utiliza frecuentemente para estudiar laestabilidad de un método numérico para resolver EDP dependientes del tiempo. Usando una versióndiscreta del método de Fourier llegaremos a una fórmula explícita para la solución discreta. Esta fór-mula nos permitirá comparar las soluciones numéricas y analíticas término a término. Esta es la basedel método de von Neumann . Los métodos analíticos y numéricos pueden descomponerse en com-binaciones lineales de soluciones particulares. Así, en orden a comparar las soluciones es suficientecomparar las soluciones particulares.
Prof.: M. M AR ÍN 17
-
8/16/2019 Tema6 Largo
18/29
Métodos Numéricos y Simulación
Recordemos ahora el ejemplo anterior y observemos que aparecen oscilaciones en la soluciónnumérica cuando no se verifica la condición de estabilidad (6.26).
No es difícil demostrar que el error que se comete con este método es, como cabe esperar a lavista del tipo de aproximaciones que se han realizado de las derivadas, de primer orden en tiempo y de segundo orden en espacio O (k ,h 2).
Esquema totalmente implícito
Obviamente, el esquema explícito es muy simple de implementar pero requiere, como hemos vis-to, el tomar pasos de tiempo muy pequeños en relación a los pasos de espacio, debido a la condiciónde estabilidad
k
h 2 ≤
1
2.
Supongamos, por ejemplo, que queremos calcular la solución numérica de la ecuación del calor ent = 1, y por la precisión que queremos conseguir hemos de tomar un mallado fino con N = 100.Entonces por la condición de estabilidad hemos de tomar
k ≤1
20402.
Puesto que queremos la solución en el instante t M = 1, debemos tomar M = 20402 pasos de tiempo.Si refinamos el mallado y hacemos N = 1000, hemos de realizar M = 2004002. Vemos como un pro-blema tan simple como este puede exceder la capacidad de los ordenadores actuales. Por supuesto siconsideramos el problema tridimensional la situación es mucho peor.
Este inconveniente del método explícito hace que se busquen esquemas alternativos que seanmás eficientes desde el punto de vista computacional. En este sentido existen varios métodos dis-ponibles todos ellos implícitos. Comenzaremos presentando el más simple y quizás más popular detodos ellos el método totalmente implícito.
La diferencia fundamental entre el método explícito y los métodos implícitos es que en éstos siem-pre hay que resolver un sistema para poder calcular la solución en el nuevo instante temporal en con-tra de lo que ocurría con el método explícito puesto que la solución se calculaba directamente de lasolución en la etapa anterior, sólo había que multiplicar por una matriz, pero no había que invertirlapreviamente.
Ahora, se escribe la ecuación (6.12) en el punto M m +1 j
= (x j , t m +1): Las aproximaciones que utili-zamos para las derivadas son las siguientes
u t (x , t ) =u (x , t + k ) − u (x , t )
k + O (k )
u xx (x , t ) =1
h 2[u (x + h , t + k ) − 2u (x , t + k ) + u (x − h , t + k )] + O (h 2).
lo que da lugar al siguiente esquema
(6.27) 1
h 2[U m +1 j +1 − 2U
m +1 j +U
m +1 j −1 ] =
1
k [U m +1 j −U
m j ].
para j = 1,..., N , m ≥ 0.
Prof.: M. M AR ÍN 18
-
8/16/2019 Tema6 Largo
19/29
Tema 6. Resolución numérica de ecuaciones en derivadas parciales parabólicas
Figura 6.4: Plantilla esquema implícito.
Utilizando las condiciones de contorno, se tiene de nuevo que
U m 0 = 0 y U m N +1 = 0
para toda m ≥ 0 y la condición inicial, u 0 implica que
u 0(x j ) = u (x j ,0) = U 0
j para j = 1,..., N .
Denotando, como antes
ν = k h 2
,
el esquema (6.27) se escribe
(6.28) (1 + 2ν)U m +1 j − νU m +1
j +1 − νU m +1
j −1 = U m
j para j = 1,..., N m ≥ 0.
La plantilla sería, la que aparece en la figura 6.4. El sistema de ecuaciones (6.28) se escribe, en laforma
(6.29) CU m +1 = U m
siendo ahora C la matriz definida porC = I + ν A
Se trata de una matriz tridiagonal, simétrica, de diagonal dominante. Se puede aplicar para laresolución de cada sistema (6.29) el método de eliminación de Gauss o, mejor aún, una factorizaciónLU ya que en todos los pasos temporales se tiene la misma matriz y lo único que varía es el segundomiembro; por tanto se factoriza la matriz al principio del algoritmo y en cada paso temporal sólo hay que realizar un descenso y una remontada.
Para estudiar la estabilidad hemos de estudiar el radio espectral de la matriz C −1 puesto que
U m +1 = C −1U m .
Prof.: M. M AR ÍN 19
-
8/16/2019 Tema6 Largo
20/29
Métodos Numéricos y Simulación
Los autovalores µ j de C serían
µ j = 1 + νλ j = 1 + ν(2 − 2cos θ j )
y los de C −1 serán µ−1 j
. Se tiene que
2 − 2cos θ j > 0
y, por tanto
µ j > 1 para todo ν,
de donde
0 < µ−1 j < 1 para todo j = 1,..., N
Luego el radio espectral ρ(C −1) verifica que
0 < ρ(C −1) < 1
independientemente del valor que tenga ν. Esto significa, siguiendo el mismo razonamiento que hi-cimos para el método explícito, que este método es incondicionalmente estable.
EJEMPLO
Para el problema (6.22) del ejemplo anterior habíamos observado cómo, si elegíamosun mallado apropiado, el esquema explícito proporcionaba buenas aproximaciones.Sin embargo, al incrementar el paso de discretización temporal ligeramente, apare-cían oscilaciones grandes debido a que no se cumplía la condición de estabilidad. Siutilizamos ahora el esquema implícito que acabamos de desarrollar con un paso en
espacio h = 0.02 y el mismo paso k = 0.02 en tiempo, se tiene que ν = 50 y, sin em-bargo, se obtiene la aproximación representada en la figura que es bastante suave y regular.
No es difícil demostrar que el error que se comete con este método, al igual que el que se cometíacon el método explícito, es de primer orden en tiempo y de segundo orden en espacio O (k , h 2).
Prof.: M. M AR ÍN 20
-
8/16/2019 Tema6 Largo
21/29
Tema 6. Resolución numérica de ecuaciones en derivadas parciales parabólicas
Figura 6.5: Plantilla Crank-Nicolson.
Esquema de Crank-Nicholson
Con objeto de mejorar el orden de error con respecto a la discretización en tiempo que se con-sigue con el esquema totalmente implícito, John Crank y Phyllis Nicholson propusieron el siguienteesquema que combina el esquema explícito con el implícito
(6.30)
U m +1 j
= U m j
+ ν1
2
(U m j +1 − 2U
m j
+U m j −1) +
1
2
(U m +1 j +1 − 2U
m +1 j
+U m +1 j −1 )
para j = 1,..., N m ≥ 0
La plantilla de este esquema aparece en la figura 6.5. El sistema de ecuaciones (6.30) se escribe enforma matricial
(6.31) (2I + ν A )U m +1 = (2I − ν A )U m
En este caso, para estudiar la estabilidad hemos de estudiar el radio espectral de la matriz
D = (2I + ν A )−1(2I − ν A )]
Los autovalores de D son de la forma2 − νλ j 2 + νλ j
con
λ j = 2 − 2cos θ j , θ j = j π
N + 1, j = 1,2,...,N
los autovalores de la matriz A . Como 0 < λ j se tiene que
2 − νλ j < 2 + νλ j para todo j y todo valor de ν.
Prof.: M. M AR ÍN 21
-
8/16/2019 Tema6 Largo
22/29
Métodos Numéricos y Simulación
Luego
(6.32) 2− νλ j
2 + νλ j < 1, para todo j = 1,.. . ,N
Por otra parte, es inmediato que
(6.33) − 1 <2 − νλ j 2 + νλ j
para todo j = 1,..., N
y de (6.32) y (6.33) se sigue que
0 < ρ(D ) < 1
independientemente del valor que tenga ν. Luego también este método es incondicionalmente es-
table, con la ventaja de que además puede demostrarse que es de segundo orden, no sólo en espaciosino también es tiempo. Este último hecho se debe a que, las ecuaciones (6.30) se pueden obtener, deforma equivalente, escribiendo la ecuación
∂u
∂t =
∂2u
∂x 2
en el punto ( j h , (m +1
2)k ) y aproximando la derivada temporal en dicho punto mediante una dife-
rencia centrada de segundo orden.Con este esquema, hay que resolver también en cada paso de tiempo un sistema de matriz tri-
diagonal, simétrica, de diagonal dominante. Los únicos cálculos de más que hay que realizar con
respecto al esquema totalmente implícito, se refieren a la obtención del segundo miembro del siste-ma.
Generalización: θ-esquema
Todos los métodos desarrollados hasta ahora se pueden englobar como casos particulares del lla-mado θ−esquema, que se escribe en la forma
(6.34) U m +1
j = U m
j + ν
(1 − θ)(U m
j +1 − 2U m
j +U m
j −1) + θ(U m +1
j +1 − 2U m +1
j +U m +1
j −1 )
para j = 1,..., N m ≥ 0
con θ ∈ [0,1]. Se tiene que si
θ = 0 esquema explícito θ = 1 esquema totalmente implícito θ = 1/2 esquema de Crank-Nicholson
El sistema (6.34) se escribe en forma matricial como
(I + θν A )U m +1 = (I − θν A )U m
siendo la matriz, para todo θ, tridiagonal, simétrica y de diagonal dominante.
Prof.: M. M AR ÍN 22
-
8/16/2019 Tema6 Largo
23/29
Tema 6. Resolución numérica de ecuaciones en derivadas parciales parabólicas
Figura 6.6: Placa.
Se verifica que el θ−esquema es de orden O (h 2,k )salvoenelcasodeser θ =1
2 (Crank- Nicholson)
que se convierte en O (h 2k 2).También puede demostrarse el siguiente resultado
TEOREMA
Para el θ− esquema se verifica que
1. Si 0.5 ≤ θ ≤ 1 es incondicionalmente estable.
2. Si 0 ≤ θ < 0.5 es estable si se verifica la condición
ν =k
h 2 ≤
(1/2)(1 − 2θ)
.
Lo cual está en concordancia con los resultados que hemos obtenido anteriormente.
SECCIÓN 6.4
Ecuación de calor bidimensional
Consideremos ahora el problema de calor bidimensional
(6.35)
∂u
∂t =
∂2u
∂x 2 +
∂2u
∂ y 2 para (x , y ) ∈Ω, t > 0,
u |∂Ω = 0 para t > 0,u (x , y ,0) = u 0(x , y ) para (x , y ) ∈Ω
Por simplicidad hemos tomado condiciones de contorno Dirichlet homogéneas.Suponemos que este problema modela a lo largo del tiempo la distribución de temperaturas de
una placa que, también por simplicidad, supondremos cuadrada (ver figura 6.6).El tratamiento numérico de este problema es análogo al que hemos hecho en el caso unidimen-
sional, teniendo en cuenta ahora que se trata de un dominio de R2 y que por tanto tendremos que
Prof.: M. M AR ÍN 23
-
8/16/2019 Tema6 Largo
24/29
Métodos Numéricos y Simulación
Figura 6.7: Mallado.
realizar un mallado bidimensional análogo al que utilizamos en el caso de ecuaciones elípticas. Tam-bién en este caso y para simplificar el desarrollo tomaremos los pasos de discretización en las dosvariables espaciales iguales (ver figura 6.7).
Se tiene que x i = i h , y j = j h para i , j = 0,1,...,N + 1 y t m = mk para m ≥ 0. Llamaremos
U
m
i , j
u (x i , y j , t m ).
El esquema totalmente implícito que se obtiene de forma análoga a como se obtuvo en el caso unidi-mensional sería
(6.36) 1
k [U m +1i , j −U
m i , j ] =
1
h 2[U m +1i +1, j − 2U
m +1i , j +U
m +1i −1, j ] +
1
h 2[U m +1i , j +1 − 2U
m +1i , j +U
m +1i , j −1],
para todo i , j = 1,..., N , partiendo de U 0i , j = u (x i , y j ,0) = u 0(x i , y j ), o bien
(1 + 4ν)U m +1i , j − ν[U m +1i +1, j +U
m +1i −1, j +U
m +1i , j +1] = U
m i , j .
Si ordenamos las incógnitas siguiendo el orden lexicográfico que habíamos considerado en el temaanterior (ver figura 6.8), podemos escribir el sistema en la forma
MU m +1 = U m
Prof.: M. M AR ÍN 24
-
8/16/2019 Tema6 Largo
25/29
Tema 6. Resolución numérica de ecuaciones en derivadas parciales parabólicas
Figura 6.8: Orden lexicográfico.
siendo el vector
U m =
U m 1,1U m 2,1
...U m N ,1U 1,2
...U N ,2
...
...U 1,N
...U N ,N
y la matriz M una matriz pentadiagonal de ancho de banda 2N + 1, representada de forma esquemá-tica por
M = [−ν, −ν, (1 + 4ν), −ν, −ν]
(cada uno de los elementos anteriores serían los que rellenarían cada una de las cinco diagonales deM ).
Observamos que, en cada paso de tiempo, hemos de resolver un sistema pentadiagonal y esto escostoso.
Una alternativa es intentar que los sistemas a resolver sean más sencillos por ejemplo tridiagona-les. Esto se puede conseguir utilizando el llamado método de direcciones alternadas (ADI) que vamosa desarrollar a continuación.
Prof.: M. M AR ÍN 25
-
8/16/2019 Tema6 Largo
26/29
Métodos Numéricos y Simulación
Figura 6.9: Método ADI.
Método de direcciones alternadas
Este método no sólo es aplicable a la ecuación de calor bidimensional que estamos considerando,realmente puede utilizarse, en principio, cuando se tenga que resolver un problema evolutivo de laforma
(6.37)
∂u (z , t )
∂t = Au (z , t ), z ∈Ω, t > 0
u (z ,0) = u 0(z )
junto con las condiciones de contorno apropiadas, siendo A un operador diferencial (con derivadasen el resto de las variables, no en t ) que admite una descomposición en suma de operadores mássencillos
A = A 1 + A 2.
Por ejemplo, en nuestro caso el operador A sería el laplaciano
(6.38) A = ∂2
∂x 2 + ∂
2
∂ y 2
y
(6.39) A 1 =∂2
∂x 2, A 2 =
∂2
∂ y 2.
La idea del método de las direcciones alternadas es obtener una aproximación de la solución en elinstante (m + 1)k a partir de la que se tenga en el instante mk pasando por un valor intermedio en el
instante (m +1
2)k , (ver figura 6.9).
Así, si U 0(z ) = u (z , 0) = u 0(z ) y U m (z ) u (z ,mk )
ya se ha calculado, se obtiene U m +1(z ) resolviendo dos problemas, primero calculamos U m +1/2(z )solución de
(6.40) U m +1/2 −U m
(k /2) − A 1U
m +1/2= − A 2U
m ,
y una vez calculado U m +1/2, obtenemos U m +1 resolviendo
(6.41) U m +1 −U m +1/2
(k /2) − A 2U
m +1= − A 1U
m +1/2.
Prof.: M. M AR ÍN 26
-
8/16/2019 Tema6 Largo
27/29
Tema 6. Resolución numérica de ecuaciones en derivadas parciales parabólicas
Observemos que cada uno de los problemas (6.40) y (6.41) son más sencillos que el problema que seobtendría discretizando (6.37) directamente en la forma
U m +1 −U m
k − AU m +1 = 0,
ya que aunque parecen problemas similares, los operadores A 1 y A 2 son más sencillos que el opera-dor A y, por tanto, cabe esperar que la discretización en espacio de lugar a sistemas de ecuacionestambién más sencillos.
Si esta idea la llevamos a nuestro problema
(6.42)
∂u
∂t =
∂2u
∂x 2 +
∂2u
∂ y 2
u (x , y ,0) = u 0(x , y )
con la discretización que hemos considerado antes, pasaríamos de U m a U m +1 en dos etapas
Fase 1 Partiendo de U m calculamos U m +1/2 resolviendo el sistema
U m +1/2i , j −U
m i , j
(k /2) =
U m +1/2i +1, j − 2U
m +1/2i , j +U
m +1/2i −1, j
h 2 +
U m i , j +1 − 2U
m i , j +U
m i , j −1
h 2 i , j = 1,.. . ,N .
Fase 2 Partiendo de U m +1/2 calculamos U m +1 resolviendo el sistema
U m +1i , j −U
m +1/2i , j
(k /2) =
U m +1/2i +1, j − 2U
m +1/2i , j +U
m +1/2i −1, j
h 2 +
U m +1i , j +1 − 2U
m +1i , j +U
m +1i , j −1
h 2 i , j = 1,.. . ,N .
Escritos en forma matricial, los sistemas que han de resolverse en cada etapa de tiempo serían
Fase 1
(6.43) (2I + ν A )U m +1/2 = (2I − ν A )U m .
Fase 2
(6.44) (2I + ν A )U m +1 = (2I − ν A )U m +1/2.
Ambos tienen la misma matriz que es tridiagonal, simétrica de diagonal dominante, más aún sinos damos cuenta es como si hubiéramos utilizado en cada fase un esquema de Crank-Nicholson. Sepuede comprobar que el esquema de direcciones alternadas es incondicionalemnte estable y ade-más de segundo orden tanto en espacio como en tiempo.
En la figura 6.10 aparece representada de forma esquemática la matriz pentadiagonal a la que sellega utilizando un esquema implícito normal y las dos matrices tridiagonales a las que se llegaría encada fase utilizando el método ADI.
Notemos que en la primera de ellas (cuando consideramos la parte del operador con la derivadarespecto de x ) las tres diagonales están juntas mientras que en la segunda (correspondiente a la faseen la que se considera la derivada con respecto de y ) las tres diagonales están distantes entre sí. Estehecho se debe a que la numeración de los nodos que se ha seguido hace que los nodos que están a laderecha y a la izquierda de uno dado corresponden a componentes del vector consecutivas, mientrasque los que están arriba y abajo corresponden a componentes que no se encuentran juntas en elvector de incógnitas.
Prof.: M. M AR ÍN 27
-
8/16/2019 Tema6 Largo
28/29
Métodos Numéricos y Simulación
Figura 6.10: Matrices del método ADI.
Prof.: M. M AR ÍN 28
-
8/16/2019 Tema6 Largo
29/29
Tema 6. Resolución numérica de ecuaciones en derivadas parciales parabólicas
Prof.: M. M AR ÍN 29