Tubos de Calor
Tubos de Calor
% Paso 1
A = zeros(1,N);
B = zeros(1,N);
C = zeros(1,N);
D = zeros(1,N);
W = zeros(1,N);
V = zeros(1,N);
Z = zeros(1,N);
U = zeros(1,N);
L = zeros(1,N);
N1 = N-1;
H = (b-a)/(N+1);
% Definicion de parámetros
beta = sig*emisividad/k;
alpha = h/k;
gamma = (h*T_amb + sig*emisividad*T_surr^4)/k;
F = @(x,T,Tp) beta*T^4 + alpha*T - gamma;
FT = @(x,T,Tp) 4*beta*T^3 + alpha;
FTP = @(x,T,Tp) 0;
% Paso 2
for I = 1 : N
W(I) = ALPHA+I*H*(BETA-ALPHA)/(b-a);
end
% Paso 3
K = 1;
% Paso 4
while K <= M
% Paso 5
X = a+H;
T = (W(2)-ALPHA)/(2*H);
A(1) = 2+H*H*FT(X,W(1),T);
B(1) = -1+H*FTP(X,W(1),T)/2;
D(1) = -(2*W(1)-W(2)-ALPHA+H*H*F(X,W(1),T));
% Paso 6
for I = 2 : N1
X = a+I*H;
T = (W(I+1)-W(I-1))/(2*H);
A(I) = 2+H*H*FT(X,W(I),T);
B(I) = -1+H*FTP(X,W(I),T)/2;
C(I) = -1-H*FTP(X,W(I),T)/2;
1
D(I) = -(2*W(I)-W(I+1)-W(I-1)+H*H*F(X,W(I),T));
end
% Paso 7
X = b - H;
T = (BETA-W(N-1))/(2*H);
A(N) = 2+H*H*FT(X,W(N),T);
C(N) = -1-H*FTP(X,W(N),T)/2;
D(N) = -(2*W(N)-W(N-1)-BETA+H*H*F(X,W(N),T));
% PASO 8
% PASO 8 hasta 12 resuelve un sistema lineal tridiagonal usando
% Reducción de Crout
L(1) = A(1);
U(1) = B(1)/A(1);
Z(1) = D(1)/L(1);
% PASO 9
for I = 2 : N1
L(I) = A(I)-C(I)*U(I-1);
U(I) = B(I)/L(I);
Z(I) = (D(I)-C(I)*Z(I-1))/L(I);
end
% PASO 10
L(N) = A(N)-C(N)*U(N-1);
Z(N) = (D(N)-C(N)*Z(N-1))/L(N);
% PASO 11 Actualización de W
V(N) = Z(N);
W(N) = W(N)+V(N);
% PASO 12
for J = 1 : N1
I = N-J;
V(I) = Z(I)-U(I)*V(I+1);
W(I) = W(I)+V(I);
end
% Paso 13
% Prueba de precisión
VMAX = max(abs(V));
if VMAX <= TOL
break;
end
%Paso 14
% Incremento de iteración
K = K + 1;
end
2
fprintf(['Número de iteraciones requeridas para k = %0.2f, emisividad = %0.2f:'
...
' %d\n'], k, emisividad, K);
% Paso 9
x_output = [a, a + (1:N) * H, b]';
w_output = [ALPHA, W, BETA]';
end
3
0.080000 347.117801
0.090000 344.663251
0.100000 342.214660
0.110000 339.771770
0.120000 337.334324
0.130000 334.902064
0.140000 332.474734
0.150000 330.052079
0.160000 327.633842
0.170000 325.219770
0.180000 322.809608
0.190000 320.403102
0.200000 318.000000
----------------------
% Aluminio
k_aluminio = 237;%conductividad térmica en W/(m·K).
emisividad_aluminio = 0.05;% emisividad (adimensional)
h_aluminio = 10;%coeficiente de de transferencia de calor por conveccion (W/(m²·K)).
[x_output_aluminio, w_output_aluminio] = solve_and_plot(a, b, ALPHA, BETA, N, ...
TOL, M, k_aluminio, emisividad_aluminio, h_aluminio, T_amb, T_surr, 'g');
% Cobre Pulido
k_cobre_pulido = 405; %conductividad térmica en W/(m·K).
emisividad_cobre_pulido = 0.02;% emisividad (adimensional)
h_cobre_pulido = 300;%coeficiente de de transferencia de calor
% por conveccion (W/(m²·K)).
[x_output_cobre_pulido, w_output_cobre_pulido] = solve_and_plot(a, b, ALPHA, ...
BETA, N, TOL, M, k_cobre_pulido, emisividad_cobre_pulido, h_cobre_pulido, ...
T_amb, T_surr, 'b');
4
Número de iteraciones requeridas para k = 405.00, emisividad = 0.02: 2
Resultados:
----------------------
x(m) T(K)
----------------------
0.000000 367.000000
0.010000 364.506556
0.020000 362.018783
0.030000 359.536495
0.040000 357.059509
0.050000 354.587641
0.060000 352.120708
0.070000 349.658527
0.080000 347.200916
0.090000 344.747692
0.100000 342.298674
0.110000 339.853680
0.120000 337.412528
0.130000 334.975038
0.140000 332.541030
0.150000 330.110323
0.160000 327.682736
0.170000 325.258090
0.180000 322.836205
0.190000 320.416901
0.200000 318.000000
----------------------
5
set(findall(gcf,'-property','FontSize'),'FontSize',12);
6
7