Documente Academic
Documente Profesional
Documente Cultură
1α∂T∂t=∂2T∂r2+1r∂T∂r0≤r<R,t>01α∂T∂t=∂2T∂r2+1r∂T∂r 0≤r<R,
t>0
1α∂u∂t=∂2u∂r2+1r∂u∂r0<r<Rt>0⋅contorno⇒u(R,t)=0⋅inicial⇒u(x,0)=T0−Ts1
α∂u∂t=∂2u∂r2+1r∂u∂r 0<r<R t>0· contorno⇒
u(R,t)=0· inicial⇒ u(x,0)=T0−Ts
FαdGdt=G(d2Fd2r+1rdFdr)1F(d2Fd2r+1rdFdr)=1α1GdGdt=−k2R2FαdGdt=G(d2Fd2r+1
rdFdr)1F(d2Fd2r+1rdFdr)=1α1GdGdt=−k2R2
1F(d2Fd2r+1rdFdr)=−k2R21F(d2Fd2r+1rdFdr)=−k2R2
Condiciones de contorno
La condición de contorno en r=R es T(R,t)=Ts, o bien, u(R,t)=F(R)·G(t)=0. Las
raíces kn, son los valores de k que cumplen la ecuación transcendente J0(k)=0
u(r,t)=∞∑n=1AnJ0(knrR)exp(−k2nαR2t)u(r,t)=∑n=1∞AnJ0(knrR)exp
(−kn2αR2t)
Condición inicial
Los coeficientes An se determinan a partir de la distribución inicial de
temperaturas u(r,0)
u(r,0)=T0−Ts=∞∑n=1AnJ0(knrR)u(r,0)=T0−Ts=∑n=1∞AnJ0(knrR)
(T0−Ts)R∫0rJ0(kmrR)dr=∞∑n=1AnR∫0rJ0(kmrR)J0(knrR)dr(T0−Ts)R∫0rJ0(
kmrR)dr=AmR∫0rJ20(kmrR)dr(T0−Ts)∫0RrJ0(kmrR)dr=∑n=1∞An∫0
RrJ0(kmrR)J0(knrR)dr(T0−Ts)∫0RrJ0(kmrR)dr=Am∫0RrJ02(kmr
R)dr
(T0−Ts)1∫0xJ0(kmx)dx=Am1∫0xJ20(kmx)dx(T0−Ts)J1(km)km=12Am(J20(km)
+J21(km))Am=2(T0−Ts)J1(km)(J20(km)+J21(km))km(T0−Ts)∫01xJ0(kmx)dx=A
m∫01xJ02(kmx)dx(T0−Ts)J1(km)km=12Am(J02(km)+J12(km))
Am=2(T0−Ts)J1(km)(J02(km)+J12(km))km
>> syms x k;
>> int('x*besselj(0,k*x)^2',x,0,1)
ans= besselj(0, k)^2/2 + besselj(1, k)^2/2
>> int('x*besselj(0,k*x)',x,0,1)
ans =besselj(1, k)/k
Cambiando m por n y teniendo en cuenta que kn son las raíces de la ecuación
transcendente J0(k)=0. Los coeficientes An valen
An=2(T0−Ts)knJ1(kn)An=2(T0−Ts)knJ1(kn)
Solución completa
u(r,t)=2(T0−Ts)∞∑n=11knJ1(kn)J0(knrR)exp(−k2nαR2t)T(r,t)=u(r,t)+T(
r,∞)=Ts+2(T0−Ts)∞∑n=11knJ1(kn)J0(knrR)exp(−k2nαR2t)u(r,t)=2(T0−T
s)∑n=1∞1knJ1(kn)J0(knrR)exp(−kn2αR2t)T(r,t)=u(r,t)+T(r,∞)
=Ts+2(T0−Ts)∑n=1∞1knJ1(kn)J0(knrR)exp(−kn2αR2t)
Ejemplo
Representamos gráficamente la función J0(x), para estimar aproximadamente
donde se encuentran las raíces de la ecuación transcendente J0(x)=0.
La función raices calcula las raíces múltiples de la función f(x) buscando los
intervalos en los que dicha función cambia de signo y utilizando la función
MATLAB fzero para encontrarlas
function r = raices(f, x)
y=f(x);
indices=find(y(1:end-1).*y(2:end)<0);
r=zeros(1,length(indices));
for k=1:length(indices)
r(k)=fzero(f, [x(indices(k)), x(indices(k)+1)]);
end
end
Definimos la función temperatura_5 para calcular la distribución de
temperaturas a lo largo de de la dirección radial del cilindro en el instante t
function [r,T]=temperatura_5(T0,Ts,R,k,a2,t)
r=linspace(0,R,100);
if(t==0)
T=T0*ones(1,length(r));
return;
end
T=Ts*ones(1,length(r));
for n=1:length(k)
an=2*(T0-Ts)/(k(n)*besselj(1,k(n)));
T=T+an*exp(-k(n)^2*t/(a2*R^2))*besselj(0,(k(n)*r/R));
end
end
Creamos un script en el que establecemos la temperatura inicial T0, la
temperatura ambiente Ts, el radio R de un cilindro muy largo, el material del
cual está hecho el cilindro, (parámetro α). El script calcula un número elevado
de raíces kn de la ecuación transcendente y representa la distribución radial de
temperaturas del cilindro en varios instantes.
%raíces
x=linspace(0,100,100);
f=@(x) besselj(0,x);
k=raices(f,x);
hold on
axis([0 1 -5 100]);
for t=[10 500 1000 2000]
[x,T]=temperatura_5(T0,Ts,R,k,alfa,t);
plot(x,T,'displayName',num2str(t));
end
title('Evolución de la temperatura de un cilindro')
xlabel('r')
ylabel('Temperatura')
legend('-DynamicLegend','location','southwest')
grid on
hold off
Una vez obtenidas las raíces kn de la ecuación transcendente, J0(k)=0,
comprobamos las relaciones de ortogonalidad que hemos utilizado para calcular
los coeficientes An
1∫0xJ0(kmx)J0(knx)dx=0m≠n∫01xJ0(kmx)J0(knx)dx=0 m≠n
FUENTE: http://www.sc.ehu.es/sbweb/fisica3/transporte/cilindro/cilindro.html