Beruflich Dokumente
Kultur Dokumente
Considérese una barra sólida de sección transversal uniforme y densidad invariable ubicada en un
sistema de referencia como se muestra en la figura:
𝑥=0 𝑥=𝐿
𝜕𝑇(𝑥, 𝑡) 𝜕 2 𝑇(𝑥, 𝑡)
= 𝑎2
𝜕𝑡 𝜕𝑥 2
𝜕𝑇(𝑥, 𝑡) 𝜕 2 𝑇(𝑥, 𝑡)
= 𝑎2
𝜕𝑡 𝜕𝑥 2
Para el efecto, es bueno recordar que se fácilmente se pueden realizar aproximaciones para las
derivadas, fijando un pequeño paso ℎ en 𝑥, y 𝑘 en 𝑦.
𝜕𝑇(𝑥, 𝑡) 𝜕 2 𝑇(𝑥, 𝑡)
= 𝑎2
𝜕𝑡 𝜕𝑥 2
𝑇(𝑥, 𝑡 + 𝑘) − 𝑇(𝑥, 𝑡) 𝑇(𝑥 − ℎ, 𝑡) − 2𝑇(𝑥, 𝑡) + 𝑇(𝑥 + ℎ, 𝑡)
= 𝑎2
𝑘 ℎ2
𝑎2 𝑘
𝑇(𝑥, 𝑡 + 𝑘) = [𝑇(𝑥 − ℎ, 𝑡) − 2𝑇(𝑥, 𝑡) + 𝑇(𝑥 + ℎ, 𝑡)] + 𝑇(𝑥, 𝑡)
ℎ2
𝑎2 𝑘
Denotando ℎ2
con el parámetro 𝜆, se consigue:
Que permite determinar los valores de la temperatura para cada fila en la posición de 𝑡 + 𝑘𝑖 ,
utilizando los valores de la fila 𝑡 + 𝑘𝑖−1 ~ 𝑥 − ℎ, 𝑥, 𝑥 + ℎ.
Código:
function[T]= solEcOnda(f,g,a,L,h,tf )
x=0:h:L;
N=length(x);
t=0:k:tf;
M=length(t);
T=zeros(M,N);
% t
% ^
% |
% | [ T ]
% |
% M |
% --------------> x
% N
for m=2:M-1
for n=2:N-1
T(M-m, n)= w.*(T(M-m+1,n-1)-2.*T(M-m+1,n) + T(M-m+1,n+1) ) + T(M-
m+1,n);
end
end
figure(1);
for m=1:M;
plot(x,T(M-10,:),'g'), hold on, plot([0,L],[0,0]),hold on,plot(x,T(M-
m+1,:),'r', 'LineWidth',3), hold on, grid on,
axis([0,L,min(min(T)),max(max(T))]);
pause(0.0001);
hold off;
end
end
El método asegura estabilidad, si se cumple que:
𝑎2 𝑘 1
≤
ℎ2 2
ℎ2
𝑘≤
2𝑎2
Tal como se llevó a cabo en el código.