: Santos Bravo Yuste. email: santos@unex.es
,![[Graphics:Images/DifusMetExpli1D.nb_gr_4.gif]](Images/DifusMetExpli1D.nb_gr_4.gif)
Introducimos las condiciones iniciales u(x,t=0)=x si x<=1/2 y u(x,t=0)=0 si x>=1/2 usando una discretización Δx, de tamaño 1/nmax
![[Graphics:Images/DifusMetExpli1D.nb_gr_5.gif]](Images/DifusMetExpli1D.nb_gr_5.gif)
Representamos gráficamente las condiciones iniciales
![[Graphics:Images/DifusMetExpli1D.nb_gr_6.gif]](Images/DifusMetExpli1D.nb_gr_6.gif)
![[Graphics:Images/DifusMetExpli1D.nb_gr_7.gif]](Images/DifusMetExpli1D.nb_gr_7.gif)
Introducimos las condiciones de contorno: u(x=0,t)=u(x=1,t)=0
![[Graphics:Images/DifusMetExpli1D.nb_gr_8.gif]](Images/DifusMetExpli1D.nb_gr_8.gif)
Implementamos la fórmula de integración del método explícito. La función u[j_,m_] proporciona la solución en el punto x_j=j Δx en el instante t_m=m Δt,
![[Graphics:Images/DifusMetExpli1D.nb_gr_9.gif]](Images/DifusMetExpli1D.nb_gr_9.gif)
Vamos a integrar usando el valor s=1/4. Esto garantiza la estabilidad del método de resolución
![[Graphics:Images/DifusMetExpli1D.nb_gr_10.gif]](Images/DifusMetExpli1D.nb_gr_10.gif)
sol[m] nos proporciona la lista {t_m,u(x_j,t_m)}, j=0,..,nmax, con la solución u(x,t) en los puntos x_j en el instante t_m
![[Graphics:Images/DifusMetExpli1D.nb_gr_11.gif]](Images/DifusMetExpli1D.nb_gr_11.gif)
p[m] dibuja sol[m] mediante puntos gordos situados en (t_m,u(x_j,t_m)), aunque no se muestra la gráfica debido a la opción DisplayFunction->Identity.
![[Graphics:Images/DifusMetExpli1D.nb_gr_12.gif]](Images/DifusMetExpli1D.nb_gr_12.gif)
La función pp[m] es identica a p[m] salvo que en vez de puntos gordos se trazan líneas que unen las coordenadas (t_m,u(x_j,t_m)) de la solución
![[Graphics:Images/DifusMetExpli1D.nb_gr_13.gif]](Images/DifusMetExpli1D.nb_gr_13.gif)
Para ver la solución usamos la instrucción Show con la opción DisplayFunction->$DisplayFunction. Aquí mostramos la solución para t_m=20 Δt
![[Graphics:Images/DifusMetExpli1D.nb_gr_14.gif]](Images/DifusMetExpli1D.nb_gr_14.gif)
![[Graphics:Images/DifusMetExpli1D.nb_gr_15.gif]](Images/DifusMetExpli1D.nb_gr_15.gif)
A constinuación se muestra la solución para t_m con m=0,4,8,12,16,32,64
![[Graphics:Images/DifusMetExpli1D.nb_gr_16.gif]](Images/DifusMetExpli1D.nb_gr_16.gif)
![[Graphics:Images/DifusMetExpli1D.nb_gr_17.gif]](Images/DifusMetExpli1D.nb_gr_17.gif)
Ejercicios:
(1) Compara la solución exacta del problema anterior con la solución numérica aproximada hallada mediante el método explicito cuando se usan distintos valores de nmax (digamos, nmax=10,20,50).
(2) Resuelve el problema anterior usando s=1. ¿Qué sucede?
(3) Resuelve el problema anterior usando s=1/2. ¿Qué sucede?
(4)* Resuelve el problema para las condiciones iniciales u(x,t=0)=u_0=2. Compara con la solución exacta.
(5)* Resuelve el problema suponiendo que las condiciones de contorno dependen del tiempo. Por ejemplo, usa la condición de contorno u(0,t)=sen(w t), u(1,t)=0. ¿Cómo dependen los resultados obtenidos del valor de w?
(*=opcional)