i am still not getting the curve that simulate the tempearture distributed along the column height, please recommend to me what modification i i should do in order to obtain the curve
please help me modify the code i want to simulate the temperature profile distributed along the height of the adsorption column
12 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Ofentse Maila
el 30 de Jun. de 2023
Comentada: Torsten
el 1 de Jul. de 2023
% Constants
L = 0.050; % Column height (m)
N = 100; % Number of grid points
dz = L / (N-1); % Grid spacing (Note: modified to include boundary points)
tFinal = 100.0; % Final time (s)
dt = 1.0; % Time step size
% Physical properties
lambda_L = 1.0; % Thermal conductivity of liquid phase (W/mK)
rho_p = 1000.0; % Particle density (kg/m^3)
C_g = 1000.0; % Heat capacity of gas phase (J/kgK)
epsilon = 0.4; % Void fraction
h_f = 100.0; % Heat transfer coefficient between gas and solid phases (W/m^2K)
a_s = 0.01; % Surface area per unit volume of solid phase (m^2/m^3)
h_w = 5000.0; % Heat transfer coefficient between gas phase and wall (W/m^2K)
d_int = 0.1; % Internal diameter of the column (m)
% Initialization
T = 298.15 * ones(N, 1); % Initial temperature (K)
T(N) = 393.15; % Boundary condition at the top of the column (K)
% Finite difference method
numSteps = round(tFinal / dt);
for step = 1:numSteps
% Temperature profile update
for i = 2:(N-1)
T(i) = T(i) + dt * ((lambda_L / dz^2) * (T(i+1) - 2 * T(i) + T(i-1)) + ...
(rho_p * C_g / dz) * (T(i) - T(i-1)) + ...
(C_g * rho_p / dt) * (T(i) - 298.15) + ...
((1 - epsilon) / epsilon) * h_f * a_s * (T(i) - T(N)) + ...
(4 * h_w / (epsilon * d_int)) * (T(i) - T(1)));
end
% Boundary conditions update
T(1) = T(2); % Temperature at the bottom of the column (adiabatic)
T(N) = 273.14; % Boundary condition at the top of the column (K)
end
% Plotting
z = linspace(0, L, N);
figure;
plot(z, T);
xlabel('Column Height (m)');
ylabel('Temperature (K)');
title('Temperature Distribution in the Adsorption Column');
2 comentarios
Torsten
el 1 de Jul. de 2023
What is the mathematical model for the temperature ? Could you supply the PDE with initial and boundary conditions ? Your discretized form from above looks quite strange.
Respuesta aceptada
Torsten
el 1 de Jul. de 2023
Movida: Torsten
el 1 de Jul. de 2023
If you don't want to save the temperatures for all time steps, you need at least two arrays T_old and T_new such that your advancing in time would somehow look like
T_new(i) = T_old(i) + dt*...
instead of
T(i) = T(i) + dt * ...
The latter will make problems because you mix old and new temperatures in the expressions following the dt * .
0 comentarios
Más respuestas (0)
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!