Diferencias Finitas en Ecuaciones Parciales
Diferencias Finitas en Ecuaciones Parciales
PARCIALES
L. H
ector Ju
arez V.
Departamento de Matem
aticas, UAM-I, M
exico, D. F.
Guanajuato, Gto, Junio 2006
Introducci
on
Ejemplo Cl
asico Sencillo
Comezamos con el estudio del modelo mas sencillo de una ecuacion diferencial parcial del
tipo parabolico, a saber la ecuacion que modela el flujo o propagacion de calor en una barra
homogenea de longitud finita sin fuentes de calor. La ecuacion es la siguiente:
k 2u
u
=
, en 0 < x < L, t > 0
t
Cp x2
u(0, t) = u(L, t) = 0, t > 0,
u(x, 0) = u0 (x) , 0 x L ,
(2.1)
(2.2)
(2.3)
2
0
L2 Cp u0
2u
0
la ecuacion
=
. Si se toma t = t k/L2 Cp , entonces las ecuaciones (2.1)
02
k
t
x
(2.3) se tranforman, despues de quitar la comilla de las variables x y u, en la ecuacion mas
sencilla:
ut (x, t) = uxx (x, t) en 0 < x < 1, t > 0
(2.4)
(2.5)
u(x, 0) = u0 (x), 0 x 1,
(2.6)
u(x,t)
1
0
Figura 1. Distribucion de temperatura en una barra uniforme
M
etodo de separaci
on de variables
La ecuacion anterior tiene una solucion en forma de series de Fourier que se puede calcular
por medio del metodo de separacion de variables. El metodo de separcion de variables es un
metodo con limitaciones ya que no es aplicable a casos un poco mas generales. Sin embargo,
proporciona soluciones u
tiles para propositos de comparacion, ademas de que proporciona
un medio para el analisis de la estabilidad de los metodos de diferencias finitas. En el metodo
de separcion de variables se buscan soluciones de la forma u(x, t) = X(x) T (t). Sustituyendo
00
en la ecuacion (2.4), obtenemos X T = X T , en donde el punto indica derivacion respecto al
00
X
T
=
tiempo y las comillas derivacion respecto a la posicion. De lo anterior se tiene que
T
X
debe ser igual a una constante k 2 , debido a que el lado izquierdo depende solo de t y el lado
derecho depende solo de x. Nombramos k 2 a esta constante para enfatizar que debe ser
2
negativa. Luego entonces, se tiene X(x) = sen kx, y T (t) = ek t . Por lo tanto, la solucion
debe de ser de la forma
2
(3.1)
Ahora es claro que el valor negativo k 2 se toma porque no es posible obtener soluciones
con crecimiento exponencial en el problema fsico. En ausencia de fuentes de calor, y debido
a las condiciones de frontera u = 0 en los extremos de la barra, el fenomeno de difusion
presente en el problema provoca que la temperatura disminuya a partir del valor inicial.
Condiciones de frontera. Las condiciones de frontera sirven para deteminar los valores
que puede tomar la constante k. La primera condicion de frontera u(0, t) = 0 es satisfecha
automaticamente por (3.1). La segunda condicion de frontera
2
u(1, t) = ek t sen k = 0,
es satisfecha por (3.1) si k = m para m = 1, 2 . . ..
Modos de Fourier. De acuerdo a lo anterior, el problema (2.4)(2.5) tiene una infinidad
de soluciones denominadas modos de Fourier, y estas son de la forma
2 2 t
um (x, t) = em
sen mx .
(3.2)
Por lo tanto, la solucion general de la ecuacion diferencial (2.4), y que satisface las condiciones
de frontera (2.5), es una superposicion de estos modos de Fourier. Es decir
u(x, t) =
2 2 t
am em
sen mx
(3.3)
m=1
en donde las constantes am se encuentran de las condiciones iniciales (2.6) y de las condiciones
de ortogonalidad de las funciones propias sen mx.
Ortogonalidad. Las funciones sen mx, m = 1, 2, . . . son ortogonales bajo el producto
R1
R1
escalar de funciones hf, gi = 0 f g dx. Ademas 0 sen2 mx dx = 1/2. La condicion inicial
(2.6) debe ser satisfecha por (3.3):
u(x, 0) =
am sen mx = u0 (x).
m=1
(3.4)
X
(m)2 t
u(x, t) =
am e
sen(mx),
am = 2
u0 (x) sen(mx) dx.
m=1
(3.5)
Esta solucion puede considerarse como una solucion analtica del problema, pero tiene el
inconveniente que debemos calcular una infinidad de integrales para encontrar los coeficientes
am y despues sumar un n
umero infinito de terminos, lo cual no es posible en la practica. Para
encontrar una solucion concreta se deben evaluar solo un n
umero finito de terminos de la
serie, lo cual la convierte en una solucion aproximada desde el punto de vista practico. Una
de las principales limitacion del metodo es que no es generalizable a ecuaciones diferenciales
parciales ligeramente mas complicadas.
Los metodos de aproximacion constituyen una alternativa cada vez mas viable para encontrar
soluciones de ecuaciones diferenciales. De entre los metodos mas populares se encuentran
los metodos de diferencias finitas debido a su simplicidad. El esquema mas sencillo para
el problema parabolico unidimensional es el esquema explcito de diferencias finitas. A
continuacion presentamos como se encuentra el esquema:
1. Construcci
on de la malla Se divide el intervalo (0, 1) en J subintervalos y el intervalo
de tiempo (0, tf ), donde tf es el tiempo final, en N subintervalos
x = 1/J
xj = j x, j = 0, 1, ..., J.
tf
t =
tn = n t, n = 0, 1, ..., N.
N
El conjunto de puntos (xj , tn ) as construidos constituyen una malla o latice en donde
t n+1
tn
1111
0000
1
0
1
0
11
00
11111111
00000000
1
0
1
0
1
0
0
1
1
0
1
0
11
00
xj1 x j x j+1
(xj , tn ), utilizamos las siguientes expansiones en serie de Taylor (suponiendo que la solucion
es suficientemente suave):
(t)2
(t)3
utt (x, t) +
uttt (x, t) + ...
2!
3!
(x)2
(x)3
u(x + x, t) = u(x, t) + x ux (x, t) +
uxx (x, t) +
uxxx (x, t) + ...
2!
3!
(x)2
(x)3
u(x x, t) = u(x, t) x ux (x, t) +
uxx (x, t)
uxxx (x, t) + ...
2!
3!
u(x, t + t) = u(x, t) + t ut (x, t) +
(4.1)
(4.2)
(4.3)
Aproximaci
on de ut en el punto (xj , tn ). Se obtiene evaluando (4.1) en dicho punto:
(x)2
utt (xj , ), (tn , tn+1 ) ,
2!
y posteriormente despejando ut (xj , tn ), para obtener
u(xj , tn+1 ) = u(xj , tn ) + t ut (xj , tn ) +
ut (xj , tn ) =
utt (xj , ).
t
2
(4.4)
Ujn+1 Ujn
con error O(t).
t
(4.5)
Aproximaci
on de uxx en el punto (xj , tn ). Se obtiene evaluando (4.2)(4.3) en dicho
punto y sumando para obtener:
u(xj+1 , tn ) + u(xj1 , tn ) = 2 ut (xj , tn ) + (x)2 uxx (xj , tn ) +
(x)4
uxxxx (, tn )
12
uxxxx (, tn ).
(x)2
12
(4.6)
n
n
Uj+1
2 Ujn + Uj1
con error O((x)2 ).
(x)2
(4.7)
3. Aproximaci
on de la ecuaci
on diferencial
De acuerdo a (4.5) y (4.7) el problema (2.4)(2.6) se puede sustituir por el problema
aproximado
n
n
Ujn+1 Ujn
2Ujn + Uj1
Uj+1
=
,
t
(x)2
U0n = UJn = 0, 1 n N,
Uj0 = u0 (xj ), 0 j J.
(Ecuacion en diferencias)
(Condiciones de frontera)
(Condiciones iniciales)
(4.8)
(4.9)
(4.10)
t
,
(x)2
(4.11)
Error de truncamiento
7
n=0
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0
0.1
0
0.2
0.4
0.6
0.8
n = 10
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.4
0.6
0.8
0.2
0.4
0.6
0.8
0.2
0.4
0.6
0.8
0.2
0.4
0.6
0.8
0.1
0
0.2
0.4
0.6
0.8
n = 30
1
0.9
1
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0
0.2
0.9
0.1
0.1
0
0.2
0.4
0.6
0.8
n = 50
1
0.9
1
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0
0.1
0
0.2
0.4
0.6
t = 0.0012
0.8
t = 0.0013
u(x, t + t) u(x, t)
u(x + x, t) 2u(x, t) + u(x x, t)
t
(x)2
(5.1)
Sustituyendo u(x, t+t), u(x+x, t), y u(xx, t) por sus expansiones en series de Taylor
(4.1), (4.2), y (4.3), respectivamente, y simplificando posteriormente, se obtiene
1
1
utt (x, t) t
uxxxx (x, t) (x)2 + . . .
2
12
1
1
uxxxx (x, t) (x)2 + T OA,
= utt (x, t) t
2
12
T (x, t) = ut uxx +
(5.2)
(5.3)
(5.4)
cuando t, x 0,
(x, t) ,
lo tanto, para valores fijos de observamos que |T (x, t)| se comporta asintoticamente como
O(t). Con la excepcion de ciertos valores especiales de , esta sera la mayor potencia de t
para la cual se satisface esta propiedad. Por lo tanto, se dice que el esquema tiene precision
de primer orden en t, y se escribe T (x, t) O(t).
Subiendo el orden del esquema. Si u es suficientemente suave, entonces ut = uxx implica
utt = uxxxx . En este caso la relacion (5.4) se puede escribir como
1
1
T (x, t) = (1 ) uxxxx t + O(t2 )
2
6
Por lo tanto, si tomamos = 1/6 se obtiene que el esquema es de segundo orden en t. Es
decir, en este caso se tiene
T (x, t) v O(t2 )
t
1
= es muy severa, pues el paso del tiempo debe tomarse
2
(x)
6
muy peque
no. Por ejemplo
Sin embargo, la condicion
Convergencia del m
etodo explcito
Sin entrar en detalles tecnicos, podemos decir que el esquema explcito de diferencias finitas
es convergente si para alg
un valor fijo de la solucion aproximada Ujn tiende al valor
(6.1)
(6.2)
(6.3)
1
Si , entonces los primeros tres coeficientes del lado derecho de esta igualdad son no
2
negativos y suman 1. Por lo tanto
|en+1
| = (1 2) |enj | + |enj+1 | + |enj1 | + t |Tjn | .
j
(6.4)
(6.5)
Definiendo
y
T =
t
Mxxxx
(Mtt +
)
2
6
se obtiene
E n+1 E n + t T .
Si ademas suponemos E 0 = 0 (valores iniciales exactos), entonces
E n N t T tf T 0
si t 0.
(6.6)
Para lograr lo anterior se ha supuesto que Mtt y Mxxxx se satisfacen uniformemente sobre
toda la region. Esto solo es posible si suponemos que los datos iniciales y de frontera son
consistentes, y si los datos inciales son suficientemente suaves. De otra manera debemos se
debe depender del efecto suavizador del operador de difusion para asegurar cotas de esta
forma para todo tiempo t > 0
Ejemplo2. En el siguiente ejemplo donde u(0, t) = u(1, t) = 0 y u(x, 0) = 0.9, es un caso
donde las condiciones inciales no son consistentes con las condiciones de frontera, pues es las
esquinas x = 0 y x = 1 hay una discontinuidad. La Figura 4 muestra como el operador de
disusion casi inmediatamente suviza la solucion
10
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
n=0
0.5
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0
0.1
0
0.2
0.4
0.6
0.8
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.2
0.4
0.6
0.8
0.8
0.5
n=5
0.4
n = 15
0.4
0.3
0.3
0.2
0.2
0.1
0
n=1
0.5
0.1
0
0.2
0.4
0.6
0.8
0.2
0.4
0.6
An
alisis de Fourier del error
Hemos expresado la solucion exacta de la ecuacion diferencial como una serie de Fourier,
la cual es una suma infinita de modos como la expresada en la ecuacion (3.5). En forma
compleja esta serie se puede escribir como
u(x, t) =
Z
am e
(m)2 t imx
am = 2
u0 (x)eimx dx.
En este caso los modos de Fourier son um (x, t) = e(m) t eimx = ek t eikx .
(7.1)
11
N
umero de onda. Al n
umero k := m se le denomina el n
umero de onda del modo. Si el
n
umero de onda k es grande se dice que el modo es de alta frecuencia. En un punto de la
malla xj = jt, tn = nt, se tiene
um (xj , tn ) = (ek
2 t
)n eik(jx) .
(7.2)
La amplitud de cada modo es el primer termino del lado derecho, y este tiende a cero con el
tiempo:
(ek
2 t
)n 0 cuando n .
(7.3)
Factor de amplificaci
on del modo: Al termino = (k) se le demonima el factor de
amplificacion del modo de Fourier discreto con n
umero de onda k, y sustituye al termino
exponencial ek
2 t
t
.
(x)2
(7.4)
mZ
12
2 t
= 1 k 2 t +
en
1
.
6
de
truncamiento y convergencia. Sin embargo, con el analisis de Fourier podemos decir un poco
mas. Por ejemplo, los terminos de baja frecuencia (k peque
no) son bi
en aproximados
pues
1
1
) + . . . C() k 4 (t)2 .
12 2
Esto no sucede con los terminos de alta frecuencia como veremos en seguida. Por un lado,
2
para valores grandes de k en la solucion exacta ek n t 0 rapidamente cuando n .
1
Pero en la solucion numerica |(k)|n cuando n si > , debido a que en este
2
caso |(k)| > 1. En particular para m = J, k x = , y
|(k) ek
2 t
| = k 4 (t)2 (
1
|(k)| = |1 4 sen2 | = 4 1 > 1 si > .
2
2
Estabilidad
Para el modelo que hemos considerado decimos que el metodo es estable si existe K > 0,
independiente de k, tal que
|(k)n | K,
n,
k.
(8.1)
Condici
on de Von Neumann. En la expresion anterior, si K > 1 entonces la funcion K s
es convexa en el intervalo [0, 1], de tal forma que queda por debajo del segmento de recta
dado por 1 + (K 1)s como se muestra en la Figura 5.
1
Lugo entonces para s = con n = 1, 2 . . . se tiene
n
1
t
|(k)| K 1/n 1 + (K 1) = 1 + (K 1)
.
n
tf
0
Si llamamos K a la constante
k1
obtenemos la celebre condici
on de Von Neumann
tf
13
K
1+(K1)s
s
0<s<1
|(k)| 1 + K t
k.
(8.2)
k.
(8.3)
14
M
etodo implcito
t n+1
tn
1111
0000
11111111
00000000
1
0
0
1
0
1
0
1
0
1
0
1
11
00
1
0
0
1
11
00
xj1 x j x j+1
(9.1)
15
j = 1, . . . , J 1 ,
(9.2)
complementada por las condiciones de frontera (4.9) y las condiciones iniciales (4.10).
Estabilidad. El esquema es incondicionelamente estable pues al sustituir U (k)nj =
n ei k j x en la ecuacion en diferencias (9.2), simplificando y despejando , en forma analoga
a como se hizo en el caso explcito, se obtiene el factor de amplificacion
(k) =
1
,
1 + 4 sen2 ( 12 k x)
(9.3)
el cual es menor que 1 en valor absoluto para toda k y para todo valor de . Por lo tanto
t y x se escogen tomando solo criterios de precision.
Costo adicional. Sin embargo, el esquema es un poco mas complicado debido a que para
obtener la solucion en cada nivel tiempo tn+1 es necesario resolver un sistema de J 1
ecuaciones con J 1 incognitas. Es decir, el costo adicional, es resolver en cada nivel de
tiempo un sistema de ecuaciones de tama
no (J 1) (J 1) con matriz constante
2 1
1 2 1
A = I + . . . . . . . . . . . . . . . . . . . . . .
1 2 1
1 2
donde I indica la matiz identidad de tama
no (J 1) (J 1).
Ejemplo 3. Para ilustrar el comportamiento del esquema implcito, consideremos el problema resuelto en el Ejemplo 1 (Seccion 4). Se utilizan el mismo parametro de discretizacion
x = 0.05 (J = 20). Se consideran los casos t = 0.0013 ( = 0.52) y t = 0.0125 ( = 5).
Para los calculos se utilizo el programa implicito1.m escrito para el ambiente MATLAB y
que se incluye al final de este trabajo. Los resultados se muestran en la Figura 7.
El lector puede hacer experimentos con algun valor fijo de , y varios valores de J, por
ejempo J = 200, 400, 1000, etc., para verificar que la memoria se agota rapidamente, y en
consecuencia la eficiencia del metodo disminuye dramaticamente.
Algoritmo de Thomas. Realmente no hemos hecho gran cosa, excepto que hemos utilizado
16
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
n=0
0.2
n=0
0.2
0.1
0.1
0
0.2
0.4
0.6
0.8
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
n = 10
0.2
0.2
0.4
0.6
0.8
1
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.8
0.2
0.4
0.2
0.4
0.2
0.4
0.6
0.8
0.3
0.2
0.2
n = 30
0.1
0
0.2
0.4
0.6
n=3
0.1
0.8
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2
n = 50
0.1
0
0.6
0.1
0.9
0.4
n=1
0.2
0.1
0
0.2
0.2
0.4
0.6
t = 0.0013 ( = 0.52 )
0.8
0.8
n=5
0.1
0.8
0.6
0.6
t = 0.0125 ( = 5)
17
j = 1, 2, . . . , J 1,
j = 1, 2, . . . , J 1 .
en donde identificamos dnj con Ujn , el lado derecho de (9.2) (obsevese que hemos suprimido
los superndice n y n + 1 en los terminos con U para simplificar la notacion).
Para lograr la reduccon anterior se procede como sigue: en la primera ecuacion del
sistema tridiagonal j = 1 y Uj1 = U0 = 0, por los que esta ecuacion se transforma en
dn1
, f1n =
.
1 + 2
1 + 2
Despejando U1 de esta ecuacion, sustituyendo en la segunda ecuacion del sistema tridiagonal,
U1 e1 U2 = f1n ,
con e1 =
y reordenando, se obtiene
U2 e2 U3 = f2n ,
con e2 =
,
1 + 2 e1
f2n =
d2 + f1n
.
1 + 2 e1
con ej =
,
1 + 2 ej1
fjn =
n
dj + fj1
,
1 + 2 ej1
(9.4)
18
el algoritmo de Thomas. La verdadera importancia del metodo implicito radica en que los
pasos de tiempo pueden tomarse significativamente mayores a los permitidos por el metodo
explcito, con lo cual al final hay un ahorro real en el costo computacional.
Ejemplo 4. Consideremos de nuevo el problema resuelto en el Ejemplo 1 (Seccion 4). Se
pueden utilizar los parametros de discretizacion: x = 0.05 (J = 20) y = 1. Los resultados
son muy semejantes a los ya obtenidos anteriormente. El progama implicito1t.m, que
contiene el algorimto de Thomas para resolver los sistemas tridiagonales, se incluye al final
de las notas.
El lector puede repetir el experimeto del Ejemplo 3 con varios valores de J, y verificar
que con el algoritmo de Thomas hay un ahorro real en memoria y un aumento considerable
en la eficiencia para encontrar la solucion numerica.
10
Los metodos explcito e implcito difieren solamente en que el primero aproxima uxx por tres
punto en el nivel de tiempo tn , y el segundo por tres puntos en el nivel de tiempo tn+1 . Una
generalizacion natural de estos metodos sera una aproximacion que use los seis puntos. Esto
puede lograrse mediante un promedio pesado de las dos ecuaciones en diferencias:
n+1
n+1
n
n
Ujn+1 Ujn
Uj+1
2Ujn+1 + Uj1
Uj+1
2Ujn + Uj1
=
+
(1
)
,
t
(x)2
(x)2
(10.1)
con 0 1.
Con = 0
Con = 1
(10.2)
19
1111
0000
t n+1
1
0
0
1
1
0
0
1
11
00
tn
11111111
00000000
1
0
0
1
0
1
0
1
0
1
0
1
11
00
1
0
0
1
xj1 x j x j+1
ej =
,
1 + (2 ej1 )
fj =
dnj + fj1
,
1 + (2 ej1 )
(10.3)
ikx
ikx
21
1 = { + (1 )} e
2+e
= { + (1 )} 4 sen kx .
2
(10.4)
la cual es siempre menor a uno debido a que > 0 y 0 1. Por lo tanto puede haber
inestabilidad solo si < 1, es decir si
1
4(1 2) sen2 ( kx) > 2.
2
El modo mas inestable, con n
umero de onda k = J, maximiza el termino en el lado
izquierdo, pues en este caso 21 kx = /2. As que la condicion de inestabilidad es 4(1
20
(Estabilidad incondicional).
en serie de Taylor. Este es el mejor punto, por simetra, y porque es el que cancela el mayor
de n
umero de terminos en la expansion. Con estas consideraciones el error de truncamiento
es:
n+ 12
Tj
n+1
n
n
n
un+1
unj
(un+1
+ un+1
j
j1 2uj
j+1 ) + (1 (uj1 2uj + uj+1 )
.
t
(x)2
un+1
j
unj
n+ 21
1
1 1
1 1
2
3
= u + tut + ( t) utt + ( t) uttt + . . .
2
2 2
6 2
j
n+ 21
1
1 1
1
1
u tut + ( t)2 utt ( t)3 uttt + . . .
2
2 2
6 2
j
n+ 12
1
1
(t)t uttttt . . .
.
= tut + (t)3 uttt +
24
1920
j
(10.5)
21
2un+1
j
un+1
j+1
n+1
1
1
4
6
2
(x) uxxxxxx + . . .
= (x) uxx + (x) uxxxx +
12
360
j
n+ 21
1
1
= (x)2 uxx + (x)4 uxxxx +
(x)6 uxxxxxx + . . .
12
360
j
n+ 21
1
1
1
2
4
6
+ t (x) uxxt + (x) uxxxxt +
(x) uxxxxxxt + . . .
2
12
360
j
n+ 12
1 1
1
1
2
2
4
6
+ ( t) (x) uxxtt + (x) uxxxxtt +
(x) uxxxxxxtt + . . .
2 2
12
360
j
+ ...
Analogamente
unj1
2unj
unj+1
n+ 21
1
1
4
6
= (x) uxx + (x) uxxxx +
(x) uxxxxxx + . . .
12
360
j
n+ 12
1
1
1
2
4
6
t (x) uxxt + (x) uxxxxt +
(x) uxxxxxxt + . . .
2
12
360
j
n+ 12
1 1
1
1
2
2
4
6
+ ( t) (x) uxxtt + (x) uxxxxtt +
(x) uxxxxxxtt + . . .
2 2
12
360
j
2
...
Entonces
n+1
n
n
n
(un+1
+ un+1
j1 2uj
j+1 ) + (1 )(uj1 2uj + uj+1 )
n+ 21
1
1
2
4
6
= (x) uxx + (x) uxxxx +
(x) uxxxxxx + . . .
12
360
j
n+ 12
1
1
1
2
4
6
+ ( )t (x) uxxt + (x) uxxxxt +
(x) uxxxxxxt + . . .
2
12
360
j
n+ 12
1
1
1
2
2
2
4
6
(x) uxxxxxxtt + . . .
+ (t) (x) (x) uxxtt + (x) uxxxxtt +
8
12
360
j
+ ...
22
n+ 12
n+ 12
1
1
1
1
n+ 12
2
Tj
=
uxxt t
uxxx (x)
+
uttt uxxtt
(t)2
2
12
24
8
j
j
n+ 12
1 1
2
+
uxxxxt t
uxxxxxx (x)2
(x)2 + T OA .
12 2
6!
j
(10.6)
1
da origen al esquema que de
2
n+1
n+1
n
n
Ujn+1 Ujn
(Uj+1
2Ujn+1 + Uj1
) + (Uj+1
2Ujn + Uj1
)
=
,
t
2(x)2
(10.7)
n+ 21
1
n+ 21
2
2
Tj
=
+ T OA .
uxxxx (x) + uttt (t)
12
j
Por lo tanto, podemos explotar las propiedades adicionales de estabilidad para tomar pasos
en el tiempo mayores, como por ejemplo t = x, y seguir obteniendo precision de segundo
orden.
Convergencia del metodo . Se puede hacer un analisis de convergencia para el metodo
semejante al hecho en la Seccion 6 para el metodo explcito.
Como en aquel caso definimos
en+1
:= Ujn+1 un+1
.
j
j
(10.8)
n+1
n+1
n
n
2Ujn + Uj1
2Ujn+1 + Uj1
) + (1 )(Uj+1
en+1
= Ujn + (Uj+1
j
n+ 12
n+1
n
n
n
n
+ un+1
(un+1
j1 ) + (1 )(uj+1 2uj + uj1 ) uj tTj
j+1 2uj
n+ 12
n+1
n+1
n
n
n
= enj + (en+1
2e
+
e
)
+
(1
)(e
2e
+
e
)
tT
.
j+1
j
j1
j+1
j
j1
j
23
Reordenando, se obtiene
n+ 12
n+1
n
n
n
(1 + 2)en+1
= (en+1
j
j1 + ej+1 ) + (1 )(ej1 + ej+1 ) + [1 2(1 )]ej tTj
n+ 21
. (10.9)
cuando t 0 ,
1
sobre toda trayectoria de refinamiento que satisfaga (1 ) .
2
11
Principio del m
aximo
n+1
n+1
n
n
Ujn+1 = Ujn + (Uj+1
2Ujn+1 + Uj1
) + (1 ) (Uj+1
2Ujn + Uj1
) .
Reagrupando, se obtiene
n+1
n+1
n
n
(1 + 2)Ujn+1 = (Uj1
+ Uj+1
) + (1 )(Uj1
+ Uj+1
) + [1 2(1 )]Ujn
24
1111
0000
t n+1
11
00
tn
11
00
xj1 x j x j+1
en la ecuacion anterior. Entonces Ujn+1 U debido a que los coeficientes en el lado derecho
suman 1 + 2. Por otro lado U Ujn+1 , pues Ujn+1 es el valor maximo por hipotesis. Se
concluye que U = Ujn+1 . El argumento puede repetirse en cada uno de los puntos U as
obtenidos, obteniendo una sucecion de puntos hasta que se toma un punto frontera. Un
argumento similar muestra que el mnimo tambien se toma en un punto frontera.
1
La condicion del resultado anterior, (1 ) , para garantizar el principio del
2
1
maximo es mucho mas restrictiva que la obtenida por analisis de Fourier, (1 2) ,
2
1
para garantizar estabilidad. Por ejemplo, el esquema de CrankNicolson ( = ) es estable
2
para toda , pero satisface el principio del maximo solo si 1.
El analisis del principio del maximo puede usarse como medio alternativo para obtener
condiciones de estabilidad. Este tipo de analis tiene la ventaja sobre el analisis de Fourier de
que es facilmente aplicable a problemas con coeficientes variables, entre otros. Sin embargo,
con el principio del maximo solo pueden derivarse condiciones suficientes para estabilidad.
Ejemplo 5. Con el objeto de ilustrar el efecto de las condiciones para que se satisfaga un
principio del maximo, consiremos el problema donde la distribucion incial de temperaturas
en la barra tiene la forma de un pico, es decir u0 (x) es 1 en el punto medio de una malla
con J = 20 y 0 en cualquier otro punto de la malla. Si tomamos = 1/2, enonces para
25
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
0.4
0.4
n=0
0.3
0.2
0.1
0
0.1
0
0.2
0.4
0.6
0.8
n=2
0.2
0.4
0.6
0.8
0.4
0.6
0.8
0.4
0.6
0.8
0.4
0.6
0.8
n=1
0.2
0.4
0.6
0.8
0.5
0.2
0.5
0.5
n=4
n=2
0.2
0.4
0.6
0.8
0.5
0.2
0.5
0.5
n=6
n=3
0
0.5
0.5
0.5
0.5
0.5
n=0
0.3
0.2
0.5
0
0.2
0.4
0.6
0.8
t = 0.0025 ( = 1 )
0.2
t = 0.005 ( = 2 )
12
26
Problemas m
as generales
12.1
Coeficientes variables
x, t.
(12.1)
k
, donde k denota el coeficiente de conductividad termica, c el calor especfico, y
c
la densidad del material.
con a =
An
alogo del m
etodo . En el caso de coeficientes variable el esquema de promedios
pesados o es
n+1
n+1
n
n
Ujn+1 Ujn
Uj+1 2Ujn+1 + Uj1
Uj+1
2Ujn + Uj1
=a
+ (1 )
,
t
(x)2
(x)2
(12.2)
donde a puede escogerse de diferentes maneras. Algunas de las elecciones adecuadas son
1111
0000
t n+1
1
0
0
1
1
0
0
1
11
00
tn
11111111
00000000
1
0
0
1
0
1
0
1
0
1
0
1
11
00
1
0
0
1
xj1 x j x j+1
a = aj
intermedio de la molecula computacional (ver Figura 10), y se puede probar que el error de
27
n+ 12
n+ 12
1
a
1
a
n+ 12
2
Tj
=
uxxt t
uxxx (x)
+
uttt uxxtt
(t)2
2
12
24
8
j
j
n+ 12
1 1
2a
+
uxxxxt t
uxxxxxx (x)2
(x)2 + T OA .
12 2
6!
j
Se observa inmediatamente que el esquema es consistente, y que el orden del mismo es O(t)
1
en el caso general, y O((t)2 + (x)2 ) en el caso que = (CrankNicolson).
2
La ecuacion en diferencias (12.2) se puede escribir en la forma
n+1
n+1
n
n
+Uj1
) . (12.3)
(1+2 a )Ujn+1 = a (Uj1
+Uj+1
)+[12 a (1) ] Ujn +a (1) (Uj+1
De esta ecuacion se observa que los coeficientes del lado derecho suman lo mismo que el coeficiente del lado izquierdo, y que se satisface un principio del maximo si todos los coeficientes
son no negativos. Esto u
ltimo se logra si 1 2 a (1 ) 0. Por lo tanto, la convergencia
del m
etodo se puede realizar por medio del principio del maximo, pero se debe adoptar la
condici
on de estabilidad
(1 ) a(x, t) 1/2 x, t .
(12.4)
1 n
(a
2 j
+ an+1
), la cual
j
produce un error de truncamiento del mismo orden. Por el contrario, el siguiente esquema
n+1
n
U n+1 2Ujn+1 + Uj1
Ujn+1 Ujn
U n 2Ujn + Uj1
n+1 j+1
n j+1
= aj
+ (1 ) aj
.
t
(x)2
(x)2
12.2
Ecuaci
on parab
olica en forma autoadjunta
a = a(x, t) > 0 ,
(12.5)
28
(12.6)
(12.7)
1111
0000
11
00
t n+1
tn
11111111
00000000
1
0
0
1
0
1
0
1
0
1
0
1
xj1 x j x j+1
11
00
n
n
a uxxxx ax uxxx axx uxx axxx ux
1
n
utt t
+
+
+
(x)2 + . . .
Tj =
2
12
6
8
24
j
j
donde, como se esperaba, el error es de primer orden en t.
(12.8)
29
Esta ecuacion satisface un principio del maximo si los coeficientes son acotados y no negativos. Como hemos supuesto que a(x, t) > 0 para toda x y t, entonces el principio del
maximo se satisface si.
1
donde A = max{a(x, t)} .
A ,
2
Esta condicion es una condicion necesaria para la estabilidad del metodo explcito, lo cual a
su vez asegura la convergencia del metodo, gracias a la consistencia del mismo.
Un esquema analogo al metodo es
Ujn+1 Ujn
x [an+1
x (Ujn+1 )]
x [anj x (Ujn )]
j
=
+ (1 )
.
t
(x)2
(x)2
Desarrollando los operadores de diferencias centrales y reordenando el resultado, se obtiene
h
i
i
h
n+1
n+1
n+1
n
n
1 + (aj 1 + aj+ 1 ) Uj = 1 (1 )(aj 1 + aj+ 1 ) Ujn + (an+1
U n+1 + an+1
U n+1 )
j 1 j1
j+ 1 j+1
2
+ (1 )
(anj 1
2
n
Uj1
n
+ anj+ 1 Uj+1
).
2
12.3
1
,
2
Problemas no lineales
a(u) > 0 ,
(12.9)
30
n
1
1
n
n
2
Tj =
utt t
a(Uj ) uxxxx (x) + . . . O(t) ,
2
12
j
de donde se concluye que el esquema es consistente y de primer orden en t. Despejando
Ujn+1 de (12.9), se obtiene
Ujn+1
n
n
n
n
n
= 1 2 a(Uj ) Uj + a(Uj ) Uj+1 + Uj1 .
(12.10)
Los coeficientes en el laso derecho suman uno y son no negativos si 1 2 a(Ujn ) 0 para
toda j y n. Por lo tanto de satisface un principio del m
aximo si
1
donde A = max{a(Ujn )}.
(12.11)
2
Sin embargo, el analisis del error no es triival en este caso, debido a que aparece un problema
si
( ) ,
u j
en donde jn se encuentra entre unj y UJn . Por lo tanto
a(Ujn )
a n
( )
u j
(12.12)
enj
a
(x2 unj ) enj t Tjn
u
(12.13)
n
a n n
n
n
n
n
n
( ) e t Tj .
= 1 2 a(Uj ) ej + a(uj ) (ej1 + ej+1 ) +
u j j
a
Para poder garantizar convergencia se debe controlar el crecimiento de
. Suponiendo que
u
a
existe K > 0 tal que | | K, y que |unj+1 2unj + unj1 | Mxx (x)2 , donde Mxx es una
u
en+1
= enj + a(Ujn ) x2 enj +
j
31
t T
K Mxx t
eK Mxx tf
T 0 cuando t, x 0 .
K Mxx
Se observa que la estimacion del error es mucho peor que en el caso lineal, a menos que K
y Mxx sean peque
nos.
Esquemas implcitos. Muchos autores prefieren utilzar esquemas implcitos o tambien
esquemas semiimplcitos para aproximar problemas no lineales. El esquema implcito mas
simple es
n+1
Ujn+1 = Ujn + a(Ujn+1 ) (Ujn+1 2 Ujn+1 + Uj1
).
(12.15)
Finalizar
kU n+1, k U n+1, k1 k
, donde es un
kU n+1, k k
o menor. Observese que en cada iteracion del tiempo
se deben resolver kmin sistema de ecuaciones lineales, donde kmin es el numero mnimo de
itreaciones para obtener la tolerancia en el criterio de paro.
Algunos metodos alternativos estan basados en algoritmos tipo predictorcorrector. Por
32
ejemplo
n+1/2
Predictor:
Corrector:
n+1/2
x2 Uj
Ujn
= a(Ujn )
t/2
(x)2
2
n+1
Ujn+1 Ujn
+ Ujn )
n+1/2 x (Uj
= a(Uj
)
t
2 (x)2
Uj
(semiimplcito)
(CrankNicolson)
Se pueden utilizar otras variantes. Observese que en este caso tambien hay que resolver dos
sistemas algebraico linelaes en cada iteracion del tiempo.
13
Problemas bidimensionales
en D, t > 0,
(13.1)
u(x, y, 0) = u0 (x, y)
en D,
(13.2)
u(x, y, t) = g(x, y, t)
sobre D, t 0.
(13.3)
i = 0, 1, . . . , I,
yj = j y,
j = 0, 1, . . . , J.
Dividimos el intervalo de tiempo [0, tf ] en N subintervalos de tal manera que los niveles de
tiempo discreto son tn = n t, n = 0, 1, . . . , N.
n
la aproximacion a la solucion exacta u(xi , yj , tn ).
Esquema explcito. Denotamaos por Ui,j
n+1
n
n
n
n
n
n
Ui,j
Ui,j
+ Ui+1,j
+ Ui,j+1
Ui1,j 2Ui,j
2Ui,j
Ui,j1
=a
+
.
t
(x)2
(y)2
(13.4)
33
1111
0000
yj+1
1
0
0
1
11
00
yj
11111111
00000000
1
0
0
1
0
1
0
1
0
1
0
1
11
00
yj1
1
0
0
1
xi1 x i x i+1
y2 U n
x U
U n+1 U n
=a
+
,
t
(x)2 (y)2
(13.5)
o bien
U n+1 = U n + x x2 U n + y y2 U n ,
(13.6)
a
1
2
2
T (x, t) = utt t
uxxxx (x) + uyyyy (y) + . . . O(t)
2
12
Por tanto, el esquema es consistente y de orden t.
Convergencia. Bajo la condicion x + y 1/2, se satisface
a2 t
1
n
Mtt t +
E
Mxxxx + Myyyy tf 0 ,
2
12
(13.7)
34
cuando t 0.
Estabilidad. La estabilidad tambien puede analizarse mediante series de Fourier, suponiendo
que a es constante, e ignorando las condiciones de frontera. En este caso los modos de
Fourier son de la forma
U n = n ei(k1 x+k2 y) ,
(13.8)
2 1
2 1
= (k1 , k2 ) = 1 4 x sen ( k1 x) + y sen ( k2 y) .
(13.9)
2
2
El peor modo discreto es aquel en el que k1 x = k2 y = , es decir k1 = I y k2 = J. De
aqu que
1
(13.10)
|| 1 si x + y .
2
Esta condici
on de estabilidad es m
as severa que en el caso unidimensional. Por ejemplo,
a t
1
si x = y = h, entonces = 2 . Ademas, cuando a sea variable, en cualquier pico
h
4
de ella sera necesario disminuir el paso del tiempo para mantener la estabilidad. Entonces,
el esquema es algo impractico en 2D, y mas a
un su generalizacion a 3D. Por lo tanto, debe
buscarse equemas implcitos o semiimplcitos para relajar la condicion de estabilidad.
14
El m
etodo
Una posible alternativa para superar las limitaciones del esquema explcito bidimensional es
el metodo de promedios pesados (metodo ):
y2 ( U n+1 + (1 ) U n )
U n+1 U n
2 ( U n+1 + (1 ) U n )
=a x
+
a
.
t
(x)2
(y)2
(14.1)
Para el caso unidimensional hemos visto que el esquema es incodicionalmente estable para
1/2, y es de segundo orden tanto en t como en x si = 1/2. Entonces vale la pena
considerar el metodo
CrankNicolson. Haciendo = 1/2 y reordenando (14.1), obtenemos la ecuacion en
diferencias
1
1
1
1
(14.2)
x x2 y y2 ) U n+1 = (1 + x x2 + y y2 ) U n .
2
2
2
2
Para verificar estabilidad, sustituimos el modo (13.8) en esta ecuacion, y despues de simpli(1
35
(14.3)
A I
4 1
I A I
1 4 1
con A = . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
A = I +
I A I
1 4 1
I A
1 4
Como puede observarse la matriz del sistema A viene dada por bloques, y cada ecuacion
involucra cinco incognitas, y no hay forma de permutar renglones y columnas para que los
coeficientes nocero formen una banda delgada, de tal forma que podamos hacer eliminacion
y reduccon como en el caso unidimensional. En conclusion, no es posible resolver el sistema
en forma eficiente en el caso bidimensional, y el problema es todava mas severo en el caso
tridimensional.
15
M
etodos implcitos de direcciones alternantes (ADI)
Como los metodos implcitos son muy eficientes en una dimension, es natural buscar metodos
bidimensionales que sean implcitos en una direccion pero no en ambas. El siguiente esquema,
es un ejemplo de este tipo de esquemas
36
PeacemanRachford (1955)
y2 U n
U n+1/2 U n
2 U n+1/2
=a x
+
a
t/2
(x)2
(y)2
y2 U n+1
2 U n+1/2
U n+1 U n+1/2
=a x
+
a
t/2
(x)2
(y)2
n t
(n+ 12)t
(
(
IMPLICITO EN x
EXPLICITO EN y
EXPLICITO EN x
IMPLICITO EN y
(15.1)
(15.2)
(n+1) t
(15.6)
37
1111
0000
11
00
11
00
yj+1
yj
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
J1
sistemas
tridiagonales
de orden
I1
1
0
0
1
yj1
xi1 x i x i+1
vacinos de U y U
n+1/2
+
.
Ti,j
=
t
2 (x)2
2 (y)2
4(x)2 (y)2
i,j
(15.8)
38
n+1/2
un+1 un
(t)2 uttt
= ut +
+ ...
t
24
i,j
n+1/2
2 n+1
n
2
x (u
+u )
(x) uxxxx (t)2 uxxtt
+
+ ...
= uxx +
2 (x)2
12
12
i,j
n+1/2
2 n+1
n
2
2
y (u
+u )
(y) uyyyy (t) uyytt
= uyy +
+
+ ...
.
2
2 (y)
12
12
i,j
(15.9)
(15.10)
(15.11)
n+1/2
t x2 y2 (un+1 un )
(t)2 uttt
(t)2
2 2
=
ut +
+ ...
(x)2 (y)2
(x)2 (y)2 x y
24
i,j
2 v
y dado que para cualquier funcion v = v(x, y, t) suficientemente suave se satisface x 2 =
(x)
n+1/2
2
(x)
entonces
vxx +
vxxxx + . . .
12
i,j
t x2 y2 (un+1 un )
2
2
2
2 n+1/2
=
(t)
u
+
O(t)
+
O(x)
+
O(y)
.
xxyyt
i,j
(x)2 (y)2
(15.12)
Por lo tanto sustituyendo las expresiones (15.9)(15.12) en (15.8) se obtiene que el error de
truncamiento es
n+1/2
1 1
n+1/2
2
2
2
uttt (t) uxxxx (x) uyyyy (y)
Ti,j
=
12 2
i,j
n+1/2
1 1
1
2
2
2
(15.13)
+ T OA
2
2
2
= O (t) + (x) + (y) .
Se concluye entonces, que el esquema implicito de direcciones alternantes es de segundo
orden respecto a t, x y y.
Ejemplo 6. Se considera el problema bidimensional con a = 1 y condiciones inciales dadas
por la funcion peaks de MATLAB. La Figura 14 ilustra esta funcion cuando n = 0.
Las condiciones de frontera son u = 0 sobre D. Se toman I = J = 48, y t = 0.0025.
Observese que las condiciones iniciales toma valores positivos y negativos. En la misma figura
se muestra la solucion para varios niveles de tiemp n. Se utilizo el programa adicn.m, que
consiste del metodo ADI con = 1/2 (CrankNicolson).
39
n=0
n=3
10
10
1
5
1
0.8
0.5
0.8
0.5
0.6
0.6
0.4
Y
0.4
0.2
0
0.2
0
n = 25
n=6
5
5
1
5
1
1
0.8
0.5
0.6
1
0.8
0.5
0.6
0.4
Y
0.4
0.2
0
0.2
0
Figura 14. Resultados numericos para un problema bidimensional obtenidos con el metodo
ADI
Ejemplo 7. En este u
ltimo ejemplo se toma como condicion inicial una funcion con dos
torres en forma simetrica (Ver Figura 15 con n = 0), y condiciones de frontera cero. Se
toma I = J = 40 y dos casos: t = 0.0005, y t = 0.0025. El primer caso proporciona
x = y = 0.8, y satisface la condicion para el principio del maximo para el esquema ADI.
El segundo caso, por el contrario, proporciona x = y = 4, y no se satisface el principio
del maximo. Notese que, a pesar de que el metodo es estable en ambos casos, la solucion se
degrada en el caso que no se satisface la condicion para el principio del maximo.
16
Programas
40
n=0
n=0
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0.2
1
0.2
1
1
0.8
0.5
0.8
0.5
0.6
0.6
0.4
Y
0.4
0.2
0
0.2
0
n=5
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0.2
1
0.2
1
n=1
1
0.8
0.5
0.8
0.5
0.6
0.6
0.4
0.4
Y
0.2
0
n = 30
0.2
0
n=2
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0.2
1
0.2
1
1
1
0.8
0.5
0.8
0.5
0.6
0.6
0.4
0.4
Y
0.2
0
n = 100
0.2
0
n=5
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0.2
1
0.2
1
1
1
0.8
0.5
0.6
0.8
0.5
0.6
0.4
0.4
Y
0.2
0
0.2
0
Figura 15. Ilustracion del principio del maximo en el metodo ADI. Lado izquierdo:
t = 0.0005 (x = y = 0.8). Lado derecho t = 0.0025 (x = y = 4)
ARGUMENTOS DE ENTRADA
J = numero de subdivisiones de [0,1]
dt = paso del tiempo
N = numero de pasos del tiempo
ARGUMENTO DE SALIDA
M = almacena los distintas instantaneas graficas para hacer una
animacion de la solucion
dx = 1/J;
x = 0:dx:1;
% Condiciones iniciales: u = 2x
para x entre 0 y 0.5
%
u = 2 2x para x entre 0.5 y 1
j = 1:J/2; u(j) = 2*x(j);
j = J/2+1:J+1; u(j) = 2 2*x(j);
plot(x,u,r) % Grafica de las condiciones iniciales
axis([0 1 0 100])
pause
nu = dt/dx^2;
for n = 1:N
% Iteraciones en el nivel del tiempo
Unew(1) = 0; % Condicion de frontera
for j = 2:J % Esquema de diferencias.
Unew(j) = u(j) + nu*( u(j1)2*u(j)+u(j+1) );
end
Unew(J+1) = 0; % Condicion de frontera
u = Unew; % Actualizacion de la solucin
plot(x,u)
axis([0 1 0 100])
M(n) = getframe
end
41
ARGUMENTOS DE ENTRADA
J = numero de subdivisiones de [0,1] (J debe ser par)
dt = paso del tiempo
N = numero de pasos del tiempo
ARGUMENTO DE SALIDA
A = la matriz del sistema lineal en la ecuacion en diferencias
Condiciones de frontera homogeneas en x = 0 y x = 1
42
ARGUMENTOS DE
J = numero de
dt = paso del
N = numero de
ARGUMENTOS DE
Nunguno
ENTRADA
subdivisiones de [0,1] (J debe ser par)
tiempo
pasos del tiempo
SALIDA
43
ARGUMENTOS DE
J = numero de
dt = paso del
N = numero de
theta = valor
ARGUMENTOS DE
Nunguno
ENTRADA
subdivisiones de [0,1] (J debe ser par)
tiempo
pasos del tiempo
de teta entre 0 y 1 (CrankNicolson si theta = 0.5)
SALIDA
dx = 1/J;
x = 0:dx:1;
% Condiciones iniciales u = 2x
para x entre 0 y 0.5
%
u = 22x para x entre 0.5 y 1
j = 1:J/2+1; u(j) = 2*x(j);
j = J/2+2:J+1; u(j) = 2 2*x(j);
plot(x,u,r)
pause
nu = dt/dx^2;
nut = theta*nu;
% Coeficientes e(j) del sistema normalizado
e(1) = 0;
for j = 2:J
e(j) = nut/(1+nut*(2e(j1)));
end
% Iteraciones en el tiempo
unew = zeros(J+1,1);
for n = 1:N
% Lados derechos del sistema normalizado
f(1) = 0;
for j = 2:J
d = u(j) + (1theta)*nu*(u(j1)2*u(j)+u(j+1));
f(j) = (d + nut*f(j1))/(1+nut*(2e(j1)));
end
unew(J+1) = 0; % Condicion de frontera homogenea en x = 1
% Solucion por sustitucion regresiva del sistema normalizado
for j = J:1:2
unew(j) = f(j)+e(j)*unew(j+1);
end
unew(1) = 0;
% CONDICION DE FRONTERA HOMOGENEA en x = 0
u = unew; % Actualizacion para avanzar en el tiempo
plot(x,u)
axis([0 1 0.2 1])
M(n) = getframe;
%pause
end
hold off
44
45
46