Diferencia entre revisiones de «Torres de enfriamiento hiperbólicas (grupo 33)»
(→Cálculos para el cilíndro) |
(→Cálculos para el cilíndro) |
||
| Línea 502: | Línea 502: | ||
<math> | <math> | ||
| − | \int_{0}^{120 | + | \int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N |
</math> | </math> | ||
Revisión del 21:12 8 dic 2024
| Trabajo realizado por estudiantes | |
|---|---|
| Título | Torres de enfriamiento Hiperbólicas. Grupo 33 |
| Asignatura | Teoría de Campos |
| Curso | 2024-25 |
| Autores | Marcos Sanchez Martínez Guillermo Garrido Torres Carlos Aguado Esparrells Hector Perucho Conde |
| 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 fundamentales en la industria energética, ampliamente utilizadas desde mediados del siglo XX debido a su alta eficiencia en la transferencia de calor. Estas torres, con su distintiva forma hiperbólica, combinan propiedades geométricas y mecánicas que las hacen tanto resistentes como funcionales para optimizar los procesos de enfriamiento en plantas termoeléctricas y nucleares.
En este trabajo, se analiza el diseño y comportamiento de una torre de enfriamiento hiperbólica típica, considerando su geometría, las fuerzas inducidas por el viento en su superficie, y el campo de temperatura dentro de la estructura.
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 2/3 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 2/3H, el cual, en coordenadas cartesianas, tiene la siguiente forma:
Se pueden suponer los siguientes parámetros:
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:
Donde:
- [math]V_0[/math] es la velocidad de referencia del viento a una altura [math]z_0[/math]. Para una simulación de viento, podemos fijar [math]V_0 = 15 m/s[/math] como valor de referencia.
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede modelar como:
donde ρ es la densidad del aire estándar.
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas inducidas por el viento en la superficie de la torre:
donde [math]\vec{n}[/math] es el vector normal a la superficie.
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación:
Contenido
- 1 Encontrar los valores de a, c, [math]z_0[/math] para la ecuación de la torre
- 2 Representación de la superficie parametrizada
- 3 Ecuación de la torre como una superficie rigada
- 4 Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre
- 5 Representación del campo vectorial de la fuerza generada por la presión del viento en la superficie de la mitad de la torre expuesta.
- 6 Representación el campo de temperatura utilizando un mapa de colores en un plano vertical que corta la torre pasando por el eje de simetría.
- 7 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 y los puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo
- 8 Animación que representa las superficies isotérmicas para varios valores de temperatura
- 9 Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m
- 10 Uso de estructuras hiperboloides en ingeniería
1 Encontrar los valores de a, c, [math]z_0[/math] para la ecuación de la torre
Con la ecuación: [math]\dfrac{x^2+y^2}{a^2} - \dfrac{(z - z_0)^2}{c^2} = 1[/math] en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es [math]\dfrac{\rho^2}{a^2} - \dfrac{(z - z_0)^2}{c^2} = 1[/math]. Ya que en cilíndricas [math] \rho^2=x^2+y^2 [/math]
Ahora se tiene en cuenta los parámetros:
La altura (H) es 120 metros
En z=0 (la base) el radio máximo es 50 metros
En [math]z=\dfrac{2}{3} \cdot H=80[/math] el radio mínimo es 20 metros
Lo primero es saber que el hiperboloide está centrado a una altura [math]z_0[/math](dado por el enunciado), la cual se toma como el centro de simetría. Por la simetría del problema, sabemos que la curva alcanza su mínimo radio en [math]z=z_0[/math]. Esto implica que:
[math]z_0=\dfrac{2}{3} \cdot H=80m[/math]
Así que la ecuación(1) situada en el centro de simetría con los parámetros:
[math]\dfrac{20^2}{a^2} - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 [/math]
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:
[math]\dfrac{50^2}{a^2} - \dfrac{(0-80)^2}{c^2} = 1[/math]
Por último se sustituye el valor de a en (2) y se consigue el valor de c
[math]c≈34,91[/math]
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y [math]z_0[/math] es:
[math]\dfrac{\rho^2}{20^2} - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400} - \dfrac{(z-80)^2}{1219} = 1[/math]
2 Representación de la superficie parametrizada
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es: [math]\dfrac{\rho^2}{20^2} - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400} - \dfrac{(z-80)^2}{1219} = 1[/math]
La parametrización que le damos nosotros para la representación es:
r(u,v)=(p(v)[math]\cdot[/math]cos(u) , p(v)[math]\cdot[/math]sen(u) , v)
Donde [math]p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}[/math]
Y u pertenece a [0,2pi] y v pertenece a [0,120]
Por lo que es la representación en matlab es:
% Parámetros de la torre
Rm=50% Parámetro a (radio max)
a = 20; % Parámetro a (radio mínimo)
z0 = 80; % Centro del hiperboloide
H = 120; % Altura total de la torre
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c
% Dominio de los parámetros
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi]
z = linspace(0, H, 100); % Altura z [0, H]
% Crear mallas para theta y z
[Theta, Z] = meshgrid(theta, z);
% Radio \rho en función de z
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2));
% Coordenadas cartesianas
X = Rho .* cos(Theta); % Coordenada x
Y = Rho .* sin(Theta); % Coordenada y
% Graficar la superficie
figure;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes
colormap([0.5, 0.5, 0.5]); % Color único (gris)
xlabel('X (m)');
ylabel('Y (m)');
zlabel('Z (m)');
title('Superficie de la Torre de Enfriamiento');
axis equal; % Ejes proporcionales
view(3); % Vista 3DEn esta representación se puede observar la torre de enfriamiento hiperbólica cuya altura es 120 metros, cuyo Radio máximo es alcanzado en la base(z=0) como se puede observar y cuyo radio mínimo es alcanzado a 2/3H (z=80)
3 Ecuación de la torre como una superficie rigada
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria. El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:
[math]r(u,v)=r_0(u)+v \cdot d(u)[/math]
donde [math]r_0(u)[/math] es una curva generadora, en cambio d(u) es una dirección de la recta generadora.
Para el hiperboloide:
1. Podemos parametrizar una curva generadora en [math]z_0[/math]=cte como: [math]r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)[/math]
2. Una dirección de la recta generadora es: [math]d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))[/math]
Por lo que la parametrización rigada es: [math]r(u,v)= (a \cdot cos(u)+v \cdot sinh(v) \cdot cos(u) , a \cdot sen(u)+v \cdot sinh(v) \cdot sin(u) , z_o+v \cdot cosh(v))[/math]
4 Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre
Esta pregunta se centra en representar gráficamente el campo escalar de presión inducido por el viento en la superficie de la torre. Esto permite comprender cómo varía la presión a lo largo de la estructura en función de la altura, un factor crucial en el diseño y la estabilidad estructural.
% Crear la malla para parametrizar la superficie
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z
altura = linspace(0, altura_torre, 200); % Altura
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura
% Parametrización del hiperboloide
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);
coord_z = altura_malla;
% Perfil del viento
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;
% Presión del viento
presion_viento = 0.5 * densidad_aire * vel_viento.^2;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y < 0
mascara_division = (coord_x + coord_y < 0);
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad
coord_y(~mascara_division) = NaN;
coord_z(~mascara_division) = NaN;
presion_viento(~mascara_division) = NaN;
% Representar la torre y el campo de presión
figure;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión
xlabel('X (m)');
ylabel('Y (m)');
zlabel('Z (m)');
title('Presión del viento en la mitad expuesta de la torre');
axis equal;
grid on;
view(3);
colormap(jet); % Representación del campo de presiones
colorbar; % Leyenda de coloresEl gráfico muestra un modelo tridimensional de la distribución de presión del viento en la mitad expuesta de una torre de enfriamiento hiperboloidal. La escala de colores indica los valores de presión, desde el azul (baja presión) hasta el rojo y el negro (alta presión). En el eje vertical (Z) se representa la altura (en metros), mientras que los ejes X y Y muestran las dimensiones horizontales (también en metros). La forma hiperboloidal característica de la torre se refleja en la distribución de presión, siendo más alta en la base y disminuyendo hacia la parte superior.
5 Representación del campo vectorial de la fuerza generada por la presión del viento en la superficie de la mitad de la torre expuesta.
En la quinta pregunta, se busca visualizar el campo vectorial de las fuerzas generadas por la presión del viento sobre la superficie de la torre. Este análisis es esencial para estudiar las cargas mecánicas que la estructura debe soportar bajo condiciones de viento.
% Parámetros de la torre
radio_max_base = 50; % Radio máximo de la base
radio_min_torre = 20; % Radio mínimo de la torre
centro_hiperboloide = 80; % Centro del hiperboloide
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c
altura_torre = 120; % Altura total de la torre
densidad_aire = 1.225; % Densidad del aire (kg/m^3)
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)
altura_ref_viento = 10; % Altura de referencia para el viento (m)
exponente_viento = 0.14; % Exponente del perfil del viento
% Parámetros de la torre
radio_max_base = 50; % Radio máximo
radio_min_torre = 20; % Radio mínimo
centro_hiperboloide = 80; % Centro del hiperboloide
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c
altura_torre = 120; % Altura total
densidad_aire = 1.225; % Densidad del aire (kg/m^3)
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)
altura_ref_viento = 10; % Altura de referencia para el viento (m)
exponente_viento = 0.14; % Exponente del perfil del viento
% Crear la malla para parametrizar la superficie
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z
altura = linspace(0, altura_torre, 200); % Altura
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura
% Parametrización del hiperboloide
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);
coord_z = altura_malla;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y <= 0)
mascara_corte = (coord_x + coord_y) <= 0;
coord_x_corte = coord_x .* mascara_corte;
coord_y_corte = coord_y .* mascara_corte;
coord_z_corte = coord_z .* mascara_corte;
% Crear flechas apuntando al centro (eje Z)
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)
% Escalar las flechas según la presión del viento
factor_escala = coord_z_corte / max(coord_z_corte(:));
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base
fuerza_x_centro = fuerza_x_centro .* factor_escala;
fuerza_y_centro = fuerza_y_centro .* factor_escala;
% Filtrar las flechas para evitar puntos nulos
puntos_validos = mascara_corte & (coord_x_corte ~= 0 | coord_y_corte ~= 0);
% --------- Gráfico de las flechas ---------
figure;
hold on;
% Dibujar las flechas
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...
fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...
2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)
xlabel('X (m)');
ylabel('Y (m)');
zlabel('Z (m)');
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');
axis equal; % Mantener proporciones
grid on;
view(3); % Vista en 3D
hold off;El gráfico presenta un campo vectorial de la presión del viento en la mitad expuesta de una torre de enfriamiento hiperboloidal. Cada flecha representa la dirección y magnitud del gradiente de presión en diferentes puntos de la torre. Los ejes ZZZ (altura en metros) y XXX-YYY (dimensiones horizontales en metros) describen el espacio tridimensional. La distribución de flechas ilustra cómo la presión varía a lo largo de la superficie de la torre, mostrando patrones característicos debido a la forma hiperboloidal y las condiciones de viento.
6 Representación el campo de temperatura utilizando un mapa de colores en un plano vertical que corta la torre pasando por el eje de simetría.
En el apartado 6, se analiza y representa el campo de temperatura en la torre. Por un lado, se estudia cómo varía la temperatura en un plano vertical que corta la torre por el eje de simetría. Por otro lado, se examinan planos paralelos al suelo mediante una animación que permite visualizar la distribución de temperatura en diferentes niveles de la torre.
La animación en matlab es:
% Iniciar figura
figure;
for i = 1:length(altura_malla)
% Altura de la capa actual
altura_actual = altura_malla(i);
% Radio en esta altura
radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);
% Coordenadas de la capa
coord_x_capa = radio_capa * cos(angulo_theta);
coord_y_capa = radio_capa * sin(angulo_theta);
coord_z_capa = altura_actual * ones(size(coord_x_capa));
% Temperatura en esta capa
temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...
delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));
% Dibujar la capa
fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');
hold on;
% Dibujar las líneas discontinuas en las alturas predefinidas
for altura_linea = alturas_lineas
radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura
coord_x_linea = radio_linea * cos(angulo_theta);
coord_y_linea = radio_linea * sin(angulo_theta);
plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta
end
% Mostrar el contador de la altura actual en el título
title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));
% Configuración gráfica
colormap('jet');
colorbar;
caxis([temp_tope, temp_base]); % Escala de colores
xlabel('x (m)');
ylabel('y (m)');
zlabel('z (m)');
xlim([-radio_max_base, radio_max_base]);
ylim([-radio_max_base, radio_max_base]);
zlim([0, altura_torre]);
view(3);
% Pausar para animación
pause(0.1);
hold off;
endPor otro lado, el plano vertical en matlab es:
figure; % Ventana 2: Plano vertical
% Generar plano vertical en xz
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano
z_plane = linspace(0, H, 100); % Eje z del plano
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);
% Cálculo de la temperatura en el plano
R_plane = abs(X_plane); % Distancia radial en el plano
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));
% Representar el plano vertical
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);
% Configuración gráfica
colormap('jet');
colorbar;
caxis([Ttop, Tbase]); % Escala de colores
xlabel('x (m)');
ylabel('y (m)');
zlabel('z (m)');
title('Plano Vertical: Campo de Temperatura');
xlim([-Rm, Rm]);
ylim([-Rm, Rm]);
zlim([0, H]);
view(3);
hold off;(Insertar imagenes)
En esta animación se puede observar,la evolución del gradiente de la temperatura a lo largo de la z, viendo como esta disminuye a medida que se acerca a la parte superior de la torre. En el eje vertical (Z) se representa la altura (en metros), mientras que los ejes X y Y muestran las dimensiones horizontales (también en metros).
7 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 y los puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo
(Introducción 7)
7.1 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
El codigo en matlab es:
% Parámetros del modelo
radioBase = 20; % Semi-eje en las direcciones x e y (m)
radioAltura = 34.17; % Semi-eje en la dirección z (m)
alturaCentro = 80; % Altura del centro del hiperboloide
alturaTotal = 120; % Altura total de la torre (m)
radioMaximo = 50; % Radio máximo de la torre (m)
tempInicial = 70; % Temperatura en la base (°C)
tempFinal = 25; % Temperatura en la cima (°C)
variacionAlturaTemp = tempInicial - tempFinal;
variacionRadialTemp = 5; % Variación máxima radial (°C)
expConveccion = 1.5; % Exponente de convección
% Malla para el hiperboloide
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)
% Inicializar figura
figure;
% Ciclo de animación para construir el hiperboloide
for paso = 1:length(altura)
% Limpiar figura de iteración anterior
clf;
% Dibujar cada capa hasta el paso actual
hold on;
for capa = 1:paso
% Coordenada z de la capa actual
alturaActual = altura(capa);
% Calcular el radio en esta altura
radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);
% Coordenadas de la capa en el plano x-y
coordX = radioActual * cos(anguloTheta);
coordY = radioActual * sin(anguloTheta);
capaZ = alturaActual * ones(size(coordX));
% Calcular la temperatura en la capa
parteAltura = (alturaActual / alturaTotal)^expConveccion;
variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));
temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);
% Dibujar la capa con temperatura
fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');
end
% Configuración de la gráfica
colormap('jet');
colorbar;
caxis([tempFinal, tempInicial]); % Escala de colores
xlabel('x (m)');
ylabel('y (m)');
zlabel('z (m)');
title('Construcción del hiperboloide con campo de temperatura');
xlim([-radioMaximo, radioMaximo]);
ylim([-radioMaximo, radioMaximo]);
zlim([0, alturaTotal]);
view(3);
end(Insertar imagenes)
(Breve descripción de las imagenes vistas)
7.2 Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo
(Apartado 2)
8 Animación que representa las superficies isotérmicas para varios valores de temperatura
Una superficie isoterma es aquella en la que todos sus puntos mantienen una misma temperatura. Para representarla, se han seleccionado varias temperaturas y se han visualizado estas superficies junto con sus gradientes correspondientes. Esto permitirá visualizar cómo cambian las superficies y el gradiente asociado de manera dinámica.
La animación en matlab es :
% Parámetros geométricos y térmicos
radioBase = 20;
alturaCentro = 80;
alturaTotal = 120;
radioMaximo = 50;
radioHiperboloide = 34.17;
tempBase = 70;
tempCima = 25;
variacionTempAltura = tempBase - tempCima;
variacionTempRadial = 5;
expConveccion = 1.5;
% Discretización optimizada
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad
z = linspace(0, alturaTotal, 50);
[Theta, Z] = meshgrid(theta, z);
% Radio \rho en función de z
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));
X = Rho .* cos(Theta);
Y = Rho .* sin(Theta);
% Campo de temperaturas en 3D
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...
- variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));
% Niveles isotérmicos optimizados
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos
% Calcular gradiente térmico
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));
gradTempY=gradTempX;
figure;
for nivel = 1:length(nivelesTemp)
margen = 0.5; % Ajusta según necesidad
mascaraIso = abs(campoTemp - tempNivel) < margen;
tempNivel = nivelesTemp(nivel);
mascaraIso = abs(campoTemp - tempNivel) < 0.5; % Margen ±0.5 °C
contour3(X,Y,Z,6,'k');
xlabel('X (m)');
ylabel('Y (m)');
zlabel('Z (m)');
hold on
% Extraer puntos isotérmicos
xIso = X(mascaraIso);
yIso = Y(mascaraIso);
zIso = Z(mascaraIso);
coloresIso = campoTemp(mascaraIso);
% Superficie isotérmica
scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');
colormap('jet');
colorbar;
caxis([tempCima, tempBase]);
% Graficar el gradiente térmico en los puntos isotérmicos
quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...
'k', 'AutoScaleFactor', 0.5);
% Refrescar gráfico
drawnow;
pause(0.05); % Breve pausa para visualización
% Limpiar puntos isotérmicos del cuadro anterior
% En lugar de 'cla('reset')'
delete(findall(gca, 'Type', 'scatter'));
delete(findall(gca, 'Type', 'quiver'));
end(Insertar imagenes)
La animación muestra cómo evolucionan las superficies isotérmicas (donde la temperatura es constante) para diferentes valores de temperatura. Las superficies cambian dinámicamente, revelando las regiones donde el gradiente de temperatura, representado por vectores superpuestos, señala la dirección y magnitud de la variación térmica. Este gráfico ilustra cómo la temperatura y su variación espacial interactúan de manera visual e intuitiva.
9 Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m
Para saber la forma que tendría la torre con el mismo rmin y rmax a 50 m valdría con cambiar la variable ‘’a’’ del código de matlab en el apartado 3 ,al cambiarlo obtenemos esta torre.
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.
Para el cálculo de presión por unidad en cada torre supondremos que:
- El viento ejerce una presión lateral [math]V(z)=V_o(\dfrac{z}{z_o})^α [/math]
- [math]V_o = 15 m/s [/math]
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.
- [math]P(z) = \dfrac{1}{2} \rho V(z)^2[/math]
- \rho =1.225 kg/m3
- [math]\vec{F}(x, y, z) = -P(z) \cdot \vec{n}[/math]
9.1 Cálculos para el cilíndro
Sustituyendo todas las fórmulas en la ecuación de la presión
[math]P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})[/math]
Para calcular la fuerza total
[math] \int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N [/math]