Documentos de Académico
Documentos de Profesional
Documentos de Cultura
La ecuación de calor
Dr. Miguel Angel Uh Zapata
Dado que en muchos casos no podemos conocer la solución exacta de una ecuación diferencial par-
cial, resulta de suma importancia disponder de algún método que nos permita saber, al menos con
cierto grado de aproximación, esa solución. Los métodos numéricos son muy variados y no podemos
entrar aquí en una discusión profunda. Nos limitaremos a estudiar el método de diferencias finitas
dado que es uno de los más sencillos y abre la puerta a métodos más complejos y que permiten un
mayor control sobre los resultados. Este tema será desarrollado resolviendo la ecuación de calor con
condiciones iniciales y de frontera.
Encontrar una solución numérica a la ecuación de calor con condiciones iniciales y de frontera
Dirichlet nulas:
∂u ∂2u
= c2 2 , x ∈ (0, L), t ∈ (0, T ], (1)
∂t ∂x
u(0, t) = u(L, t) = 0, t ∈ (0, T ], (2)
u(x, 0) = f (x), x ∈ [0, L], (3)
donde L es la longitud de la bara y T el tiempo final deseado.
SOLUCIÓN:
La estrategia será utilizar em método de Diferencias Finitas. Para poder aplicar este método es
necesario discretizar nuestro dominio rectangular en una serie de puntos que se encuentran en una
malla regular. En cada punto es calculada una aproximación de la derivada usando truncamientos de
series de Taylor y los resultados son usados para obtener una ecuación en diferencias que sustituirá
mi EDP.
El dominio.
1
El espacio discreto.
xi = (i − 1) ∗ ∆x, i = 1, 2, ..., M
tn = (n − 1) ∗ ∆t, n = 1, 2, ..., N
donde
L T
∆x = , ∆t = .
M −1 N −1 Figura 2. Dominio con un mallado
rectangular del problema.
u(xi , tn ) ≡ uni
CF:
2
Aproximaciones de la derivada.
∂u ∂2u
(xi , tn ) = c2 2 (xi , tn ) , i = 2, ..., M − 1, n = 2, ..., N
∂t ∂x
o equivalentemente en nuestra notación
n 2 n
∂u ∂ u
= c2 , i = 2, ..., M − 1, n = 2, ..., N
∂t i ∂x2 i
La ecuación anterior simplemente es una evaluación de las derivadas en un punto y no una aproxi-
mación.
Ahora deseamos aproximar nuestras derivadas usando los puntos de nuestro mallado. A continuación
se presentan estas aproximaciones:
n
∂u un+1 − uni
≈ i , n = 2, ..., N (4)
∂t i ∆t
n
∂2u uni+1 − 2uni + uni−1
≈ , i = 2, ..., M − 1 (5)
∂x2 i ∆x2
Las cuales son las aproximaciones de primer y segundo orden para la primera y la segunda deri-
vada de una función. Estas aproximaciones son obtenidas mediante desarrollos de serie de Taylor
alrededor del punto (xi , tn ) (TAREA).
∆t
un+1 = uni + c2 uni+1 − 2uni + uni−1
i 2
∆x
y si llamamos
∆t
r = c2
∆x2
3
Implementación.
Por ejemplo, supongamos que deseamos calcular % Aplicacion de las condiciones ...
la segunda fila, es decir para n = 2, entonces iniciales y de frontera
u = zeros (N,M);
for n=1:N
u2i = u1i + r u1i+1 − 2u1i + u1i−1
u(n,1) = ... ;
u(n,M) = ... ;
para i = 2, ..., M − 1. Pero tenemos que todos end
los valores de u en la posición n = 1 son ya for i=1:M
conocidos. Entonces para cualquier i todos los u(1,i) = ...;
end
valores del lado derecho pueden ser calculados.
% Calculo de los puntos interiores
El punto u21 (i = 2) es un valor de frontera el for n=2:N
cual ya lo conocemos: for i=2:M-1
u(n,m) = ... ;
u21 = 0. end
end
El siguiente punto sería u22 (i = 2): % Dibujar
mesh(x,t,u)
u22 = u12 + r u13 − 2u12 + u11
end
donde todos los puntos del lado derecho son ya
conocidos y pertenecen al paso de tiempo an-
terior. Y así continuamos llenando toda la fila Figura 5. Algoritmo de implementación de la
correspondiente al paso de tiempo n = 2. ecuación en diferencias.
Solución final.
A continuación está la solución final en diferentes formatos de la ecuación de calor usando una barra
de L = 1, coeficiente c = 1 y la condición inicial
3 1
f (x) = sen(πx) − sen(3πx)
2 2
en varios tiempos finales con M = 200 y N = 20 puntos en la dirección x y t respectivamente.