Resolva os problemas abaixo de EDP e faça o programa no Matlab.
\left\{\begin{array}{c}\frac{\partial T}{\partial t}=\alpha \frac{\partial^{2} T}{\partial x^{2}} \\\ T(0, t)=50^{0} \\\ T(L, t)=30^{0} \\\ T(x, 0)=x\end{array}\right.
Onde o comprimento da barra é 0<x<L, L=5, e a difusividade térmica é \alpha=1.

Passo 1

O enunciado pede para resolver a equação do calor unidimensional
\frac{\partial T}{\partial t} \;=\;\alpha\,\frac{\partial^2 T}{\partial x^2}
em 0<x<L com L=5, \alpha=1, condições de contorno
T(0,t)=50,\quad T(L,t)=30
e condição inicial
T(x,0)=x.
O método clássico é separar a solução em parte estacionária (resolver o problema de Dirichlet independente de t) e parte transiente que satisfaz condições homogêneas.

Passo 2

Procuramos primeiro a solução estacionária T_s(x) que depende só de x e satisfaz
\frac{d^2 T_s}{dx^2}=0,\quad T_s(0)=50,\;T_s(5)=30.
Integrando duas vezes vem
T_s(x)=A\,x+B
e impondo T_s(0)=B=50, T_s(5)=5A+50=30\implies A=-4. Logo
T_s(x)=-4x+50.

Passo 3

Definimos a parte transiente
U(x,t)=T(x,t)-T_s(x).
Então U satisfaz
U_t=U_{xx},\quad U(0,t)=U(5,t)=0,
e condição inicial
U(x,0)=T(x,0)-T_s(x)=x-(-4x+50)=5x-50.

Passo 4

Pela separação de variáveis ou séries de Fourier em senos, a solução geral é
U(x,t)=\sum_{n=1}^{\infty}B_n\sin\!\bigl(n\pi x/5\bigr)\,\exp\!\Bigl(-\bigl(n\pi/5\bigr)^2 t\Bigr),
onde
B_n=\frac{2}{5}\int_{0}^{5}(5x-50)\sin\!\bigl(n\pi x/5\bigr)\,dx.
Fazendo a integral por partes encontra-se
B_n=\frac{50}{n\pi}\Bigl[(-1)^n-2\Bigr].

Passo 5

Logo a solução completa é
T(x,t)=T_s(x)+U(x,t) =-4x+50 +\sum_{n=1}^{\infty}\frac{50\bigl((-1)^n-2\bigr)}{n\pi}\, \sin\!\bigl(\tfrac{n\pi x}{5}\bigr)\, \exp\!\Bigl(-\tfrac{n^2\pi^2}{25}\,t\Bigr).

Passo 6

Uma implementação em método de diferenças finitas explícito no MATLAB, para aproximar T(x,t), pode ser:
% Parâmetros
L   = 5;      alpha = 1;
Nx  = 51;     Nt    = 10000;
dx  = L/(Nx-1);
dt  = 0.001;  % escolher dt < dx^2/(2*alpha) para estabilidade
x   = linspace(0,L,Nx)';
% Inicialização
T    = x;        
T(1) = 50;       
T(end)= 30;
% Monta matrizes para iterar
for k = 1:Nt
  Tn = T;
  for i = 2:Nx-1
    T(i) = Tn(i) + alpha*dt/dx^2*(Tn(i+1)-2*Tn(i)+Tn(i-1));
  end
  % Reimpor contornos
  T(1)   = 50;
  T(end) = 30;
end
% Plot da solução final
plot(x,T), xlabel('x'), ylabel('T(x,t_{final})')
title('Temperatura na barra em t_{final}')

Resposta

A solução analítica é
T(x,t)=-4x+50 +\sum_{n=1}^{\infty}\frac{50\bigl((-1)^n-2\bigr)}{n\pi}\, \sin\!\bigl(\tfrac{n\pi x}{5}\bigr)\, \exp\!\Bigl(-\tfrac{n^2\pi^2}{25}\,t\Bigr).
O programa MATLAB acima implementa uma aproximação por diferenças finitas ao problema.

Exercícios relacionados