Ecuación del calor ( ALA )
Contenido
1 Solución fundamental de la ecuación del calor
Anteriormente se han representado diferentes soluciones de la ecuación del calor en una dimensión. En este apartado, se profundizará en la existencia de una función matemática que describe como se propaga y disipa el calor en un medio a lo largo del tiempo, denominada solución fundamental de la ecuación del calor. En este primer caso, se realizará para dimensión 1, la cual toma la forma de una función Gaussiana. Sin embargo, posteriormente se ampliará esta a una segunda dimensión.
La expresión de esta es la siguiente:
Para su correcta comprensión, se va a realizar a continuación una representación de la solución fundamental de la ecuación del calor en dimensión 1, particularizando el dominio espacial en el intervalo [-1,1] y el dominio temporal en el intervalo [0.01,1]. Para ello, se ha creado el siguiente código, explicado en las anotaciones de él.
clear
close all
format long
% Se define un vector de 100 puntos equidistantes en el dominio propuesto.
x=linspace(-1,1,100); % Vector de la variable espacial.
t=logspace(-2,0,100); % Vector de la variable temporal. En este caso se utiliza la función logspace pues se pretende obtener el vector de puntos en escala logarítmica.
% A continuación se calcula la solución de la ecuación del calor en dimensión 1 en los diferentes puntos obtenidos anteriormente.
u =zeros(length(x),length(t)); % Se crea la siguiente matriz de ceros para ir introduciendo los valores que se obtengan de la solución en cada uno de los puntos.
for i=1:length(t)
u(:,i)=1./sqrt(4*pi*t(i))*exp(-x.^2./(4*t(i))); % Mediante este bucle se va intriduciendo en cada elemento de la matriz el valor dado al evaluarla en la solución fundamental.
end
%Se grafica la solución obtenida.
[X,T]=meshgrid(x,t);
surf(X,T,u);
xlabel('x');
ylabel('t');
zlabel('u(x,t)');
title('Solución fundamental de la ecuación del calor en dimensión 1');
La representación obtenida tras ejecutar el código anterior es la siguiente:
Como se observa en la imagen, la gráfica alcanza un máximo en el intervalo espacial y temporal [-1,0]x[0.01,0.25], el cual representa una propagación superior del calor cuando las variables alcanzan dichos valores. Sin embargo, se observa que en el resto de nuestro dominio, la propagación del calor sufre cambios inferiores, generando gráficamente una superficie ligeramente plana.
2 Solución de la ecuación del calor mediante la convolución
2.1 Teorema
Sea f una función continua y acotada en todos los reales, se cumple que [math] u(x,t) = \int_{-\infty}^{\infty} K(x-y,t)·u_0(y) dy [/math]
A continuación se presenta una nueva manera de encontrar la solución de la ecuación del calor ut-uxx=0 en valores de x reales. Para ello, se explicará mediante el siguiente ejemplo.
Sea la condición inicial u0(x)=1[-1,1], la solución a la ecuación anterior viene dada por la convolución siguiente, donde K(x,t) es la solución fundamental explicada en apartados anteriores:
Se ha realizado el siguiente código en el cual se evalúa y representa gráficamente la convolución para valores del tiempo iguales a t=0.001, t=0.01 y t=0.1. A pesar de que el dominio de la x sean todos los reales, en la representación se ha decidido realizar la gráfica en el intervalo [-3,3], pues con intervalos superiores se dificulta su observación:
clear
close all
format long
% Se define la solución fundamental de la ecuación del calor en dimensión 1
K=@(x,t) 1./sqrt(4*pi*t)*exp(-x.^2./(4*t));
% Se define la condición inicial en el intervalo dado
u0=@(x)(x>=-1 & x<=1);
% Se define el vector que almacena los instantes de tiempo en lo que queremos evaluar la solución.
t_valores = [0.001, 0.01, 0.1];
% Se define el vector que alamcena los 1000 puntos equidistantes en el dominio de la variable espacial. Para que la representación se observe de manera óptima se toma el siguiente dominio. Aún así se puede representa en toda la recta real
x = linspace(-3, 3, 1000);
dx = x(2) - x(1);
% Cálculo de la solución en los diferentes valores del vector de tiempo
figure;
for i = 1:length(t_valores)
t = t_valores(i);
% Aproximación de la integral utilizando la fórmula del trapecio
integral_approx = zeros(size(x));
for j = 1:length(x)
y = x(j);
integral_approx(j) = sum(K(x - y, t) .* u0(x)) * dx; % Aplicación de la fórmula del trapecio
end
% Representación gráfica
subplot(1, length(t_valores), i);
plot(x, integral_approx);
xlabel('x');
ylabel('u(x, t)');
title(['t = ', num2str(t)]);
end
Una vez ejecutado el código anterior, se obtiene una representación gráfica de la solución en cada uno de los instantes. A continuación se presenta y posteriormente se analiza.
Analizando la representación gráfica anterior se llega a la conclusión de que ( cuanto mas pequeño el tiempo mas tiende a la condición inicial)
3 Solución fundamental de la ecuación del calor en dimensión 2
En los apartado