Está en la página 1de 17

Notas - DFC - Capı́tulo 3

Ecuación de onda lineal unidimensional


José Miguel Pérez - (23-Marzo-2020)

Versión 1.0

En estas notas se describen los conceptos básicos del análisis numérico en dinámica de fluidos computa-
cional, centrándonos en la parte correspondiente a la discretización espacial de las ecuaciones y basándonos
en el esquema propuesto por Jameson, Schmidt and Turkel en 1981, esquema JST. Aunque existen numerosos
esquemas que permiten resolver las ecuaciones de Navier-Stokes compresibles, este esquema es probablemente
el que ha tenido un mayor impacto en la industria aeronáutica. Este método sentó las bases de la dinámica
de fluidos computacional moderna gracias a su robustez, precisión y claridad, mostrando tanto al sector
académico como empresarial el potencial que tenı́a la dinámica de fluidos computacional como herramienta
de predicción y análisis de problemas en el sector aeronáutico. En los últimos tiempos el método JST ha
quedado obsoleto, sin embargo, sigue siendo útil desde el punto de vista pedagógico en dinámica de fluidos
computacional, es por esa razón que se sigue utilizando en programas de universidades prestigiosas a lo largo
del mundo. En estas notas utilizaremos este método para proponer modelos numéricos de resolución de la
ecuación de ondas lineal unidimensional.

I. Análisis de la ecuación de onda lineal unidimensional


Vamos a estudiar la ecuación de ondas lineal,
@u @u
+c =0. (1)
@t @x
Recordar que c es constante y representa la velocidad de propagación de la onda. En este tema asumiremos
que c > 0. Se deja como ejercicio al alumno que razone qué sucede cuando c < 0.
Para el análisis que vamos
p a realizar en esta sección vamos a estudiar soluciones del tipo onda plana, a
ikx
u = ûk (t)e , donde i = 1 y k es el número de onda el cuál se define como k = 2⇡/l siendo l la longitud
de onda (o periodo espacial) de la onda. En esta definición estamos asumiendo que la longitud del dominio
L = 2⇡. Introduciendo esta solución en la ecuación en derivadas parciales anterior se tiene que,
dûk (t)
eikx = ickûk (t)eikx ,
dt
con lo que,
dûk (t)
= ûk (t) , siendo ûk (t = 0) = ûk,0 . (2)
dt
y
= ick . (3)
Notar que es el autovalor del Jacobiano del problema linealizado, que en este caso, al tener sólo una
ecuación coincide con un número complejo.
Llamaremos a ûk el modo de Fourier de la descomposición u = ûk (t)eikx , aun cuando en verdad no es
un modo sino una función del tiempo. Por otro lado, en la expresión anterior ûk,0 es un dato del problema
que debemos conocer antes de su resolución.
El problema anterior recibe el nombre de Problema de Valor Inicial lineal, y se escribe de forma genérica
de la siguiente manera.

a El
análisis que vamos a ver particularizado para la ecuación linealizada del problema, que es la ecuación de las perturbaciones,
recibe el nombre de análisis de estabilidad de Von Neumann.

1 of 17
Problema de Valor Inicial: Se define un Problema de Valor Inicial (PVI) como aquel que viene dado
por una ecuación diferencial ordinaria del tipo,
du
= F(u, t) con u(t = 0) = u0 ,
dt
siendo u0 la condición inicial. Se dice que el PVI es lineal si F = u donde es: una matriz (si u es un
vector) o un escalar (si u es escalar).

Análisis de Fourier: Antes de continuar vamos a reflexionar sobre qué estamos suponiendo al proponer
soluciones del tipo u = ûk (t)eikx . En primer lugar estamos utilizando el método de separación de variables,
asumiendo que la solución se puede descomponer como el producto de una función que depende del tiempo
por otra que depende del espacio. Respecto a esta última función estamos asumiendo que se corresponde
con una onda plana con número de onda k. Sin embargo, éste número de onda no está fijo y en principio
puede ser cualquiera. De hecho, la solución deberı́a ser una superposición de soluciones del tipo,
1
X
u= ûk (t)eikx .
k= 1

Aquı́ nos estamos valiendo de la linealidad del problema; si dos funciones son solución, su combinación lineal
también lo es. Esto nos permite trabajar con soluciones del tipo u = ûk (t)eikx para un valor de k genérico
y luego aplicar la superposición, en lugar de trabajar con el sumatorio de soluciones desde el principio.
Por otro lado, cuando decimos que u = ûk (t)eikx estamos haciendo algo mal. Por un lado el término de la
izquierda es una función real y el de la derecha una función imaginaria. Por lo que la igualdad no es correcta.
En verdad lo que tendrı́amos que poner es que u = ûk (t)eikx + c.c. donde c.c. es el complejo conjugado
de ûk (t)eikx . Es fácil demostrar que el c.c. de ûk (t)eikx es û k (t)e ikx . Es decir, debemos interpretar el
sumatorio anterior como una suma de pares de soluciones con números de onda k y k tal que la combinación
de cada pareja es real. Por lo tanto, deberı́amos imponer soluciones del tipo u = ûk (t)eikx + û k (t)e ikx .
Sin embargo, eso implicarı́a duplicar los desarrollos durante la asignatura. Es obvio que si razonamos para
ûk (t)eikx también lo podemos hacer para û k (t)e ikx . Ası́ que, ¿para qué duplicar los cálculos?
Por esta razón a lo largo de la asignatura diremos que u = ûk (t)eikx aun cuando seamos conscientes de
que tal igualdad no es cierta.
Os dejo como ejercicio demostrar que efectivamente û k (t)e ikx es el complejo conjugado de ûk (t)eikx .

A. Integración temporal analı́tica y factor de amplificación


El problema (2) se puede integrar fácilmente obteniendo
t ickt
ûk (t) = ûk (t = 0)e = ûk (t = 0)e . (4)

Como se puede ver en la integración se ha utilizado la condición inicial ûk (t = 0).


A partir de esta solución se puede definir el factor de amplificación (o amortiguación) analı́tico G como

u(t + t) u(t + t) i
G= = e a
. (5)
u(t) u(t)

A dicho factor también se le llama la ganancia.


Nota: En la ecuación anterior en vez de escribir ûk he escrito u porqué esta definición de la ganancia se
puede aplicar a ûk o también al valor de u en un nodos xj del dominio. Respecto a este último caso, tal y
como se argumento en las notas de introducción de este tema, podemos evaluar la ecuación de ondas en un
du
nodo xj cualquiera (método de las lı́neas) con lo que se obtiene el siguiente PVI, dtj = Fj . Por lo tanto en
(5) u puede ser o ûk (modo de Fourier) o uj (valor de u en el nodo xj ).

Como se puede ver G nos mide el ratio de la solución entre dos tiempos consecutivos, t + t y t. En
la segunda igualdad hemos escrito el valor de G (que en general es un número complejo) en su forma polar

2 of 17
(módulo por exponencial de la fase a ). Utilizamos el subı́ndice a en a para resaltar que esta expresión
provienen de la integración temporal analı́tica del problema.
Más adelante, cuando realicemos la integración temporal numérica escribiremos la expresión anterior de
la siguiente manera,
un+1 un+1 i n
G= n = e , (6)
u un
donde n es la fase numérica. En este caso un significa la solución numérica del problema a tiempo n (o
tiempo tn ). La expresión anterior puede también utilizarse en el caso de realizar la integración temporal de
forma analı́tica, asumiendo que un = u(tn ) (es decir, un es igual a la solución analı́tica tiempo tn ). Final-
u(t + t) un+1
mente, y son el módulo del factor de amplificación analı́tico y numérico, respectivamente.
u(t) un
Diferencias entre la fase analı́tica y numérica generan una dispersión o error de fase (desfase), mientras
que diferencias entre el módulo analı́tico y numérico generan un error de disipación. Estudiaremos este tipo
de errores a lo largo del curso.
Introduciendo soluciones del tipo ûk (t) = ûk (t = 0)e t en (5) se tiene que,

(t+ t)
e t
G= t
=e ,
e

En el problema de la onda lineal = ickt, sin embargo, en el caso general = R + i I siendo R = Re( )
y I = Im( ). Por el momento asumiremos la expresión general. Sustituyendo el valor de general en la
expresión anterior se tiene que,
G = e R t ei I t .
Tomando el módulo de la expresión anterior, se tiene que,
t
|G| = e R
. (7)

La figura (1) muestra la representación del módulo de la ganancia obtenido a partir de la solución analı́tica
(ecuación (7)) en el plano R t I t. Tal y como se puede ver en la ecuación (7), dado un valor de R t
e independientemente del valor de I t, |G| toma siempre el mismo valor, por lo tanto las soluciones de |G|
son lı́neas verticales en dicho plano en las que el valor de |G| es constante. Por otro lado, cuando R > 0 |G|
será mayor que uno (solución inestable) y cuando R < 0 |G| será menor que uno (solución estable). Esto
se representa en la figura con la secuencia de números elegidos. Ası́ cuando decimos que |G| = 0.8 estamos
diciendo que entre dos tiempos consecutivos el módulo de ûk se reduce en un 20%, mientras que si G = 1.2
el módulo crece en cada paso de tiempo haciendo que la solución sea inestable. En el caso en el que R = 0,
|G| es igual a uno. Esto significa que las soluciones son estables en el tiempo. Esto es precisamente lo que
sucede en nuestro problema donde = ick, por lo que R = 0.
Nota: En las transparencias y en los exámenes en ocasiones se utiliza el sı́mbolo G para significar |G|.
En la mayorı́a de los casos es evidente, en función del contexto, a qué nos estamos refiriendo.

B. Número de onda adimensional


Aunque todavı́a no nos hemos metido con la integración numérica del problema, supongamos que para la
resolución numérica dividimos el dominio en N + 1 puntos o nodos. Esto significa que el x entre dos nodos
consecutivos es igual a L/N .
Por otro lado, tomamos el valor de de nuestro problema. En nuestro caso (ecuación de onda lineal)
este valor es imaginario puro e igual a ick, por lo que t = ick t. Podemos escribir esta expresión de
otra manera. Multiplicando arriba y abajo por x y definiendo k̂ = xk se tiene que t = ick̂ t/ x.
A la combinación c t/ x se le conoce como coeficiente (o número) de Courant-Friedrich-Lewy y se suele
escribir como = CF L = c t/ x. En función de este número tenemos que,

t= ick t = i k̂ . (8)

3 of 17
λI ∆t

λR ∆t

0:5 0:6 0:7 0:8 0:9 1:1 1:2 1:3 1:4 1:5
1:0
Figure 1: Representación del módulo de la ganancia analı́tica en el plano R t I t. Los números
representan los valores de la ganancia. Estos valores crecen de izquierda a derecha alcanzado el valor 1
cuando R t = 0.

Interpretación fı́sica de k̂: Comenzamos analizando el significado fı́sico del número de onda adimen-
sional k̂. Dada una onda de longitud de onda l (ver figura 2), su número de onda asociado es k = 2⇡ b
l . Esto
implica que k̂ = 2⇡l x . Pero l/ x es igual al número de intervalos en los que numéricamente dividimos la
longitud de onda l. También podemos hablar del número de nodos o puntos por longitud de onda dado que
por la periodicidad de la solución en la longitud l el primero y último son el mismo punto. Por lo tanto,
2⇡
k̂ = .
Npuntos-por-longitud-de-onda

Como se puede ver, el número de onda adimensional, k̂, tiende a cero cuando el número de nodos por
longitud de onda es muy elevado, es decir, la resolución numérica es muy alta (ver figura 2-izquierda). En el
otro extremo, para representar una onda necesitamos como mı́nimo 2 puntos (o intervalos) por periodo (ver
figura 2-derecha). Si utilizamos este valor en la expresión de k̂ tenemos que en ese caso k̂ = ⇡. Este es el
valor más grande que podemos tener para k̂.
Como conclusión, decimos que una onda es de alta frecuencia espacial (HF) si k̂ = ⇡. En tal caso la
longitud de onda es dos veces x. Por otro lado, decimos que una onda es de baja frecuencia espacial (LF)
si k̂ tiende a cero. La resolución numérica (número de puntos por longitud de onda) en las ondas de HF es
muy baja mientras que en el caso LF dicha resolución es muy alta. Una onda con k̂ igual a cero es en verdad
una solución constante del problema, y por lo tanto no tiene interés fı́sico.
Para finalizar, la clasificación anterior es relativa. Consideramos una onda de número de onda k. Asum-
imos que en una discretización x es tal que k̂ = k x ⇡ 1. En ese caso la onda es de alta frecuencia, por
que k̂ ⇠ O(1). Pues bien, si definimos otra discretización tal que x0 = x/10 (dividimos cada segmento
en diez partes) entonces k̂ 0 = k x0 ⇡ 0.1, es decir, la onda será de baja frecuencia. Como podemos ver la
misma onda puede ser de alta frecuencia espacial en una discretización y de baja frecuencia espacial en otra.

C. Velocidad de fase de la onda


Conocido , su parte imaginaria puede utilizarse para calcular la velocidad de fase de la onda (o la velocidad
de propagación de ésta).
I
vf := ,
k
b Al considerar una descomposición de la solución en modos de Fourier estamos asumiendo que el dominio tiene longitud

L = 2⇡

4 of 17
l ≈ 2π=k
l = 2π=k

u
u

x
x
∆x ∆x

Figure 2: Representación de: modos de baja frecuencia espacial (o variación espacial lenta en comparación
con x) (figura de la izquierda) y modos de alta frecuencia espacial (o variación espacial rápida en com-
paración con x) (figura de la derecha). En el primer caso el número de nodos por longitud de onda es alto,
por lo que k̂ ⌧ 1. En el segundo caso el número de nodos por longitud de onda es bajo por lo que k̂ ⇡ ⇡.

donde I es la parte imaginaria de .


En el caso que nos ocupa (ecuación (4)) tenemos que,

ick
vf = =c.
k
Es decir, las ondas se propagan con la velocidad esperada para un problema definido por la ecuación (1).
En este caso dado que vf no depende de k se dice que la solución no es dispersiva.

D. Relación de dispersión
Hasta ahora no hemos hecho ninguna suposición sobre la dependencia temporal de los modos de Fourier ûk (t),
realizando la integración temporal de (2) de forma genérica. Sin embargo en algunos problemas podemos
excitar las perturbaciones de forma armónica en el tiempo, por lo que ûk (t) = û0k ei!t , donde ! = 2⇡
T es
la frecuencia angular siendo T el periodo temporal de dicha perturbación armónica y û0k es la amplitud de
ûk (t). Introduciendo esta solución en la ecuación (2) se tiene que,

dûk (t)
= ûk (t) ! i! u0k ei!t = u0k ei!t ! i! =0.
dt
pero como en nuestro problema = ick, se tiene que,

i! + ick = 0 ! ! + ck = 0 . (9)

Esta relación recibe el nombre de relación de dispersión. Como se puede ver si se fija el valor de !, siendo c
constante, estamos fijando el valor del número de onda k de la onda excitada.

II. Análisis de la ecuación de onda lineal con disipación unidimensional


Como ejercicio vamos a ver cómo se aplica todo lo anterior a la ecuación de onda lineal con disipación,

@u @u @2u
+c =⌫ 2 . (10)
@t @x @x
La derivada temporal implica que necesitamos una condición inicial y la derivada espacial de segundo grado
implica que necesitamos dos condiciones de contorno.
Condición inicial:
u(x, 0) = uI (x) , 8x .
Condiciones de contorno:
u(0, t) = u0 (t) y u(L, t) = uL (t) , 8t ,

5 of 17
siendo L la longitud del dominio. En nuestro análisis L = 2⇡. Asumiendo una solución del tipo u(x, t) =
ûk (t)eikx en (10) se tiene que,
dûk
= ûk (t) ,
dt
donde = ick ⌫k 2 . En este caso R = ⌫k 2 por lo que |G| < 1, es decir, la solución se amortiguará por
viscosidad entre dos soluciones temporales consecutivas; u(t) y u(t + t). Como se puede ver los términos
convectivos producen partes imaginarias en mientras que los términos disipativos (o viscosos) producen
partes reales en . Integrando la ecuación anterior tenemos que,
ick ⌫k2 )t
ûk (t) = ûk (t = 0)e t
= ûk (t = 0)e( ,

donde hemos utilizado la condición inicial ûk (t = 0).


Como u(x, t) = ûk (t)eikx y ûk (t) = ûk (t = 0)e t entonces,
i
u(x, t) = ûk (t = 0)eik(x k t)

sustituyendo por R +i I, entonces,


1
u(x, t) = ûk (t = 0)eik(x+ k I t)
e Rt
.

Esta ecuación consta de dos exponenciales, la primera es la tı́pica en una onda plana, ⇠ eik(x vf t)
, siendo
I
vf = | | la velocidad de fase de la onda, la segunda exponencial es la amplitud de la onda (salvo por
k
ûk (t = 0)) tal que dicho valor decrece si R < 0 y crece si R > 0. En nuestro problema R = ⌫k 2 < 0,
por lo que tenemos una onda que se propaga con velocidad vf al tiempo que se amortigua.
Respecto a la relación de dispersión, si asumimos que ûk (t) = û0k ei!t , entonces introduciendo esta ex-
presión en la ecuación dû
dt = ûk (t) se obtiene que,
k

i! u0k ei!t = u0k ei!t ! i! =0.


Y como = ick ⌫k 2 , entonces, la relación de dispersión queda como sigue,

i! + ick + ⌫k 2 = 0 .

Nota: La parte imaginaria de en este problema es la misma que en el problema anterior (ecuación de
onda lineal) por lo que la velocidad de fase en ambos casos = | I /k| es la misma.

III. Resolución numérica de la ecuación de onda lineal unidimensional


El objetivo de esta sección es resolver la ecuación de ondas lineal, utilizando una discretización espacial
en diferencias finitas e integrando analı́ticamente en el tiempo. En primer lugar procedemos discretizando
el dominio computacional para lo que utilizaremos la discretización realizada en al figura 3. Aplicando el
0 1 2 3 4 5 6 7 8 9 10 11 12 = N
x
x=0 x=L
Figure 3: Dominio computacional. Los números del 0 al 12 superiores son las etiquetas de los nodos de la
discretización espacial.

método de las lı́neas y particularizándolo para un nodo interno genérico j (o xj ), tenemos que,

duj @u
= c , (11)
dt @x j

a lo que tenemos que añadir una condición inicial, uj (t = 0) = uj,0 donde uj,0 es conocido. Esto nos define,
tal y como ya se anticipó con anterioridad, un PVI.

6 of 17
A. Discretización central de segundo orden sin término de viscosidad artificial (sin AV)
Partimos de la ecuación (11) semi-discretizada espacialmente en la que se utiliza una reconstrucción de orden
dos de la derivada primera (esto se vio en las notas sobre diferencias finitas),

duj c
= (uj+1 uj 1) . (12)
dt 2 x
Como recordaréis de las notas de diferencias finitas uj (t) es la solución numérica en xj a tiempo t. Operamos
igual que en las secciones anteriores y probamos soluciones del tipo u = ûk (t)eikx pero particularizadas en
los nodos xj , xj 1 y xj+1 . Es decir, en la expresión anterior vamos a sustituir los valores de u en los distintos
nodos por las siguiente expresiones:

uj = ûk (t)eikxj ,

uj 1 = ûk (t)eikxj 1
= ûk (t)eikxj ik x
= ûk (t)eikxj e ik̂
,

uj+1 = ûk (t)eikxj+1 = ûk (t)eikxj +ik x


= ûk (t)eikxj eik̂ ,

En la última igualdad en los casos uj 1 y uj+1 se ha utilizado que k̂ = k x. Introduciendo estas expresiones
en (12) se tiene que,
dûk c ⇣ ⌘
eikxj = eik̂ e ik̂
eikxj ûk .
dt 2 x
Dado que eik̂ e ik̂
= 2i sin (k̂), entonces,

dûk c
= i sin (k̂)ûk = ûk . (13)
dt x
c
Tenemos un nuevo valor propio = i sin (k̂) que para k̂ ⌧ 1 es igual al valor teórico visto antes,
x
⇡ ick (ver ecuación (3)). Es decir,
8
c t < i k̂ si k̂ ⌧ 1 ! solución analı́tica, ecuación (8)
t= i sin (k̂) = i sin (k̂) = (14)
x : 0 si k̂ = ⇡

La integración temporal analı́tica del problema (13) nos conduce a una solución del tipo,
c
i sin (k̂)t t
ûk (t) = ûk (t = 0)e x = ûk (t = 0)e .

Utilizando esta solución más el valor de t dado por (14) en la ecuación (5) se tiene que

c
i sin (k̂)(t+ t)
e x
i sin (k̂)
G= c
=e .
e i x sin (k̂)t

Como puede verse G(k̂ = 0) = G(k̂ = ⇡) = 1, es decir, los modos de alta frecuencia espacial (k̂ = ⇡) no se
amortiguan!!! En cuanto a la velocidad de fase, o velocidad de propagación de la onda, como se dijo antes
ésta se define como vf = | I /k| donde I es la parte imaginaria de . Como en el lı́mite k̂ ⌧ 1 se tiene
que I analı́tica (dada por la ecuación (8)) y numérica (dada por la ecuación (14)) son iguales, entonces
vf será el mismo
⇣ en ambos
⌘ casos para dicho lı́mite. Sin embargo para k̂ = ⇡ se tiene que vf numérica es
cero (vf = cx sin (k̂)/k = 0), por lo que el esquema central es incapaz de mover las ondas de alta
k=⇡
frecuencia espacial, lo cual esta mal!!!. Es decir,
8
i c
sin (k̂) c sin (k̂) < c si k̂ ⌧ 1
x
vf = = i = (15)
k k̂ : 0 si k̂ = ⇡

7 of 17
En general vemos que vf depende de k, por lo que la solución es dispersiva (a diferencia de lo que sucedı́a
con la integración analı́tica en la que vf = c y por lo tanto independiente de k).
La figura 4 muestra el módulo de | | analı́tico (8) y numérico (14) en función de k̂. Mientras que ambos
módulos coinciden para valores bajos de k̂, estos son muy distintos para valores altos, observándose un error
que es orden unidad (el error que se comete es del orden del valor que se trata de representar).
En resumen, para k̂ ⇡ ⇡ tenemos ondas mal resueltas, que no se propagan vf = 0 y que no se amortiguan
G ⇡ 1.
Sin embargo, las soluciones de la ecuación de ondas lineal se mueven con velocidad c y la ganancia es 1,
esto entra en contradicción con las soluciones numéricas de alta frecuencia cuya velocidad de propagación,
como hemos dicho, es igual a cero. La única forma de resolver esto serı́a que el esquema numérico amor-
tiguara dichas ondas, las cuales además están mal resueltas, pero G ⇡ 1, luego estas soluciones, que no son
fı́sicas, terminarán contaminando todo el dominio generando problemas de estabilidad y convergencia en las
simulaciones. Estos dos conceptos, estabilidad y convergencia se discutirán más adelante.

3.0 Analitico
Numerico
2.5

2.0
| |

1.5

1.0

0.5

0.0
0 1 2 3

Figure 4: | | vs. k̂ para = x = 1.

Con el objetivo de resolver el problema anterior se plantea añadir cierta viscosidad artificial a las ecua-
ciones tal que las ondas bien resueltas (baja frecuencia o k̂ ⌧ 1) no sean modificadas, mientras que las ondas
de alta frecuencia (k̂ ⇡ ⇡, que están mal resueltas) sean amortiguadas de forma importante. Es decir, vamos
a mantener las grandes escalas (en comparación con x) y vamos a eliminar numéricamente las pequeñas
escalas.

B. Discretización central de segundo orden con viscosidad artificial (AV). Modelo µ2


En este caso se considera una modificación del problema original, (1),

@u @u @2u
+c = µ2 c x 2 . (16)
@t @x @x
Como se puede ver a la ecuación de ondas le hemos añadido un término de viscosidad artificial (o numérico)
(lado derecho de la ecuación).
Utilizando el método de las lı́neas y esquemas de segundo orden para las derivadas espaciales (revisar las
notas de diferencias finitas) se tiene que la ecuación evaluada en el nodo xj queda como,
✓ ◆
@uj c uj+1 2uj + uj 1
+ (uj+1 uj 1 ) = µ2 c x , (17)
@t 2 x x2

8 of 17
donde j es un nodo interno descrito en la figura 3. Introduciendo de nuevo la solución del tipo uj = ûk (t)eikxj
en la ecuación (16) se llega a,

dûk c 1
eikxj = eik x
e ik x
eikxj ûk + µ2 c x eik x
2+e ik x
eikxj ûk .
dt 2 x x2

Utilizando que eik x


e ik x
= 2i sin (k̂), eik x + e ik x = 2 cos (k̂) y que k̂ = k x, se tiene que,

dûk c 2µ2 c ⇣ ⌘
= i sin (k̂) 1 cos (k̂) ûk = ûk . (18)
dt x x

Es decir,
⇣ ⌘
t = i sin (k̂) 2µ2 1 cos (k̂) . (19)

En este caso t tiene parte real e imaginaria. La parte imaginaria es la encargada de la propagación de la
onda, definiendo la velocidad de fase o de propagación. Dicho término se debe al término convectivo de la
ecuación del problema. Por otro lado, la parte real, si es negativa, es la encargada de la amortiguación de
las ondas y se debe al término difusivo.
En la figura 5 se representa el valor de t (19) para distintos valores de los parámetros y µ2 en el
plano R t I t. Como podemos ver, el corte de las curvas t con el eje R t en la zona de valores
negativos se produce cuando k̂ = ⇡. Introduciendo este valor de k̂ en la ecuación (19) se tiene que el valor
de t es igual a 4µ2 (tal y como se muestra en la figura 5 para los tres casos considerados). ¿Pero qué
estamos haciendo exactamente?
Para responder la pregunta anterior necesitaremos superponer la información contenida en la figura 5 con
la que tenı́amos en la figura 1. Supongamos que integramos analı́ticamente en el tiempo nuestro problema
de valor inicial (18). Entonces el módulo del factor de amplificación vendrá dado por la ecuación (7). Pero
con esa ecuación construimos la figura 1, la cuál nos dice que cuanto más nos alejemos del origen (hacia la
izquierda) mayor será la amortiguación.
Nos queda un último ingrediente, mirando la figura 6 tenemos que movernos por las curvas de la figura
(5) es equivalente a cambiar el número de onda yendo de valores pequeños de k̂ a valores grandes conforme
nos movemos sobre dichas curvas hacia la izquierda.
Pues bien, si superponemos la figura 5 con la figura 1 tenemos que conforme avanzamos por las curvas
de la figura 5, de valores pequeños de k̂ a valores más grandes (hacia la izquierda), dicha curva atraviesa
isolı́neas de la figura 1 en las cuales el módulo de la ganancia cada vez es más pequeño, por lo que las ondas
correspondientes a ese punto de la curva se amortiguan cada vez más conforme nos movemos por la curva
hasta llegar al valor máximo de amortiguación cuando k̂ = ⇡.
Otra información importante que se utilizará más adelante es que el valor máximo del módulo de la curva
t en el eje imaginario se obtiene cuando k̂ = ±⇡/2 (ver figura 5). Tal y como puede verse en (19) en
dicho punto | t| = .
Para entender mejor cuáles son las regiones de t en función k̂, la figura 6 muestra el valor de k̂ en
cuatro puntos de la curva t para uno de los casos vistos en la figura 5.
Como puede verse en la ecuación (19) la parte imaginaria coincide con la obtenida en el caso anterior
(esquema central sin AV) por lo que obtenemos la misma velocidad de fase que la descrita en la ecuación
(15), que se corresponde al caso de discretización central de segundo orden sin viscosidad artificial.
La estimación del error cometido en este modelo se obtiene al estudiar (19) en el lı́mite de las ondas bien
resueltas, es decir, aquellas en las que k̂ ⌧ 1, dado que las ondas mal resueltas serán amortiguadas con el
término de viscosidad artificial introducido. Un desarrollo de Taylor de (19) en dicho lı́mite nos da que,
c 2µ2 c µ2 2
(k̂ ⌧ 1) ⇡ i (k̂ k̂ 3 /3! + . . .) (1 1 + k̂ 2 /2) = ick k̂ .
x x x
La primera conclusión de este resultado es que t ⇡ i k̂ µ2 k̂ 2 . Esto implica que la curva t cerca
del origen se introduce en la región estable en los diagramas R t I t, estabilizando la solución (debido
a la parte real negativa). En cuanto al error, si dividimos por k, se obtiene que,

/k ⇡ ic µ2 ck̂ .

9 of 17
4

µ2 = 0.25, =1
3 µ2 = 0.50, =1
µ2 = 0.25, =2
2

tI
0

-1

-2
4µ2
-3
-4 -2 0
R t

Figure 5: Representación de t definido en (19) para distintos valores de µ2 y . En la figura se muestra


el punto done k̂ = ⇡ que coincide con la máxima amortiguación de las ondas.

k̂ = 0(LF )
3

k̂ = ⇡/2
tI

k̂ = ⇡/2
-1

-2

k̂ = ⇡(HF )
-3
-4 -2 0
R t

Figure 6: Dependencia de t con k̂. LF significa baja frecuencia espacial y HF alta frecuencia espacial.
Los valores k̂ = ±⇡/2 se corresponde con los máximos en el eje imaginario de t.

10 of 17
El primer término del lado derecho de la ecuación anterior es el resultado que nos da la integración temporal
analı́tica (ver ecuación (3)). El segundo término representa el término dominante del error, el cuál va con la
primera potencia de k̂, por lo que el esquema es de primer orden, dado que k̂ es lineal con x. Respecto al
módulo de la ganancia analı́tica, ésta viene dada por,
8
< 1 si k̂ = 0 ,
|G| = e R t
=e 2µ2 (1 cos (k̂))
=
: e 4µ2
si k̂ = ⇡ .

donde R es la parte real del autovalor. Como se puede ver las ondas de alta frecuencia espacial son las que
más se amortiguan, mientras que las ondas de baja frecuencia no se amortiguan. O dicho de otra forma, los
ondas mal resueltas se amortiguan el máximo posible, dependiendo dicha amortiguación de los parámetros
y µ2 , mientras que las de baja frecuencia, que las estábamos resolviendo bien, las dejamos tal y como
estaban.

C. Esquema upwinding. Caso particular


Tradicionalmente en lugar de utilizar el esquema anterior (modelo µ2 ) se ha utilizado el esquema upwinding
de primer orden a la hora de discretizar numéricamente la derivada espacial del problema (1). Dicho esquema
se escribe de la siguiente manera,
duj c
= (uj uj 1 ) . (20)
dt x
Comparando (17) con (20) vemos que ambas expresiones son iguales si µ2 = 1/2. Es decir, partiendo de (17)
con µ2 = 1/2 tenemos,
✓ ◆
@uj c 1 uj+1 2uj + uj 1
+ (uj+1 uj 1 ) = c x ,
@t 2 x 2 x2
Enviando el segundo término de la izquierda a la derecha se tiene que,
@uj c c c
= (uj+1 uj 1) + (uj+1 2uj + uj 1) = (uj uj 1) ,
@t 2 x 2 x x
por lo que recuperamos (20). Es decir, el esquema upwinding es un caso particular del esquema basado en
µ2 cuando µ2 = 1/2.
Para entender porqué funciona el esquema (20) lo vamos a comparar con el esquema central sin viscosidad
artificial (12) en el caso en el que k̂ = ⇡. Este caso se representa en la figura 2-derecha. Supongamos que en
dicha figura el valor máximo es igual a 1 y el mı́nimo es -1. Supongamos que el nodo xj de estudio tiene un
valor de uj = 1. En ese caso uj 1 = uj+1 = 1. Ahora aplicamos estos valores en la ecuación (12), entonces
tenemos que,
duj c c
= (uj+1 uj 1 ) = (1 1) = 0 .
dt 2 x 2 x
Es decir, uj no cambia con el tiempo.
Ahora hacemos lo mismo con (20), en ese caso tenemos que,
duj c c c
= (uj uj 1) = ( 1 1) = 2 .
dt x x x
Es decir, uj crece con el tiempo tendiendo a cero. Si uj = 1 y uj 1 = uj+1 = 1 entonces se puede ver que
uj decrece con el tiempo tendiendo a cero. Como se puede ver, mientras el esquema central no amortigua
la onda de alta frecuencia el esquema upwinding si que lo hace. En pocas iteradas dicha onda desaparece.
Esta onda debe desaparecer porqué como podemos ver en este ejemplo, no se propaga, lo cuál es un artificio
numérico que nada tiene que ver con las soluciones del problema de onda lineal.

Como hemos dicho el esquema que acabamos de estudiar (con viscosidad artificial µ2 o upwinding) es
orden uno, lo que significa que numéricamente dicho esquema es muy difusivo (introduce mucha viscosidad
numérica). Es por ello que a continuación se propone un esquema de orden dos, menos difusivo.

11 of 17
D. Discretización central de segundo orden con viscosidad artificial de alto orden. Modelo
µ4
En este caso se considera el problema,

@u @u @4u
+c = µ4 c x3 .
@t @x @x4
Utilizando el método de las lı́neas y un esquema central de segundo orden para las derivadas espaciales se
tiene que,
✓ ◆
@uj c uj+2 4uj+1 + 6uj 4uj 1 + uj+2
+ (uj+1 uj 1 ) = µ4 c x3 .
@t 2 x x4

El cálculo de la derivada cuarta se deja como ejercicio (aunque lo tenéis más o menos resuelto en las
transparencias oficiales de la asignatura). Introduciendo de nuevo la solución del tipo uj = ûk (t)eikxj en la
ecuación anterior se llega a,
dûk c 1
eikxj = eik x
e ik x
eikxj ûk µ4 c x3 eik2 x
4eik x
+6 4e ik x
+e ik2 x
eikxj ûk .
dt 2 x x4
Esto conduce a,
dûk h c µ4 c ⇣ ⌘i
= i sin (k̂) 2 cos (2k̂) 8 cos (k̂) + 6 ûk
dt x x
teniendo en cuenta que
2 2 2
⇣ 2
⌘ 2
cos (2k̂) = cos (k̂) sin (k̂) = cos (k̂) 1 cos (k̂) = 2 cos (k̂) 1

entonces,
dûk h c µ4 c ⇣ 2
⌘i
= i sin (k̂) 4 cos (k̂) 2 8 cos (k̂) + 6 ûk
dt x x

c 4µ4 c ⇣ 2

= i sin (k̂) cos (k̂) 2 cos (k̂) + 1 ûk
x x

c 4µ4 c ⇣ ⌘2
= i sin (k̂) 1 cos (k̂) ûk .
x x
Con lo que,
⇣ ⌘2
t = i sin (k̂) 4µ4 1 cos (k̂) . (21)

En la figura 7 se representa el valor de t (dado por (21)) para distintos valores de los parámetros y µ4 .
La región k̂ = ⇡ coincide con el corte de la curva con el eje R t para valores negativos, este valor se puede
obtener con tal de introducir k̂ = ⇡ en la ecuación (21) lo que da un valor de t = 16µ4 . Por otro lado
y al igual que sucedı́a con el modelo µ2 el máximo valor en el eje imaginario se da cuando |k̂| = ⇡/2 siendo
el valor de t = ± .
La parte imaginaria de (21) coincide con la obtenida en el caso anterior por lo que obtenemos la misma
velocidad de fase que la descrita en la ecuación (15). El módulo de la ganancia viene dado por,
8
2
< 1 si k̂ = 0 ,
|G| = e R t
=e 4µ4 (1 cos (k̂))
: e 16µ4
si k̂ = ⇡ .

De nuevo las altas frecuencias espaciales se amortiguan el máximo, dependiendo dicha amortiguación del
valor de los parámetros µ4 y , mientras que las bajas frecuencias se dejan prácticamente inalteradas. En
cuanto al error, un desarrollo de Taylor de t descrito en la ecuación (21) en k̂ entorno a k̂ = 0 nos da,
⇣ ⌘ ⇣ ⌘2
t (k̂ ⌧ 1) ⇡ i k̂ k̂ 3 /6 + . . . 4µ4 1 1 + k̂ 2 /2 + . . . .

12 of 17
4

µ4 = 0.25, =1
3 µ4 = 0.50, =1
µ4 = 0.25, =2
2

t
I
0

-1

-2
16µ4
-3
-15 -10 -5 0
R t

Figure 7: Representación de t descrito en (21) para distintos valores de µ4 y . En la figura se muestra


el punto donde k̂ = ⇡ que coincide con la máxima amortiguación de las ondas.

Dividiendo la expresión anterior por k se obtiene que,

/k ⇡ ic + ick̂ 2 /6 µ4 ck̂ 3 .

El primer término de la expresión de la derecha se corresponde con el resultado analı́tico (ver expresión (3)).
El segundo término es imaginario y por lo tanto introduce un error de fase el cuál es de segundo orden. El
último término es real y negativo por lo que se introduce un error disipativo de tercer orden. Por lo tanto,
tenemos una onda que se desfasa y que se amortigua siendo el error total del método el mayor de los dos
errores presentes, es decir, orden dos. Estos errores tienden a cero cuando k̂ se hace nulo.

IV. Ejercicio
Dada la ecuación de onda,
@u @u
+c =0, (22)
@t @x
se considera la siguiente expresión de la derivada espacial,
@u uj+1 uj 1 uj+2 uj 2
=↵ + (1 ↵) . (23)
@x j 2 x 4 x
donde ↵ es un parámetro real. Se pide analizar el error cometido en función de ↵ y realizar el análisis de
estabilidad lineal de la ecuación de ondas para ↵ = 1 y ↵ = 4/3.

Solución: Realizando desarrollos de Taylor entorno a uj para recuperar las expresiones en uj+2 , uj+1 ,
uj 1 y uj 2 , se tiene que,
uj+1 uj 1 x2 000
= u0j + u + ...
2 x 3! j

13 of 17
uj+2 uj 2 4 x2 000
= u0j + u + ...
4 x 3! j
Sustituyendo las expresiones anteriores en la ecuación (23) se tiene que,
✓ ◆
@u 0 1 2
= uj + ↵ + (1 ↵) x2 u000 4
j + O( x ) (24)
@x j 6 3

@u
En la expresión anterior el término de la izquierda, , representa la derivada numérica, la cual viene
@x j
dada por la expresión (23). El primer término de la derecha, u0j , es la derivada espacial exacta. El término
✓ ◆
1 2
↵ + (1 ↵) x2 u000 4
j es la parte dominante del error y el último término O( x ) representa correcciones
6 3
de dicho error, las cuales tienden a cero más rápidamente que ✓ el término dominante
◆ del error cuando x
1 2
tiende a cero. Si imponemos que el término entre paréntesis ↵ + (1 ↵) es cero, entonces el esquema
6 3
es de orden 4. Esto sucede para ↵ = 4/3. En caso contrario el esquema es de orden 2. Por lo tanto, de la
expresión (24) se obtiene que:

(a) Para todo ↵ la aproximación es al menos de orden 2 ( es decir, Error ⇠ O( x2 )).


(b) Cuando ↵ = 1/2, el término dominante del error dado por (24) es igual a
1 5
Error↵=1/2 = x2 u000
j ,
6 2
Cuando ↵ = 1 el término dominante del error dado por (24) es igual a
1
Error↵=1 = x2 u000
j
6
En ambos casos la aproximación es del mismo orden (orden 2), sin embargo en el segundo caso el error
(en módulo) es menor. Es decir, |Error↵=1/2 | > |Error↵=1 |, o lo que es lo mismo el caso ↵ = 1 es más
preciso (el error es menor) que el caso ↵ = 1/2.
Nota: Si dos esquemas son de distinto orden, el más preciso (el que comete menor error) es el que
tiene un orden superior. Sin embargo, si dos esquemas son del mismo orden, el más preciso es aquel
que en módulo comete un error menor.
(c) Cuando ↵ = 1, el término dominante del error en (24) es proporcional a u000
j .

(d) Tomando ↵ = 4/3 en (23), y sustituyendo esta expresión en (22) se llega a,

@u 4 uj+1 uj 1 1 uj+2 uj 2
+ c c =0.
@t j 3 2 x 3 4 x
p
Utilizando como soluciones ondas planas con número de onda k, uj = ûk eikxj , siendo i = 1, se
tiene que, ✓ ◆
dûk 4 1
+c i sin (k̂) i sin (2k̂) ûk = 0 .
dt 3 x 6 x
por lo que
4 1
t = i sin (k̂) + i sin (2k̂) .
3 6
donde = c t/ x. El error se estima para valores de k̂ muchos menores que 1. En ese caso se tiene
que, 8
( ) ⇣ ⌘3 ⇣ ⌘5 9
3 5
>
< 2k̂ 2k̂ >
=
4 k̂ k̂ 1 1
t ⇡ i k̂ + + i 2k̂ + ⇡ i k̂ + i k̂ 5 .
3 3! 5! 6 >: 3! 5! >
; 30

Es decir, t ⇠ k̂ + k̂ 5 . Donde es un parámetro real.

14 of 17
(e) Si ↵ = 1, tenemos el esquema de orden dos visto en clase. En ese caso = i(c/ x) sin (k̂). El
módulo de esta expresión se muestra en la lı́nea de puntos de la figura 8. Por otro lado, si ↵ = 4/3,
entonces = i(c/ x) sin (k̂) + 1/6(c/ x) sin (2k̂). El módulo de esta nueva expresión se muestra en
la lı́nea discontinua de la figura 8. Como puede verse esta segunda lı́nea sigue mejor la lı́nea continua
de la figura, la cuál representa el término | | que se obtiene al derivar analı́ticamente las soluciones del
tipo uj = ûk eikxj . Por lo tanto, al aumentar el orden de las derivadas, o reducir el error, las curvas
| | presentan un máximo cada vez mayor y más escorado a la derecha en la figura 8, en su intento de
seguir el resultado obtenido con la derivación analı́tica. A pesar de dicho esfuerzo, las curvas obtenidas
con las derivadas numéricas siempre se hacen cero en k̂ = ⇡ presentando un error de orden unidad en
dicho extremo.
Uno se puede dar cuenta del aumento y desplazamiento del máximo de la función | | cuando se pasa
de ↵ = 1 a ↵ = 4/3 con tal de estudiar el módulo de cuando ↵ = 4/3. En el rango de k̂ 2 [0, ⇡] dicho
módulo es igual a:
4 c 1 c
| |= sin (k̂) sin (2k̂) .
3 x 6 x
Para k̂ = ⇡/2 tenemos que,
@ sin (k̂) @ sin (2k̂)
=0 y >0,
@ k̂ k̂=⇡/2 @ k̂ k̂=⇡/2

por lo que en k̂ = ⇡/2 tenemos la suma de dos funciones, una con crecimiento nulo y 4/3 veces
c/ x sin (k̂) (que es el valor de | | cuando ↵ = 1) y otra nula en k̂ = ⇡/2 y con crecimiento positivo.
Es decir, para k̂ > ⇡/2 debe existir un máximo mayor que el que nos da la función c/ x sin (k̂).

3.0 Analitica
Numerica - Orden 2
2.5 Numerica - Orden 4

2.0
| |

1.5

1.0

0.5

0.0
0 1 2 3

Figure 8: | | vs. k̂ para c = x = 1. Lı́nea continua (valor de | | cuando se considera la derivada analı́tica).
Lı́nea de puntos (valor de | | cuando se considera un esquema de orden dos, con ↵ = 1). Lı́nea discontinua
(valor de | | cuando se considera un esquema de orden cuatro, con ↵ = 4/3).

V. Extensión del análisis de estabilidad a mallas no uniformes


Dada la ecuación de ondas unidimensional (22), definimos el espaciado entre celdas consecutivas de la
siguiente manera,
xj = xj xj 1 , (25)

15 of 17
xj+1 = xj+1 xj . (26)
En general xj+1 6= xj aunque asumiremos que la separación entre nodos consecutivos varia suavemente,
es decir,
xj+1
j = ⇠ O(1) ,
xj
Por otro lado se puede relacionar la solución en los nodos uj+1 y uj 1 con la solución en el nodo uj mediante
sendos desarrollos de Taylor,
1 00 2 1 000 3
uj 1 = uj + u0j (xj 1 xj ) + u (xj 1 xj ) + u (xj 1 xj ) + . . . (27)
2! j 3! j

1 00 2 1 3
uj+1 = uj + u0j (xj+1 uj (xj+1 xj ) + u000
xj ) + (xj+1 xj ) + . . . (28)
2! 3! j
Utilizando las expresiones de xj (ecuación (25)) y xj+1 (ecuación (26)) en las ecuaciones (27) y (28)
respectivamente se tiene que,
1 1
uj 1 = uj xj u0j + x2j u00j x3j u000 4
j + O( xj ) (29)
2! 3!

1 1
uj+1 = uj + xj+1 u0j +
x2j+1 u00j + x3j+1 u000 4
j + O( xj+1 ) (30)
2! 3!
A continuación se proponen 3 modelos para la derivada espacial:
@u uj uj 1
= . (31)
@x j xj

@u uj+1 uj 1
= . (32)
@x j 2 xj
@u uj+1 uj 1
= . (33)
@x j xj+1 + xj
Utilizando la expresión (29) en la ecuación (31) se obtiene que,

@u xj 00 x2j 000
= u0j u + u + ... (34)
@x j 2! j 6 j
Utilizando las expresiones (29) y (30) en la expresión (32) se obtiene que,

@u xj+1 + xj 0 x2j+1 x2j 00


= uj + uj + . . .
@x j 2 xj 4 xj (35)
1 1
= ( j + 1) u0j + ( j + 1) ( j 1) xj u00j + O( x2j )
2 4
Para finalizar, utilizando las expresiones (29) y (30) en la expresión (33) se obtiene que,

@u xj+1 + xj 0 1 x2j+1 x2j 00


= uj + u + ...
@x j xj+1 + xj 2 xj+1 + xj j (36)
1
= u0j + ( j 1) xj u00j + O( x2j+1 )
2
En las expresiones (35) y (36) hemos utilizado que a2 b2 = (a b)(a + b) en el término que multiplica la
derivada segunda (u00j ). Por lo tanto, los modelos (31), (32) y (33) los hemos reescrito respectivamente como
(34), (35) y (36). A continuación respondemos algunas preguntas:
(a) El modelo (31) es consistente. Para ello basta tomar el lı́mite cuando xj tiende a cero en la expresión
@u
(34) para darse cuenta de que en ese caso la derivada numérica converge a la derivada analı́tica,
@x j
u0j .

16 of 17
(b) El modelo (32) es una aproximación de orden cero. Para ello basta con tomar el lı́mite cuando xj
tendiendo a cero en (35).
✓ ◆
@u 1 1 1
lim = lim ( j + 1) u0j + ( j + 1) ( j 1) xj u00j + . . . = ( j + 1) u0j
xj !0 @x j xj !0 2 4 2

1
Aunque j = O(1), en general ( j + 1) 6= 1 por lo que no conseguimos recuperar la derivada en el
2
lı́mite cuando xj ! 0. Por lo tanto el error es O(1) = O( x0j ). Es decir, el esquema no es consistente
(o lo que es equivalente, es orden cero).
(c) El modelo (33) es una aproximación de primer orden. Procedemos de igual forma que en el apartado
anterior pero esta vez utilizando el modelo dado por la expresión (36),
✓ ◆
@u 1
lim = lim u0j + ( j 1) xj u00j + ... = u0j
xj !0 @x j xj !0 2
El esquema es consistente. En cuanto al error, éste viene dado por el término dominante en la expresión
anterior,
1
Error ⇠ ( j 1) xj u00j
2
por lo que el esquema es orden uno.
n
(d) Si j = 1 + ↵ ( xj /L) entonces el modelo (32) es una aproximación de primer orden para n 1. En
este caso sustituyendo j en la expresión (35) se tiene que,

@u 1 1 n
= ( j + 1) u0j + O( xj ) + . . . = u0j + ↵ ( xj /L) u0j + O( xj )
@x j 2 2

Es decir, si n = 1 tenemos un error ⇠ O( xj ), por lo que el esquema es orden 1.


n
(e) Si j = 1 + ↵ ( xj /L) entonces el modelo (33) es una aproximación de segundo orden para n 1.
En este caso sustituyendo j en la expresión (36) se tiene que,

@u 1 n
= u0j + ↵ ( xj /L) xj u00j + . . .
@x j 2

Es decir, para n = 1 el error ⇠ O( x2j ), por lo que el esquema es de segundo orden.

17 of 17

También podría gustarte