Professional Documents
Culture Documents
on de la ecuaci
on de onda como un problema de valores iniciales usando
diferencias finitas
F. S. Guzm
an1
1
2
I.
A.
Ingredientes de la aproximaci
on discreta de EDPs en el continuo
Fronteras
Fronteras
Datos
iniciales
Datos
iniciales
t=0
x
Dominio espacial
Dominio espacial
FIG. 1: En la primera figura se muestra el dominio de un problema de valores iniciales con condiciones de frontera y en la
segunda la versi
on discreta del dominio, que define una malla sobre la que quedan definidas las funciones involucradas en la
EDP.
El criterio para determinar una discretizacion queda al arbitrio de quien resuelve un problema, o de las propiedades
de la ecuaci
on diferencial que se desea resolver. Para la discretizacion uniformemente espaciada en nuestro caso, se
definen las resoluciones espacial x = xj+1 xj y temporal t = tn+1 tn .
Segundo ingrediente. Una vez definido el dominio discreto de la EDP, es necesario aproximar la ecuaci
on diferencial,
es decir, los operadores diferenciales que aparecen en dicha ecuaci
on usando solamente los valores de las funciones
involucradas que estan definidos en la malla. Una condicion que se demanda es que dichas funciones sean analticas, lo
cual implica que las funciones involucradas tienen definida una expansi
on en serie de Taylor, lo cual a su vez permite
construir aproximaciones de los operadores diferenciales.
Derivada de primer orden. Sea fjn una funci
on como la definida antes con n fijo, entonces es posible calcular valores
aproximados de la funci
on en los puntos adyacentes a partir de expansiones en serie de Taylor a segundo orden de f
en torno a fjn :
x2
f (xj ) + O(x3 )
2
f (xj ) = f (xj )
(1)
x2
f (xj+1 ) = f (xj ) + xf (xj ) +
f (xj ) + O(x3 )
2
donde la prima denota derivada con respecto a x. A partir de estas aproximaciones es posible construir diferentes
operadores diferenciales para las derivadas de fjn . Por ejemplo, sumando la primera y la tercera expresiones, y
dividiendo por x, se obtiene la expresion para la primera derivada en el punto xj con un error de segundo orden:
f (xj ) =
f (xj+1 ) f (xj1 )
+ O(x2 ).
2x
(2)
n
n
Conviene observar que para calcular esta aproximacion es necesario conocer los valores fi+1
y fi1
, por lo que esta
aproximacion se llama centrada. Un comentario adicional es justo aqu: la expresion (2) es la definicion de derivada
en c
alculo de una variable en el lmite cuando x 0.
Es posible calcular la derivada de primer orden usando aproximaciones no centradas, desbalanceadas, usualmente
llamadas upwind. Para tal efecto basta considerar las expansiones sigueintes
f (xj ) = f (xj )
x2
f (xj ) + O(x3 )
2
4x2
f (xj+2 ) = f (xj ) + 2xf (xj ) +
f (xj ) + O(x3 )
2
(3)
(4)
(5)
Para calcular operadores con un orden de aproximacion mayor basta con generalizar el procedimeinto ilustrado
anteriormente. Supongase que se desea calcular la derivada de primer orden con un error de cuarto orden, entonces
basta con considerar el siguiente conjunto de aproximaciones
4x2
8x3
16x4
f (xj )
f (xj ) +
f (xj ) + O(x5 ),
2
6
24
x3
x4
x2
f (xj )
f (xj ) +
f (xj ) + O(x5 ),
f (xj ) xf (xj ) +
2
6
24
f (xj )
x3
x4
x2
f (xj ) +
f (xj ) +
f (xj ) + O(x5 ),
f (xj ) + xf (xj ) +
2
6
24
4x2
8x3
16x4
f (xj ) + 2xf (xj ) +
f (xj ) +
f (xj ) +
f (xj ) + O(x5 ).
2
6
24
f (xj ) =
1
[f (xj2 ) 8f (xj1 ) + 8f (xj+1 ) f (xj+2 )],
12x
(6)
(7)
que resulta ser una aproximacion centrada. As pues, el algoritmo para construir aproximaciones en diferencias finitas
de operadores diferenciales es el siguiente:
i) Hacer la expansi
on en serie de Taylor en puntos cercanos a aquel donde se quiere evaluar la derivada de f .
ii) Encontrar una combinaci
on de las expansiones escritas tal que se cancelan las derivadas de orden superior e
inferior a la derivada del orden deseado.
Una vez conocido el procedimiento para calcular aproximaciones de derivadas de funciones, basta con mencionar los
coeficientes de las combinaciones lineales necesarias para calcular los operadores diferenciales de primero y segundo
orden, centrados y desbalanceados con distintos ordenes de precisi
on. En la Tabla I se muestran los coeficientes de las
funciones evaluadas en los distintos puntos vecinos a xj en las expresiones para el c
alculo de las derivadas de primer
orden con precisi
on de segundo orden y los coeficientes cuando la precisi
on es de cuarto orden. En la Tabla II aquellos
coeficientes para las derivadas de segundo orden.
Segundo orden
Cuarto orden
Los desarrollos hasta el momento en este captulo ilustran las aproximaciones en diferencias finitas de los ingredientes
de una EDP. El hecho de haber elegido un dominio espaciotempral, permite considerar directamente la discretizacion
de la ecuaci
on de onda:
tt xx = 0,
(8)
Segundo orden
Cuarto orden
-1
10
16
-1
-4
14
-6
-154 214 -156
1
61
-10
1
on (7) ejemplifica el uso de esta tabla.
cuarto orden de precisi
on van como f = 12x2 [...] + O(x ). La expresi
n+1
2nj + jn1
nj+1 2nj + nj1
j
= O(x2 , t2 ),
(t)2
(x)2
(9)
para todo j = 0, 1, ..., N y n = 0, 1, ..., Nt . En este punto es preciso notar que la aproximacion con diferencias finitas
ha introducido un error, es decir, el lado derecho de la ecuaci
on no es necesariamente cero, sino que es del orden
O(x2 , t2 ). La certeza de que esto ocurre determina el tercer ingrediente.
Tercer ingrediente de la aproximacion en diferencias finitas de una EDP. Al usar este metodo numerico es necesario
tener en mente que la aproximacion en DF provee de una versi
on aproximada de la ecuaci
on en el continuo y que la
ecuaci
on que se resolver
a en adelante es solamente una aproximaci
on de la original, es decir, la que es definida en el
dominio continuo. Es preciso entonces establecer criterios que indiquen que cuando se resuelve la versi
on discreta de
una EDP, al menos en el lmite continuo se est
a calculando la solucion correcta.
B.
Convergencia
Hemos mostrado que las aproximaciones de los operadores diferenciales son solamente una aproximacion con un
error asociado de cierto orden (segundo y cuarto orden en los ejemplos mostrados en las tablas I y II). Es de
esperar que cuanto mayor sea la resolucion con que se construya la malla, cuanto menor sera el error con que se
estan aproximando los operadores diferenciales y por tanto la aproximacion en diferencias finitas de una ecuaci
on
diferencial es mas precisa. Sin embargo, es de gran importancia determinar el ritmo al cual converge una solucion
a una solucion exacta conocida de la ecuaci
on, o una solucion numerica en el lmite continuo de una ecuaci
on cuya
solucion es desconocida.
La convergencia es la noci
on que relaciona el ritmo al cual decrece el error en terminos del orden de aproximacion
en diferencias finitas de los operadores en una ecuaci
on diferencial. Es decir, no basta con saber que si la resolucion
aumenta el error disminuye, sino que es necesario saber si el error decrece al ritmo esperado en terminos de la
resolucion.
Para ilustrar el concepto de convergencia en diferencias finitas considerese una funci
on fl que es solucion numerica
de una EDP a un tiempo dado, y que ha sido construida bajo la discretizacion de dicha ecuaci
on con una aproximacion
de segundo orden. Suponinendo ademas que se conoce la solucion exacta f0 (x), el resultado numerico puede escribirse
en la forma f (x) = f0 (x) + E(x)(x2 ) + O(x3 ), donde E denota un coeficiente del error, que ha de ser de segundo
orden. Dado que se conoce la solucion exacta, es posible conocer el error con que se calcula la solucion numerica
usando distintos valores de x. Sean f1 y f2 dos soluciones numericas calculadas usando las resoluciones x y x/2
respectivamente. La raz
on entre los errores es la siguiente:
f1 f0
x2 + O(x3 )
= 1
= 4 + O(x3 ).
2
3
f2 f0
4 x + O(x )
(10)
6
es cuatro, se dice que la solucion converge con segundo orden, es decir, cumple con lo predicho por la teora en (10).
De manera analoga, es posible mostrar que si la aproximaci
on es de cuarto orden, el factor sera 16.
Por ejemplo, para la ecuaci
on de onda (9) la solucion exacta es conocida, y bastara calcular la solucion numerica
con dos resoluciones distintas para determinar si los algoritmos utilizados producen una solucion que converge correctamente. Podra parecer que lo mencionado en estos p
arrafos es elemental, pero el siguiente ejemplo ilustra la
inportancia del factor de convergencia: sop
ongase que se discretiza el dominio x [0, 1] con la opcion (i) x = 0.1
y con x = 0.05 para estudiar el factor de convergencia en el caso de una ED elemental, es muy probable que la
solucion numerica no tenga factor de convergencia cuatro, pero es probable que lo tendra cuando se usan resoluciones
(ii) x = 0.01 y x = 0.005; si este es el caso, se dice que los c
alculos en la opcion (ii) han sido ejecutados en el
regimen de convergencia, mientras la opci
on (i) no aporta condiciones para que se obtenga la convergencia deseada.
Regularmente los c
alculos que no convergen con el orden deseado se desechan (o debieran desecharse), mientras que
aquellos realizados en el regimen de convergencia son aceptables. Este ejemplo ilustra claramente el hecho de que no
toda soluci
on numerica realizada con la aproximaci
on de DF es aceptable, y que ning
un c
alculo que no converja debe
gozar de credibilidad.
El caso en que se desconoce la solucion exacta es posible hacer un estudio de convergencia de tipo Cauchy usando
los c
alculos numericos resultado de usar tres distintas resoluciones (no dos como en el caso anterior). Si ademas de
f1 y f2 definidas antes se calcula la solucion f3 de la EDP con resolucion x/4 se puede calcular la raz
on siguiente:
f1 f2
=
f2 f3
=
x2 41 x2 + O(x3 )
1
1
2
2
3
4 x 16 x + O(x )
x2 + O(x3 )
= 4 + O(x3 ),
+ O(x3 )
1
2
4 x
(11)
donde una vez mas el resultado se llama factor de convergencia, y una vez mas resulta ser cuatro cuando la aproximaci
on de la EDP es de segundo orden. De igual modo, si la aproximacion fuera de cuarto orden el factor sera 16 en
lugar de 4.
Finalmente, es u
til saber que si cuando el factor de convergencia es menor que cuatro, es necesario aceptar varias
posibilidades: (a) hay un error en la implementacion del programa, (b) los algoritmos no permiten la convergencia en
el rango x elegido, es decir, no se han hecho los c
alculos en el regimen de convergencia.
II.
(12)
n+1
j
t
x
2
(13)
j,n+1
11
00
00
11
00
11
j1,n
j,n
j+1,n
j,n1
FIG. 2: Molecula correspondiente a la construcci
on de datos al tiempo tn+1 a partir de datos en los tiempos tn y tn1 seg
un
la ecuaci
on (13).
funci
on de onda en todos los puntos del espacio para tn y tn1 , y en especial los valores de la funci
on en las posiciones
n
(t , x1 ) y (tn , xN ) que no est
an definidos cuando el punto negro se localiza en (tn+1 , x0 ) y (tn+1 , xN ).
Afortunadamente los valores n+1
y n+1
on de frontera de igual
0
N +1 pueden ser calculados imponiendo una condici
modo que se hizo para la construcci
on de la solucion exacta.
Finalmente, la expresion (13) permite la evoluci
on de valores de la funci
on de onda en tiempos previos a tn+1 , y
ademas indica que para iniciar la evoluci
on es necesario conocer los valores de la funci
on en dos tiempos previos. En
este punto es cuando es necesario llenar el dominio espacial con datos iniciales en dos niveles de tiempo.
Estabilidad del algoritmo. Existe una restriccion del algoritmo descrito por (13) respecto a la estabilidad de la
solucion que se est
a calculando. Es evidente de dicha expresion que un valor del factor t/x mayor que uno
implicara que la amplitud de la funci
on de onda en cada punto crecera al tiempo tn+1 con respecto al valor que
n
tena en el tiempo t . Al factor t/x se le conoce como factor de Courant Friedrichs Lewy (CFL). Para que la
discretizacion (13) sea estable es necesario que el factor CFL sea menor que 1 (ver el apendice para una demostracion
de esta condicion).
on de segundo orden es necesario proveer el valor inicial de
Datos iniciales. Cuando se trata de resolver una ecuaci
la funci
on y de su primera derivada temporal. De manera equivalente, basta con proveer el valor inicial de la funci
on
en dos niveles de tiempo. En el caso de la ecuaci
on de onda cuya evoluci
on est
a dictada por (13), dado que son
necesarios los datos en dos niveles de tiempo antes de proceder a llevar a cabo la evoluci
on, diremos que los datos
iniciales estar
an definidos en los niveles de tiempo t0 y un hipotetico t1 , con el fin de que se obtenga en el primer
paso de tiempo el valor de en el tiempo t1 .
Especficamente se elige aqu un perfil gaussiano en t = t0 = 0, y dado que se conoce la solucion exacta de la
ecuaci
on de onda, se tiene que
2
0j = Aexj /
2
2
2
2
1
1
1
= Ae(xj +t) / + Ae(xj t) /
j
2
2
(14)
para j = 0, 1, ...N .
Condici
ones de frontera periodicas. en este caso, el dominio es tal que el extremo derecho del dominio espacial se
identifica con el extremo izquierdo, o bien, que la topologa del dominio espacial pasa de ser un trozo de la recta real
en la circunferencia S 1 , de permetro xN x0 . En la Figura 3 se ilustra esta transformaci
on cuando se ha considerado
el dominio discreto.
Condicion de onda saliente. Se trata de una condicion que se impone para modelar fronteras abiertas que permiten
el flujo hacia fuera de las soluciones pero no hacia dentro. En el caso de la ecuaci
on de onda, se sabe que la solucion
general presenta una solucion general del tipo (t, x) = f (x + t) + g(x t) para f y g arbitrarias, cada una de las
cuales corresponde al desplazamiento hacia la izquierda y a la derecha respectivamente de los pulsos iniciales. Tales
funciones f, g son soluciones de las ecuaciones
(t x ) = 0
(t + x ) = 0
(15)
(16)
11
00
00
11
00
11
0
N2
11
00
00
11
00
11
1
N2
N1
11
00
00
11
11
00
00
11
N1
N
2
1
FIG. 3: Identificaci
on del dominio espacial que es parte de la recta real con una circunferencia. El mecanismo consiste en
n
igualar los valores de en ambos extremos del dominio n
0 = Nx para todo n.
= O(x2 , t2 ),
2t
2x
n+1
n1
n+1 4n+1
N
4nN + 3n+1
N 1 + 3N
N
+ N 2
= O(x2 , t2 )
2t
2x
donde ademas se ha usado la discretizacion para la derivada temporal que solamente utiliza valores de 0 y N a
los tiempos tn y tn1 . Las moleculas involcradas en estas aproximaciones aparecen en la Figura 4. La informacion
conocida en estas expresiones es la siguiente: todos los valores de en los tiempos tn y tn1 , y los puntos internos de la
malla al tiempo tn+1 que ya han sido calculados a traves de (13), de modo que los valores inc
ognita son aquellos valores
de marcados con puntos negros en la Figura 4. Afortunadaamente es posible resolver las expresiones anteriores para
estos valores desconocidos de la funci
on de onda, lo que da como resultado:
n+1
=
0
n+1
=
N
n+1
t
x (2
n+1
t
x (N 2
+ 4n+1
) + 4n0 0n1
1
,
t
)
3(1 + x
n1
n
+ 4n+1
N 1 ) + 4N N
3(1 +
t
x )
(17)
.
(18)
Usando estas expresiones para los valores del campo en los bordes del dominio debiera implicar el resultado correcto.
En la Figura 5 se muestra la solucion calculada con estas condiciones de frontera.
Error y convergencia. El error de la solucion numerica con respecto a la solucion exacta queda definido en cada
punto del dominio espacial como
ej = num
ex
j
j .
(19)
En la Figura 6 se muestra el error caculado mediante el uso de (13,17,18) y la solucion exacta para el caso de
condiciones de frontera de onda saliente. Para saber si los c
alculos convergen a la solucion exacta, basta con aprovechar
el hecho de que en el lmite continuo (o de resolucion infinita) el error es cero. Entonces se usa la expresion (10) y se
ejecuta el c
odigo con dos resoluciones distintas para mostrar la convergencia de segundo orden del error a cero.
9
0,n+1
11
00
00
11
00
11
1,n+1
2,n+1
N2,n+1
N1,n+1
N,n+1
11
00
00
11
00
11
0,n
N,n
0,n1
N,n1
Condiciones peridicas
0.5
0.5
0
0.5
Fronteras abiertas
1
1.5
0.5
2
2.5
3 1
0.5
0.5
1
1.5 1
0.5
0.5
FIG. 5: Soluci
on numerica de la ecuaci
on de onda que usa la discretizaci
on (13). En el lado izquierdo se muestra el caso que
usa condiciones peri
odicas, y es evidente que la se
nal que sale de un lado del dominio entra por el otro ad infinitum. En el lado
derecho se muestra el resultado de aplicar las condiciones de frontera de onda saliente (15,16), y es de notar que la se
nal sale
por las fronteras al tiempo t 1, que corresponde al caso de que la onda viaja a velocidad 1.
de modo que dichas funciones escalares del error se pueden monitorear como funciones del tiempo. Como ejemplo,
en la Figura 7 se muestran las normas L1 (e) y L2 (e) para las simulaciones mencionadas. Queda manifiesto que esta
funci
on escalar tiene convergencia de segundo orden a cero.
El monitoreo de la precisi
on a traves de funciones escalares del error es un procedimiento muy eficiente, pues permite
determinar si las ejecuciones y la implementacion de los programas es correcta, sin necesidad de revisar directamente
las soluciones numericas en cada paso de tiempo.
III.
10
0.0003
t=0.025
t=0.25
t=0.5
0.0002
0.0001
0
-0.0001
-0.0002
-0.0003
0.0003
t=0.75
t=1.0
t=1.25
0.0002
0.0001
0
-0.0001
-0.0002
-0.0003
-1
1-1
1-1
0.0001
0.00016
9e-05
x=0.002
x=0.001
x=0.001 multiplicado por 4
8e-05
0.00014
x=0.002
x=0.001
x=0.001 multiplicado por 4
0.00012
7e-05
0.0001
L2(e)
L1(e)
6e-05
5e-05
4e-05
8e-05
6e-05
3e-05
4e-05
2e-05
2e-05
1e-05
0
0
0
0.5
1.5
2.5
0.5
1.5
2.5
La ecuaci
on de onda est
a definida en el espacio de Minkowski en 1+1 dimensiones, cuyo elemento de lnea es
ds2 = dt2 + d
x2 . Aplicando la tranformacion general de coordenadas dt = dt y dx = d
x dt, donde juega el
papel de etiqueta entre los valores del tiempo considerados y es una velocidad a la que se desplaza la coordenada
x. La metrica resultante en forma matricial es la siguiente:
g =
g
(2 + 2 )
1/2
/2
/2 (1 2 /2 )
(20)
!
(21)
11
donde > 0 es la funci
on lapso y es la u
nica componente del shift, adema
s , = t, x. En general el operador
DAlambertiano para un espacio-tiempo dado esta definido por 2 = 1g [ gg ] = 0 donde g = det(g ).
1
= [ gg ]
g
1
1
= t [g t ] + x [g x ]
1
1
tt
= t [g t + g tx x ] + x [g xt t + g xx x ]
2
1
= t [ t + x ] + x [ t + (1 2 )x ].
(22)
Observese que cuando = 1 y = 0 se recupera la ecuaci
on de onda sencilla (8). Es deseable escribir un sistema de
EDPs que contengan derivadas solamente de primer orden. La raz
on es que se simplifica el estudio de las propiedades
del sistema de ecuaciones con la idea de construir una solucion global a partir de una evoluci
on de Cauchy, as que es
conveniente determinar la hiperbolicidad del sistema.
La expresion anterior sugiere la definci
on de dos nuevas variables := x y := (t x )/. Observese que
es el argumento de la derivada temporal de primer orden en (22). El objetivo es separar la ecuaci
on de onda en un
sistema de dos ecuaciones de primer orden para estas dos nuevas variables. La primera de estas ecuaciones es obvia
de (22):
t = x ( + ).
(23)
(24)
con la constriccion x = .
A.
An
alisis caracterstico
(26)
12
A=
(27)
(28)
Dado que los dos valores propios son distintos y reales, el sistema es estrctamente hiperb
olico [6], ademas los vectores
propios forman un sistema completo de vectores, lo que garantiza que se tiene un problema de valores iniciales bien
planteado [6]. En el caso = 0 y = 1 (la ecuaci
on de onda usual) se obtienen las velocidades caractersticas = 1,
lo que implica que las trayectorias de los datos iniciales son rectas con pendientes 1 que definen el cono x = x0 t,
cuyas rectas corresponden a las caractersticas de la solucion, es decir, aquellas curvas (rectas en este caso) a lo largo
de las cuales el valor de la solucion es el mismo que el valor al tiempo inicial.
Los vectores propios correspondientes a son u1 = (1, 1)T y u2 = (1, 1)T . La matriz que diagonaliza A es por
tanto
P=
1 1
1 1
1
=
2
1 1
1 1
(29)
(30)
donde
w = P1 u =
1
( , + )T = (R, L)T
2
(31)
son las variables caractersticas. De este modo, las dos ecuaciones (23) y (24) se desacoplan, y la dinamica del campo
escalar ha quedado descompuesta en un modo que se mueve a la derecha (R = 1/2( )) y otro que se mueve a
la izquierda (L = 1/2( + )). La ecuaci
on (31) desacopla entonces el sistema en un par de ecuaciones de adveccion
para las variables R y L.
B.
Datos iniciales
En la versi
on de primer orden de la ecuaci
on de onda es necesario conocer al tiempo inicial los valores de (0, x)
y (0, x). Esto es equivalente a demandar valores para y su derivada temporal al tiempo inicial. Con el fin de
enfocarnos en la evoluci
on de datos iniciales es posible elegir simplemente datos simetricos en el tiempo para un perfil
gaussiano:
2
(0, x) = Ae(xx0 ) /
(x x0 )
(0, x),
(0, x) = 2
2
(0, x) = 0.
(32)
13
mostrar la descomposicion de los datos iniciales en dos gaussianas. De hecho para el caso usual ( = 1, = 0) y los
datos iniciales (32) se tendra
(0, x) =
2
2
1 ([x+t]x0 )2 /2
1
Ae
|t=0 + Ae([xt]x0) / |t=0 ,
2
2
(33)
que involucra en realidad dos pulsos gaussianos superpuestos que al tiempo t = 0 aparecen como uno solo.
C.
La evoluci
on de datos consiste en el c
alculo de la funci
on fjn+1 a partir de datos en los niveles de tiempo previos.
Para ilustrarlo considerese la ecuaci
on (23) con = 0 y = 1. En este caso particular la discretizacion en el punto
(tn , xj ) es
n
n
jn+1 jn
j+1
j1
t
2x
t
n
jn+1 = jn +
( n j1
),
2x j+1
(34)
Condiciones de frontera
14
j,n+1
j1,n
j+1,n
j,n
FIG. 8: Ilustraci
on de la molecula usada en la construcci
on de la soluci
on al tiempo n + 1. Los crculos llenos indican el punto
donde se desea calcular el valor de una variable, mientras que los vacos indican la posici
on de los puntos donde son conocidas
las funciones involucradas.
la ecuaci
on de onda se consideran nuevamente las periodicas y las de onda saliente. En el caso de las condiciones
periodicas se procede de manera analoga a la implenetada en el capulo anterior, es decir se cambia la topologa del
dominio finito a la de S 1 . Sin embargo, en el caso de las condiciones de onda saliente, el operador de onda general
usado aqu no se factoriza tan facilmente como se hizo en (15,16), pues ahora se trata de coordenadas generales. Sin
embargo, la descomposicion en modos derecho e izquierdo de la solucion permiten implementar de manera elegante
las condiciones de frontera.
La condicion en la frontera izquierda consiste en la eliminacion del modo que viaja hacia la derecha (R = 0), lo
que significa que no se permite la reflecci
on hacia dentro del dominio, y la condicion en la frontera derecha consiste
en eliminar el modo que viaja a la izquierda (L = 0). Explcitamente, en la frontera izquierda x0 se exige
1 n
( + 0n ) = L0
2 0
1 n
( 0n ) = R0 = 0,
2 0
(35)
n
n
cuya solucion es 0n = 0n = L. De modo equivalente, la condicion en la frontera derecha es N
= RN y N
= RN .
El problema se reduce a calcular L0 , R0 , LN y RN . Para conocer estos valores basta con hacer una extrapolaci
on
usando los puntos internos de la malla.
E.
Resultados
0.5
0.5
0.5
1
1.5 1
0.5
0.5
0.5
1 1
0.5
0.5
FIG. 9: Soluci
on de la ecuaci
on de onda para dos casos. (Izquierda) La ecuaci
on de onda usual; la gaussiana inicial se parte
en dos gaussianas de amplitud igual a la mitad de la original y mismo ancho, cada una de las cuales viaja hacia las fronteras.
(Derecha) La ecuaci
on de onda con = 1, lo que implica que las coordenadas viajan a la velocidad de propagaci
on de uno de
los pulsos.
15
Con todos estos conceptos en mente: datos iniciales, un algoritmo de evoluci
on para las funciones de un tiempo al
siguiente, condiciones de frontera y un c
odigo que contiene todos estos ingredientes, es posible construir soluciones de
la ecuaci
on de onda bajo distintas condiciones sobre las coordenadas. Aqu, se presentan algunos ejemplos ilustrativos.
Nuevamente, se elige el dominio [1, 1] [0, t).
En la Figura 9 se presentan dos casos con = 1. En el primer caso = 0, lo que corresponde al caso usual de
la ecuaci
on de onda. De hecho, puede verse que la gaussiana inicial se divide en dos gaussianas peque
nas que llegan
a las fronteras al mismo tiempo (alrededor t 1). Sin embargo, en el segundo caso = 1, esto es, las coordenadas
se mueven hacia x > 0 a la velocidad de propagacion de la onda; entonces el sistema de coordenadas sigue a uno de
los pulsos, lo que en la figura se traduce en un pulso centrado permanentemente en x = 0; el otro pulso alcanza la
frontera en la mitad del tiempo que toma en el caso anterior.
Un ejemplo que ilustra el papel del lapso es el mostrado en la Figura 10. En tal caso el lapso tiene el perfil de
una funci
on escal
on suavizada tal que el lapso va de 0.5 a 1.0. El efecto que produce esta eleccion es que -siendo 2
el coeficiente de dt2 - determina que tan separados se encuentran los niveles de tiempo. Por tanto, la evoluci
on en la
region donde = 0.5 (x < 0) es mas lenta que en la region donde = 1 (x > 0). De hecho, en el primer caso al
pulso le toma un tiempo 2 para llegar a la frontera, mientras que en el segundo caso el pulso llega a la frontera
en un tiempo 1. Este tipo de comportamiento es muy u
til en escenarios de Relatividad General. Por ejemplo,
cuando se forma un hoyo negro debido al colapso de alg
un tipo de materia, lo que se encuentra es que los invariantes
geometricos cominezan a diverger en la regi
on de la singularidad, y por tanto una posibilidad para suavizar los efectos
de gradientes grandes de funciones consiste en elegir una condicion de foliacion que comprime la separacion temporal
entre un tiempo dado y el siguiente en la regi
on cercana al origen demandando que 0 en esta region, de modo
que la evoluci
on tiende a congelarse ah.
1
0.5
0
0
0.5
1
1.5
2
2.5 1
0.5
0.5
Como ejemplo final, en la Figura 11 se presenta la solucion para el caso = 1 y = x. En este caso las coordenadas
viajan a la velocidad de la onda en las fronteras x = 1, porque en esos dos puntos = 1. Esto implica que las
se
nales nunca llegar
an a las fronteras numericas. El efecto es que los pulsos en estas coordenadas se comprimen
conforme se acercan a las fronteras. Por una parte esta es una ventaja, porque no es necesario imponer condiciones
de frontera (las se
nales nunca llegar
an a las fronteras), y por otra parte, los pulsos est
an siendo resueltos con cada vez
menos puntos del dominio espacial, lo que afecta la precisi
on de los c
alculos. En cualquier caso, este ejemplo ilustra
las posibilidades que se tienen cuando se puede elegir un lapso y un shift.
IV.
COMENTARIOS FINALES
Un punto importante relacionado con los algoritmos es que en los ejemplos desarrollados en este manuscrito, la
resolucion en todos los casos es uniforme. Esta condicion es suficiente para resolver los casos descritos, pero no
necesariamente lo es en casos mas generales. La raz
on es que cuando las ecuaciones involucran tres dimensiones
espaciales la memoria de la computadora se convierte en una limitante. Es entonces necesario optimizarla y hacer
16
1
0.5
0
0
0.5
1
1.5
0.5
2 1
0.5
0.003
t=0.025
t=0.5
t=1.0
0.002
0.001
0
-0.001
-0.002
-0.003
0.03
t=1.5
t=2.0
t=2.5
0.02
0.01
0
-0.01
-0.02
-0.03
-1
1-1
1-1
uso de algoritmos de refinamiento de mallas que permiten asignar memoria solamente en aquellas regiones donde los
gradientes de las funciones involucradas en las EDPs son grandes.
El elemento mas importante en los c
aculos numericos basados en la aproximacion en diferencias finitas es la convergencia a una solucion en el continuo. Sin un criterio de convergencia basta para desechar los resultados de cualquier
c
alculo.
Respecto a la solucion de un sistema de primer orden, es importante tener en cuenta la nocion de velocidades
caractersticas y modos caractersticos de propagacion. Estos permiten enetnder si un problema de valores iniciales
es bien planteado o no, ademas de la utilidad que tienen para imponer condiciones de frontera correctamente.
En este manuscrito se ha presentado tanto la manera mas simple de resolver la ecuaci
on de onda usando diferencias
17
finitas, como la mas completa que involucra el analisis caracterstico.
Acknowledgments
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
http://www.ifm.umich.mx/guzman/Grupo/grupo.html
M. Alcubierre, Introduction to 3+1 Numerical Relativity, Oxford University Press, 2008.
R. Becerril, F. S. Guzm
an, A. Rend
on-Romero, S. Valdez-Alvarado, Rev. Mex. Fis. E 54 (2008) 120-132.
E. F. Toro, Riemann Solvers and Numerical Methods for Fluid Dynamics, Springer 1999.
J. W. Thomas, Numerical Partial Differential Equations, Texts in Applied Mathematics. Springer, 1995.
B. Gustafsson, H-O. Kreiss, J. Oliger, Time Dependent Problems and Difference Methods. Wiley-Interscience, 1996.
R. J. LeVeque, in Numerical methods for conservation laws. Birkhauser, Basel (1992).
W. H. Press, S. A. Teukolsky, W. T. Watterling and B. P. Flannery, Numerical Recipes in Fortran. Cambridge University
Press, 1992.
[9] C. W. Gear, Numerical Initial Value Problems in Ordinary Differential Equations, Prentice-Hall, EUA, 1971.
V.
APENDICE
A
Aqu se presenta una prueba de estabilidad para el esquema de discretizacion (13) y las restricciones del factor
CFL.
En esta prueba se estudia el crecimiento del error con el tiempo. As a t = 0 en x [0, N x] se considera que
el error en cada punto del dominio espacial es ej = e(jx). Debido a que la aproximacion en diferencias finitas
(13) es lineal bastara con calcular la propagacion del error para un solo j. Se propone la expresion para el error con
propagacion exponencial del error al tiempo inicial como
enj = eijx ekn = eijx n
(36)
donde para t = 0 se tiene ej = eijx . Se propone = ek y C, lo que permite que si es imaginario el error
solamente oscilara en el tiempo, pero no crecera, y por el contrario, si es real positivo el esquema el error crecera
exponencialmente. El criterio de estabilidad se reduce a pedir que || 1 para un esquema estable. De (13) se tiene
que el error satisface la misma ecuaci
on que , por lo que es u
til introducir la expresion (36) en (13):
en+1
2enj + ejn1 = 2 (enj+1 2enj + enj1 )
j
1
eijx n 2 + = 2 (eix 2 + eix )
2 2A + 1 = 0
(37)