Torres de enfriamiento hiperbólicas (Grupo 18)
| Trabajo realizado por estudiantes | |
|---|---|
| Título | Torres de enfriamiento hiperbólicas (Grupo 18) |
| Asignatura | Teoría de Campos |
| Curso | 2024-25 |
| Autores |
|
| Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura | |
Las torres de enfriamiento hiperbólicas son estructuras icónicas en la ingeniería moderna, utilizadas principalmente en centrales termoeléctricas y nucleares para la disipación de calor residual. Estas torres, caracterizadas por su forma hiperbólica, no solo destacan por su eficiencia térmica, sino también por su diseño estructural optimizado, que combina funcionalidad y resistencia frente a las fuerzas externas como el viento.
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a [math]\dfrac{\scriptsize 2}{\scriptsize 3}[/math] de la altura H de la torre. La superficie de la torre sigue la forma de un hiperboloide hiperbólico con centro a la altura [math]\dfrac{\scriptsize 2}{\scriptsize 3}H[/math] , el cual, en coordenadas cartesianas, tiene la siguiente forma:
Para los siguientes datos, podemos suponer:
Uno de los factores a tener en cuenta, es el viento. Este, ejerce una presión lateral que varía en función de la altura. La velocidad escalar del viento la podemos describir con la siguiente función:
Con base en esta velocidad del viento, la presión ejercida por el viento sobre la superficie de la torre puede expresarse de la siguiente manera:
Además, la torre esta expuesta a unas fuerzas laterales, estas vienen descritas por la siguiente función:
Finalmente, el campo de temperaturas es representado como:
Contenido
- 1 .-Ecuación de la torre.
- 2 .-Ecuación de la torre como una superficie reglada.
- 3 .-Representación de la superficie parametrizada.
- 4 .-Representación del campo escalar de presiones.
- 5 .-Representación de la fuerza en la superficie de la mitad de la torre expuesta.
- 6 .-Representación del campo gradiente de temperatura.
- 7 .-Superficies isotermas.
- 8 .-Forma de la torre si [math]R_{\text{máx}}=R_{\text{mín}}=50m[/math].
- 9 .-Uso de estructuras hiperboloides en ingeniería.
1 .-Ecuación de la torre.
Para definir la torre es necesario hallar el valor de a, c y [math]z_{\text{0}}[/math]. Para ello pasamos la ecuación a coordenadas cilíndricas:A continuación, hallamos los parámetros a, c y [math]z_{\text{0}}[/math].
Según el enunciado, obtenemos la coordenada del centro: [math]z_{\text{0}}[/math]=80m.
Para hallar el valor de [math]\mathbf{a}[/math] sustituimos en la ecuación. [math]\dfrac{20^2}{a^2} - \dfrac{(80 - 80)^2}{c^2} = 1[/math], obtenemos que [math]\mathbf{a}[/math]=20.
Tras sustituir de nuevo, hallamos el valor de [math]\mathbf{c}[/math]=34.17
2 .-Ecuación de la torre como una superficie reglada.
3 .-Representación de la superficie parametrizada.
A continuación, vemos la representación de la superficie parametrizada ayudándonos de los parámetros calculados anteriormente.
% Parámetros de la torre
a = 20; % Radio mínimo
z0 = 80; % Centro del hiperboloide (a 2/3 de H)
c = 34.17; % Valor de 'c'
H = 120; % Altura total
% Crear la malla para parametrizar la superficie
u = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z (resolución angular)
v = linspace(0, H, 200); % Altura (resolución vertical)
[U, V] = meshgrid(u, v); % Crear mallas 2D para u y v
% Parametrización del hiperboloide
X = a * cos(U) .* sqrt(1 + ((V - z0) / c).^2);
Y = a * sin(U) .* sqrt(1 + ((V - z0) / c).^2);
Z = V;
% Representar la superficie
figure;
surf(X, Y, Z, 'EdgeColor', 'k', 'FaceColor', 'white', 'FaceAlpha', 0.9); % Color con malla
hold on;
xlabel('X (m)');
ylabel('Y (m)');
zlabel('Z (m)');
title('Superficie de la Torre de Enfriamiento');
axis equal; % Mantener proporciones
grid on; % Mostrar cuadrícula
view(3); % Vista en 3D4 .-Representación del campo escalar de presiones.
Suponiendo que la torre está sujeta a un viento paralelo al vector [math]\vec{i} + \vec{j}[/math] para la mitad expuesta de la torre.
% Parámetros dados
a = 20; % Parámetro a de la ecuación
z0 = 80; % Centro en z
c = 34.17; % Parámetro c de la ecuación
V0 = 15; % Velocidad inicial del viento
zref = 10; % Altura de referencia
alpha = 0.14; % Exponente de perfil de viento
rho_air = 1.225; % Densidad del aire estándar en kg/m^3
% Rango para v y ángulo u (solo la mitad expuesta)
v = linspace(0, 120, 100); % Altura de 0 a 120 m
u = linspace(0, pi, 100); % Ángulo u para la mitad expuesta
% Crear la superficie de la torre
[U, V] = meshgrid(u, v);
Rho = a * sqrt(1 + ((V - z0) / c).^2); % Ecuación de la torre
X = Rho .* cos(U);
Y = Rho .* sin(U);
% Calcular la velocidad del viento en función de v
V_z = V0 * (V / zref).^alpha;
% Calcular la presión del viento
P_z = 0.5 * rho_air .* V_z.^2;
% Visualización
figure;
surf(X, Y, V, P_z, 'EdgeColor', 'none'); % Graficar superficie con colores según presión
colormap(jet); % Mapa de colores tipo 'jet'
colorbar; % Agregar barra de colores
title('Mapa de Presión del Viento en la Mitad de la Torre Expuesta');
xlabel('X (m)');
ylabel('Y (m)');
zlabel('Z (m)');
view([-120, 30]); % Vista diagonal y desde atrás
axis equal;5 .-Representación de la fuerza en la superficie de la mitad de la torre expuesta.
Debido a la presión del viento, se genera una fuerza la cual actúa sobre la mitad de la torre expuesta. Aquí se muestra su representación:
% Parámetros dados
a = 20; % Parámetro a de la ecuación
z0 = 80; % Centro en z
c = 34.17; % Parámetro c de la ecuación
V0 = 15; % Velocidad inicial del viento
zref = 10; % Altura de referencia
alpha = 0.14; % Exponente de perfil de viento
rho_air = 1.225; % Densidad del aire estándar en kg/m^3
% Rango para v y ángulo u (solo la mitad expuesta)
v = linspace(0, 120, 30); % Altura de 0 a 120 m
u = linspace(0, pi, 30); % Ángulo u para la mitad expuesta
% Crear la superficie de la torre
[U, V] = meshgrid(u, v);
Rho = a * sqrt(1 + ((V - z0) / c).^2); % Ecuación de la torre
X = Rho .* cos(U);
Y = Rho .* sin(U);
% Calcular la velocidad del viento en función de v
V_v = V0 * (V / zref).^alpha;
% Calcular la presión del viento
P_v = 0.5 * rho_air .* V_v.^2;
% Calcular los vectores normales a la superficie
% Derivadas parciales de la superficie
[URho, VRho] = gradient(Rho, u, v); % Derivadas parciales respecto a u y v
[UX, VZ] = gradient(V, u, v); % Derivadas parciales respecto a u y v
% Componentes del vector normal (gradientes cruzados)
Nx = -URho .* VZ;
Ny = -VRho .* VZ;
Nz = URho .* VRho - VRho .* UX;
% Normalizar el vector normal
N_magnitude = sqrt(Nx.^2 + Ny.^2 + Nz.^2);
Nx = Nx ./ N_magnitude;
Ny = Ny ./ N_magnitude;
Nz = Nz ./ N_magnitude;
% Calcular el campo de fuerza
Fx = -P_v .* Nx;
Fy = -P_v .* Ny;
Fz = -P_v .* Nz;
% Normalizar el campo de fuerza para uniformidad en las direcciones
F_magnitude = sqrt(Fx.^2 + Fy.^2 + Fz.^2);
Fx = Fx ./ F_magnitude;
Fy = Fy ./ F_magnitude;
Fz = Fz ./ F_magnitude;
% Visualización
figure;
quiver3(X, Y, V, Fx, Fy, Fz, 'k'); % Campo vectorial con flechas negras
title('Campo Vectorial de la Presión del Viento en la Mitad de la Torre');
xlabel('X (m)');
ylabel('Y (m)');
zlabel('Z (m)');
view([-120, 45]); % Vista más elevada desde atrás
axis equal;
grid on;6 .-Representación del campo gradiente de temperatura.
Consiste en la representación del campo del gradiente de temperatura en los puntos de un plano que corta la torre
verticalmente pasando por el eje de simetría. Además, la animación muestra la temperatura en varios
planos paralelos al suelo.
% Parámetros
a = 20; % Semi-eje en x e y (m)
c = 34.17; % Semi-eje en z (m)
z0 = 80; % Centro del hiperboloide (altura)
H = 120; % Altura total de la torre (m)
Rmax = 50; % Radio máximo (m)
Tbase = 70; % Temperatura en la base (°C)
Ttop = 25; % Temperatura en la parte superior (°C)
DeltaTz = Tbase - Ttop;
DeltaTr = 5; % Variación máxima radial (°C)
n = 1.5; % Exponente de convección
% Malla para el hiperboloide
theta = linspace(0, 2*pi, 50); % Ángulo alrededor del eje z
z = linspace(0, H, 50); % Coordenada vertical
% Iniciar figura
figure;
% Ciclo para la animación
for i = 1:length(z)
% Borrar la figura de la iteración anterior
clf;
% Dibujar todas las capas
hold on;
for j = 1:i
% Altura de la capa actual
zi = z(j);
% Radio en esta altura
r = sqrt((1 + (zi - z0)^2 / c^2) * a^2);
% Coordenadas de la capa
x = r * cos(theta);
y = r * sin(theta);
z_layer = zi * ones(size(x));
% Temperatura en esta capa
T_layer = Tbase - DeltaTz * (zi / H)^n - DeltaTr * (1 - exp(-r^2 / (Rmax^2 - r^2)));
% Dibujar la capa
fill3(x, y, z_layer, T_layer, 'EdgeColor', 'none');
end
% Configuración gráfica
colormap('jet');
colorbar;
caxis([Ttop, Tbase]); % Escala de colores
xlabel('x (m)');
ylabel('y (m)');
zlabel('z (m)');
title('Construcción del hiperboloide con el campo de temperatura');
xlim([-Rmax, Rmax]);
ylim([-Rmax, Rmax]);
zlim([0, H]);
view(3);La siguiente figura muestra la representación el campo del gradiente de temperatura en los puntos de un plano que corta la torre
verticalmente pasando por el eje de simetría, así como en los puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo.
% Parámetros de la torre
Rmax = 50; % Radio máximo (m)
H = 120; % Altura total (m)
z_horizontal = (2/3) * H; % Altura del plano
% Parámetros para la malla dentro del círculo
res = 20; % Resolución ajustada para mayor densidad de flechas
x = linspace(-Rmax, Rmax, res);
y = linspace(-Rmax, Rmax, res);
[X, Y] = meshgrid(x, y);
% Filtrar puntos dentro del círculo
mask = X.^2 + Y.^2 <= Rmax^2; % Solo puntos dentro del radio máximo
X = X(mask);
Y = Y(mask);
% Flechas perpendiculares apuntando hacia abajo
Tx_grad = zeros(size(X)); % No hay componente en X
Ty_grad = zeros(size(Y)); % No hay componente en Y
Tz_grad = -0.8 * ones(size(X)); % Flechas hacia abajo, magnitud ajustada
% Representación gráfica
figure;
hold on;
% Flechas del gradiente
quiver3(X, Y, z_horizontal * ones(size(X)), Tx_grad, Ty_grad, Tz_grad, 0.5, ...
'Color', [0.3 0.5 1], 'LineWidth', 1, 'MaxHeadSize', 2);
% Contorno circular de la torre
theta_circle = linspace(0, 2*pi, 100);
x_circle = Rmax * cos(theta_circle);
y_circle = Rmax * sin(theta_circle);
z_circle = z_horizontal * ones(size(theta_circle));
plot3(x_circle, y_circle, z_circle, 'm--', 'LineWidth', 2);
% Configuración de la gráfica
title('Gradiente de temperatura en el plano z = 2/3 H');
xlabel('X (m)');
ylabel('Y (m)');
zlabel('Altura Z (m)');
axis equal;
grid on;
view(45, 30); % Vista 3D inclinada para mejor percepción7 .-Superficies isotermas.
Una superficie isoterma, es aquella que tiene una temperatura constante en todos los puntos de la misma. Para visualizarlo, hemos tomado varias temperaturas para ver dichas superficies. Estas, vendrán acompañadas de su gradiente.
% Parámetros de la torre
a = 20; % Semi-eje en x e y (m)
c = 34.17; % Semi-eje en z (m)
z0 = 80; % Centro del hiperboloide (altura)
H = 120; % Altura total de la torre (m)
Rmax = 50; % Radio máximo (m)
Tbase = 70; % Temperatura en la base (°C)
Ttop = 25; % Temperatura en la parte superior (°C)
DeltaTz = Tbase - Ttop;
DeltaTr = 5; % Variación máxima radial (°C)
n = 1.5; % Exponente de convección
% Rango de temperaturas para las superficies isotérmicas
T_isos = linspace(Ttop, Tbase, 6); % 6 niveles isotérmicos
% Crear malla 3D para el hiperboloide
theta = linspace(0, 2*pi, 50); % Ángulo
z = linspace(0, H, 50); % Altura
[Theta, Z] = meshgrid(theta, z);
% Coordenadas de la superficie hiperboloide
R = sqrt((1 + ((Z - z0).^2) / c^2) * a^2); % Radio en cada altura
X = R .* cos(Theta);
Y = R .* sin(Theta);
% Calcular campo de temperatura
T = Tbase - DeltaTz * (Z / H).^n - DeltaTr * (1 - exp(-R.^2 ./ (Rmax^2 - R.^2)));
% Calcular gradientes de temperatura
[Tx, Tz] = gradient(T, mean(diff(X(1,:))), mean(diff(Z(:,1))));
Ty = Tx; % Simetría en Theta
% Iniciar figura
figure;
% Crear animación de superficies isotérmicas
for i = 1:length(T_isos)
% Seleccionar superficie isotérmica actual
T_iso = T_isos(i);
% Crear máscara lógica para identificar la superficie
iso_mask = abs(T - T_iso) < 0.5; % Tolerancia de ±0.5°C
% Filtrar puntos isotérmicos
X_iso = X(iso_mask);
Y_iso = Y(iso_mask);
Z_iso = Z(iso_mask);
T_iso_colors = T(iso_mask);
% Graficar puntos de la superficie isotérmica
scatter3(X_iso, Y_iso, Z_iso, 20, T_iso_colors, 'filled');
hold on;
% Superponer gradiente de temperatura
quiver3(X_iso, Y_iso, Z_iso, Tx(iso_mask), Ty(iso_mask), Tz(iso_mask), ...
'k', 'AutoScaleFactor', 0.5);
% Configuración gráfica
colormap('jet');
colorbar;
caxis([Ttop, Tbase]); % Escala de colores de temperatura
xlabel('X (m)');
ylabel('Y (m)');
zlabel('Z (m)');
title(['Superficie isotérmica: T = ', num2str(T_iso), '°C']);
xlim([-Rmax, Rmax]);
ylim([-Rmax, Rmax]);
zlim([0, H]);
view(3);
grid on;
% Pausa para animación
pause(1);
% Limpiar para el siguiente cuadro
hold off;
end8 .-Forma de la torre si [math]R_{\text{máx}}=R_{\text{mín}}=50m[/math].
Considerando lo siguiente, la forma de la torre sería cilíndrica debido a que el radio es constante.