<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
		<id>https://mat.caminos.upm.es/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Marcos+Sanchez</id>
		<title>MateWiki - Contribuciones del usuario [es]</title>
		<link rel="self" type="application/atom+xml" href="https://mat.caminos.upm.es/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Marcos+Sanchez"/>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/wiki/Especial:Contribuciones/Marcos_Sanchez"/>
		<updated>2026-04-28T23:22:07Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82773</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82773"/>
				<updated>2024-12-09T21:43:36Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* 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 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros&lt;br /&gt;
radio_max_base = 50; % Radio máximo (m)&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
temp_base = 70; % Temperatura en la base (°C)&lt;br /&gt;
temp_tope = 25; % Temperatura en la parte superior (°C)&lt;br /&gt;
delta_temp_vertical = temp_base - temp_tope; % Diferencia de temperatura vertical&lt;br /&gt;
delta_temp_radial = 5; % Variación máxima radial (°C)&lt;br /&gt;
exponente_conveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
angulo_theta = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura_malla = linspace(0, altura_torre, 50); % Coordenada vertical&lt;br /&gt;
alturas_lineas = 0:20:altura_torre; % Alturas de las líneas discontinuas&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
%% 2. Campo de temperatura en el plano vertical&lt;br /&gt;
% Parámetros&lt;br /&gt;
radio_max_base = 50; % Radio máximo (m)&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
temp_base = 70; % Temperatura en la base (°C)&lt;br /&gt;
temp_tope = 25; % Temperatura en la parte superior (°C)&lt;br /&gt;
delta_temp_vertical = temp_base - temp_tope; % Diferencia de temperatura vertical&lt;br /&gt;
delta_temp_radial = 5; % Variación máxima radial (°C)&lt;br /&gt;
exponente_conveccion = 1.5; % Exponente de convección&lt;br /&gt;
figure('Name', 'Plano Vertical del Campo de Temperatura');&lt;br /&gt;
z = linspace(0, altura_torre, 300); % Coordenada vertical&lt;br /&gt;
x = linspace(-radio_max_base - 10, radio_max_base + 10, 300); % Coordenada horizontal&lt;br /&gt;
[X, Z] = meshgrid(x, z); % Crear malla&lt;br /&gt;
R = sqrt((1 + ((Z - centro_hiperboloide) / parametro_c).^2) * radio_min_torre^2); % Radio según el hiperboloide&lt;br /&gt;
r = abs(X); % Distancia radial&lt;br /&gt;
T = temp_base - delta_temp_vertical * (Z / altura_torre).^exponente_conveccion - delta_temp_radial * (1 - exp(-r.^2 ./ (radio_max_base^2 - r.^2))); % Campo de temperatura&lt;br /&gt;
mask = abs(X) &amp;lt;= R; % Máscara para limitar al hiperboloide&lt;br /&gt;
T(~mask) = NaN; % Fuera de la silueta, no mostrar&lt;br /&gt;
% Dibujar el campo de temperatura&lt;br /&gt;
contourf(X, Z, T, 50, 'LineColor', 'none');&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
x_sil_left = -R; % Lado izquierdo de la silueta&lt;br /&gt;
x_sil_right = R; % Lado derecho de la silueta&lt;br /&gt;
z_sil = z; % Coordenadas verticales&lt;br /&gt;
plot(x_sil_left, z_sil, 'k-', 'LineWidth', 2); % Silueta izquierda&lt;br /&gt;
plot(x_sil_right, z_sil, 'k-', 'LineWidth', 2); % Silueta derecha&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('z (m)');&lt;br /&gt;
title('Campo de temperatura (°C) dentro de la silueta de la torre');&lt;br /&gt;
xlim([-radio_max_base - 10, radio_max_base + 10]);&lt;br /&gt;
ylim([0, altura_torre]);&lt;br /&gt;
grid on;&lt;br /&gt;
view(2); % Vista 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
Este apartado consiste en representar el campo del gradiente de temperatura en dos planos diferentes de una torre: un plano vertical que corta la torre pasando por su eje de simetría y un plano horizontal en el radio mínimo de la estructura. La tarea es visualizar cómo varía la temperatura en estos puntos y cómo se representa el gradiente en cada caso.&lt;br /&gt;
&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
z0 = 80; % Altura del centro de la torre (m) &lt;br /&gt;
Rmin = 20; % Radio mínimo (m) &lt;br /&gt;
Rmax = 50; % Radio máximo (m) &lt;br /&gt;
H = 120; % Altura total (m) &lt;br /&gt;
z_horizontal = (2/3) * H; % Altura del plano horizontal &lt;br /&gt;
c = sqrt(((6400 * Rmin^2) / (Rmax^2 - Rmin^2))); % Parámetro c &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Parámetros térmicos &lt;br /&gt;
Tbase = 70; % Temperatura en la base (°C) &lt;br /&gt;
DeltaTz = Tbase - 25; % Variación de temperatura con la altura &lt;br /&gt;
DeltaTr = 5; % Variación de temperatura radial &lt;br /&gt;
n = 1.5; % Exponente para el perfil vertical &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Parámetros para la malla dentro del cuadrado [-60, 60] en X y Y &lt;br /&gt;
res_x = 50; % Resolución ajustada para X &lt;br /&gt;
res_y = 50; % Resolución ajustada para Y &lt;br /&gt;
x = linspace(-60, 60, res_x); % Rango de X de -60 a 60 &lt;br /&gt;
y = linspace(-60, 60, res_y); % Rango de Y de -60 a 60 &lt;br /&gt;
[X, Y] = meshgrid(x, y); &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Filtrar puntos dentro del círculo de radio Rmin &lt;br /&gt;
mask = X.^2 + Y.^2 &amp;lt;= Rmin^2; % Solo puntos dentro del radio mínimo (20 m) &lt;br /&gt;
X = X(mask); &lt;br /&gt;
Y = Y(mask); &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Flechas perpendiculares apuntando hacia abajo &lt;br /&gt;
Tx_grad = zeros(size(X)); % No hay componente en X &lt;br /&gt;
Ty_grad = zeros(size(Y)); % No hay componente en Y &lt;br /&gt;
Tz_grad = -0.8 * ones(size(X)); % Flechas hacia abajo, magnitud ajustada &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Representación gráfica para el plano horizontal &lt;br /&gt;
figure; &lt;br /&gt;
hold on; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Flechas del gradiente &lt;br /&gt;
quiver3(X, Y, z_horizontal * ones(size(X)), Tx_grad, Ty_grad, Tz_grad, 0.5, ... &lt;br /&gt;
   'Color', [0.3 0.5 1], 'LineWidth', 1, 'MaxHeadSize', 2); &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Contorno del círculo de radio Rmin &lt;br /&gt;
theta_circle = linspace(0, 2*pi, 100); &lt;br /&gt;
x_circle = Rmin * cos(theta_circle); &lt;br /&gt;
y_circle = Rmin * sin(theta_circle); &lt;br /&gt;
z_circle = z_horizontal * ones(size(theta_circle)); &lt;br /&gt;
plot3(x_circle, y_circle, z_circle, 'm--', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica &lt;br /&gt;
title('Gradiente de temperatura en el plano z = 2/3 H (Radio = 20 m)'); &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Altura Z (m)'); &lt;br /&gt;
axis([-60 60 -60 60 z_horizontal-20 z_horizontal+20]); % Ajuste de límites &lt;br /&gt;
axis equal; &lt;br /&gt;
grid on; &lt;br /&gt;
view(75, 30); % Vista 3D inclinada &lt;br /&gt;
hold off; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Crear malla para el plano vertical &lt;br /&gt;
z = linspace(0, H, 50); % Coordenada vertical &lt;br /&gt;
x = linspace(-Rmax - 10, Rmax + 10, 50); % Coordenada horizontal extendida &lt;br /&gt;
[X, Z] = meshgrid(x, z); % Crear la malla &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Cálculo del radio según el hiperboloide &lt;br /&gt;
R = sqrt((1 + ((Z - z0) / c).^2) * Rmin^2); % Radio según el hiperboloide &lt;br /&gt;
r = abs(X); % Distancia radial en el plano (x, 0, z) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Campo de temperatura (con corrección para evitar divisiones por cero) &lt;br /&gt;
epsilon = 1e-6; % Para evitar divisiones por cero &lt;br /&gt;
T = Tbase - DeltaTz * (Z / H).^n - DeltaTr * (1 - exp(-r.^2 ./ (Rmax^2 - r.^2 + epsilon))); &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Máscara para limitar al hiperboloide &lt;br /&gt;
mask = abs(X) &amp;lt;= R; % Máscara para la silueta &lt;br /&gt;
T(~mask) = NaN; % Fuera de la torre, no se muestra &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Gradientes en el plano vertical &lt;br /&gt;
[Tx, Tz] = gradient(T, x(2) - x(1), z(2) - z(1)); % Derivadas en x y z &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Figura 2: Gradiente de temperatura en el plano vertical desde arriba (2D) &lt;br /&gt;
figure('Name', 'Gradiente de Temperatura en el Plano Vertical'); % Nueva ventana &lt;br /&gt;
% Silueta de la torre &lt;br /&gt;
x_sil_left = -sqrt((1 + ((z - z0) / c).^2) * Rmin^2); % Lado izquierdo &lt;br /&gt;
x_sil_right = sqrt((1 + ((z - z0) / c).^2) * Rmin^2); % Lado derecho &lt;br /&gt;
z_sil = z; % Coordenadas verticales &lt;br /&gt;
plot(x_sil_left, z_sil, 'k-', 'LineWidth', 2); % Lado izquierdo &lt;br /&gt;
hold on; &lt;br /&gt;
plot(x_sil_right, z_sil, 'k-', 'LineWidth', 2); % Lado derecho &lt;br /&gt;
&lt;br /&gt;
% Representar el campo de temperatura y las flechas dentro de la torre en 2D &lt;br /&gt;
quiver(X(mask), Z(mask), Tx(mask), Tz(mask), 'b', 'LineWidth', 1, 'MaxHeadSize', 3); % Flechas azules &lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica 2D &lt;br /&gt;
xlabel('x (m)'); &lt;br /&gt;
ylabel('z (m)'); &lt;br /&gt;
title('Gradiente de Temperatura en el Plano Vertical (Vista 2D)'); &lt;br /&gt;
xlim([-Rmax - 10, Rmax + 10]); &lt;br /&gt;
ylim([0, H]); &lt;br /&gt;
grid on; &lt;br /&gt;
axis equal; &lt;br /&gt;
view(2); % Vista en 2D &lt;br /&gt;
hold off; &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.1.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 2D con el gradiente de temperatura representado por flechas azules distribuidas en un plano vertical (coordenadas x y z). Las flechas están más densamente distribuidas cerca del eje central y apuntan hacia afuera, indicando que el gradiente de temperatura es mayor en el eje de simetría. Los bordes negros delimitan una forma simétrica similar a un reloj de arena, representando los límites físicos del sistema.&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.2.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 3D del gradiente de temperatura en un plano horizontal a la altura z=2/3H (radio mínimo de 20 m). Las flechas azules representan el campo del gradiente, apuntando radialmente hacia afuera desde el centro de la figura ovalada, indicando un aumento de temperatura hacia los bordes. El contorno magenta delimita la región donde se estudia el gradiente.&lt;br /&gt;
&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82681</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82681"/>
				<updated>2024-12-09T20:55:14Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Animación que representa las superficies isotérmicas para varios valores de temperatura */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros&lt;br /&gt;
radio_max_base = 50; % Radio máximo (m)&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
temp_base = 70; % Temperatura en la base (°C)&lt;br /&gt;
temp_tope = 25; % Temperatura en la parte superior (°C)&lt;br /&gt;
delta_temp_vertical = temp_base - temp_tope; % Diferencia de temperatura vertical&lt;br /&gt;
delta_temp_radial = 5; % Variación máxima radial (°C)&lt;br /&gt;
exponente_conveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
angulo_theta = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura_malla = linspace(0, altura_torre, 50); % Coordenada vertical&lt;br /&gt;
alturas_lineas = 0:20:altura_torre; % Alturas de las líneas discontinuas&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
%% 2. Campo de temperatura en el plano vertical&lt;br /&gt;
% Parámetros&lt;br /&gt;
radio_max_base = 50; % Radio máximo (m)&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
temp_base = 70; % Temperatura en la base (°C)&lt;br /&gt;
temp_tope = 25; % Temperatura en la parte superior (°C)&lt;br /&gt;
delta_temp_vertical = temp_base - temp_tope; % Diferencia de temperatura vertical&lt;br /&gt;
delta_temp_radial = 5; % Variación máxima radial (°C)&lt;br /&gt;
exponente_conveccion = 1.5; % Exponente de convección&lt;br /&gt;
figure('Name', 'Plano Vertical del Campo de Temperatura');&lt;br /&gt;
z = linspace(0, altura_torre, 300); % Coordenada vertical&lt;br /&gt;
x = linspace(-radio_max_base - 10, radio_max_base + 10, 300); % Coordenada horizontal&lt;br /&gt;
[X, Z] = meshgrid(x, z); % Crear malla&lt;br /&gt;
R = sqrt((1 + ((Z - centro_hiperboloide) / parametro_c).^2) * radio_min_torre^2); % Radio según el hiperboloide&lt;br /&gt;
r = abs(X); % Distancia radial&lt;br /&gt;
T = temp_base - delta_temp_vertical * (Z / altura_torre).^exponente_conveccion - delta_temp_radial * (1 - exp(-r.^2 ./ (radio_max_base^2 - r.^2))); % Campo de temperatura&lt;br /&gt;
mask = abs(X) &amp;lt;= R; % Máscara para limitar al hiperboloide&lt;br /&gt;
T(~mask) = NaN; % Fuera de la silueta, no mostrar&lt;br /&gt;
% Dibujar el campo de temperatura&lt;br /&gt;
contourf(X, Z, T, 50, 'LineColor', 'none');&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
x_sil_left = -R; % Lado izquierdo de la silueta&lt;br /&gt;
x_sil_right = R; % Lado derecho de la silueta&lt;br /&gt;
z_sil = z; % Coordenadas verticales&lt;br /&gt;
plot(x_sil_left, z_sil, 'k-', 'LineWidth', 2); % Silueta izquierda&lt;br /&gt;
plot(x_sil_right, z_sil, 'k-', 'LineWidth', 2); % Silueta derecha&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('z (m)');&lt;br /&gt;
title('Campo de temperatura (°C) dentro de la silueta de la torre');&lt;br /&gt;
xlim([-radio_max_base - 10, radio_max_base + 10]);&lt;br /&gt;
ylim([0, altura_torre]);&lt;br /&gt;
grid on;&lt;br /&gt;
view(2); % Vista 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
Este apartado consiste en representar el campo del gradiente de temperatura en dos planos diferentes de una torre: un plano vertical que corta la torre pasando por su eje de simetría y un plano horizontal en el radio mínimo de la estructura. La tarea es visualizar cómo varía la temperatura en estos puntos y cómo se representa el gradiente en cada caso.&lt;br /&gt;
&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
altura_inicial = 80;  % Altura inicial de la torre&lt;br /&gt;
radio_menor = 20;  % Radio mínimo (m)&lt;br /&gt;
temperatura_inicial = 70;  % Temperatura en la base (°C)&lt;br /&gt;
diferencia_temperatura_altura = temperatura_inicial - 25;  % Diferencia de temperatura con la altura (base a cima)&lt;br /&gt;
diferencia_temperatura_radial = 5;  % Diferencia de temperatura radial (°C)&lt;br /&gt;
exponente_z = 1.5;  % Exponente para el perfil vertical&lt;br /&gt;
radio_mayor = 50;  % Radio máximo (m)&lt;br /&gt;
altura_total = 120;  % Altura total de la torre (m)&lt;br /&gt;
altura_plano_central = (2/3) * altura_total;  % Altura del plano en el que se analiza&lt;br /&gt;
c=sqrt(((6400*radio_menor^2)/radio_mayor^2-radio_menor^2));% Parámetro constante c&lt;br /&gt;
&lt;br /&gt;
% Parámetros para la malla dentro del cuadrado [-60, 60] en X y Y con mayor resolución&lt;br /&gt;
resolucion_x = 50;  % Resolución ajustada para el eje X&lt;br /&gt;
resolucion_y = 50;  % Resolución ajustada para el eje Y&lt;br /&gt;
rango_x = linspace(-60, 60, resolucion_x);  % Rango de valores de X de -60 a 60&lt;br /&gt;
rango_y = linspace(-60, 60, resolucion_y);  % Rango de valores de Y de -60 a 60&lt;br /&gt;
[malla_X, malla_Y] = meshgrid(rango_x, rango_y); &lt;br /&gt;
&lt;br /&gt;
% Filtrar puntos dentro del círculo de radio 20&lt;br /&gt;
filtro_radio_inferior = malla_X.^2 + malla_Y.^2 &amp;lt;= radio_menor^2;  % Solo puntos dentro del radio mínimo (20 metros)&lt;br /&gt;
malla_X = malla_X(filtro_radio_inferior); &lt;br /&gt;
malla_Y = malla_Y(filtro_radio_inferior); &lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en dirección Z&lt;br /&gt;
gradiente_X = zeros(size(malla_X));  % No hay componente en X&lt;br /&gt;
gradiente_Y = zeros(size(malla_Y));  % No hay componente en Y&lt;br /&gt;
gradiente_Z = -0.8 * ones(size(malla_X));  % Flechas hacia abajo, magnitud ajustada&lt;br /&gt;
&lt;br /&gt;
% Gráfica 3D&lt;br /&gt;
figure; &lt;br /&gt;
hold on; &lt;br /&gt;
% Flechas del gradiente de temperatura&lt;br /&gt;
quiver3(malla_X, malla_Y, altura_plano_central * ones(size(malla_X)), gradiente_X, gradiente_Y, gradiente_Z, 0.5, ... &lt;br /&gt;
'Color', [0.3 0.5 1], 'LineWidth', 1, 'MaxHeadSize', 2); &lt;br /&gt;
&lt;br /&gt;
% Contorno de la torre con radio 20&lt;br /&gt;
angulo_contorno = linspace(0, 2*pi, 100); &lt;br /&gt;
x_contorno = radio_menor * cos(angulo_contorno); &lt;br /&gt;
y_contorno = radio_menor * sin(angulo_contorno); &lt;br /&gt;
z_contorno = altura_plano_central * ones(size(angulo_contorno)); &lt;br /&gt;
plot3(x_contorno, y_contorno, z_contorno, 'm--', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica&lt;br /&gt;
title('Gradiente de temperatura en el plano z = 2/3 H (Radio = 20m)'); &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Altura Z (m)'); &lt;br /&gt;
axis([-50 50 -50 50]);  % Ajuste de los límites del gráfico&lt;br /&gt;
axis equal; &lt;br /&gt;
grid on; &lt;br /&gt;
view(75, 30);  % Vista 3D inclinada para mejor percepción&lt;br /&gt;
&lt;br /&gt;
% Crear malla para el plano vertical&lt;br /&gt;
eje_z = linspace(0, altura_total, 50);  % Coordenada vertical&lt;br /&gt;
eje_x_ampliado = linspace(-radio_mayor - 10, radio_mayor + 10, 50);  % Coordenada horizontal extendida&lt;br /&gt;
[malla_X_vertical, malla_Z] = meshgrid(eje_x_ampliado, eje_z);  % Crear la malla&lt;br /&gt;
&lt;br /&gt;
radio_variable=sqrt((1+((malla_Z- altura_inicial)/c).^2)* radio_menor^2);  % Radio según el hiperboloide&lt;br /&gt;
distancia_radial_plano = abs(malla_X_vertical);  % Distancia radial en el plano (x, 0, z)&lt;br /&gt;
&lt;br /&gt;
% Campo de temperatura&lt;br /&gt;
campo_temperatura = temperatura_inicial - diferencia_temperatura_altura * (malla_Z / altura_total).^exponente_z - diferencia_temperatura_radial * (1 - exp(-distancia_radial_plano.^2 ./ (radio_mayor^2 - distancia_radial_plano.^2))); &lt;br /&gt;
&lt;br /&gt;
% Máscara para limitar al hiperboloide&lt;br /&gt;
mascara_hiperboloide = abs(malla_X_vertical) &amp;lt;= radio_variable;  % Máscara para la silueta&lt;br /&gt;
campo_temperatura(~mascara_hiperboloide) = NaN;  % Fuera de la torre, no se muestra&lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en el plano vertical&lt;br /&gt;
[gradiente_X_vertical, gradiente_Z_vertical] = gradient(campo_temperatura, eje_x_ampliado(2) - eje_x_ampliado(1), eje_z(2) - eje_z(1));  % Derivadas en X y Z&lt;br /&gt;
&lt;br /&gt;
% Gráfica 2D del gradiente de temperatura en el plano vertical&lt;br /&gt;
figure('Name', 'Gradiente de Temperatura en el Plano Vertical'); &lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
angulo_contorno_vertical = linspace(0, 2*pi, 100); &lt;br /&gt;
x_izquierda_silueta = -radio_variable;  % Lado izquierdo de la silueta&lt;br /&gt;
x_derecha_silueta = radio_variable;  % Lado derecho de la silueta&lt;br /&gt;
z_silueta = eje_z;  % Coordenadas verticales&lt;br /&gt;
plot(x_izquierda_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado izquierdo de la torre&lt;br /&gt;
hold on; &lt;br /&gt;
plot(x_derecha_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado derecho de la torre&lt;br /&gt;
&lt;br /&gt;
% Representar el campo de temperatura y las flechas dentro de la torre en 2D&lt;br /&gt;
quiver(malla_X_vertical(mascara_hiperboloide), malla_Z(mascara_hiperboloide), gradiente_X_vertical(mascara_hiperboloide), gradiente_Z_vertical(mascara_hiperboloide), 'b', 'LineWidth', 1, 'MaxHeadSize', 3);  % Flechas azules&lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica 2D&lt;br /&gt;
xlabel('x (m)'); &lt;br /&gt;
ylabel('z (m)'); &lt;br /&gt;
title('Gradiente de Temperatura en el Plano Vertical (Vista 2D)'); &lt;br /&gt;
xlim([-radio_mayor - 10, radio_mayor + 10]); &lt;br /&gt;
ylim([0, altura_total]); &lt;br /&gt;
grid on; &lt;br /&gt;
axis equal;  % Asegura que la proporción de los ejes sea la misma&lt;br /&gt;
view(2);  % Vista en 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.1.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 2D con el gradiente de temperatura representado por flechas azules distribuidas en un plano vertical (coordenadas x y z). Las flechas están más densamente distribuidas cerca del eje central y apuntan hacia afuera, indicando que el gradiente de temperatura es mayor en el eje de simetría. Los bordes negros delimitan una forma simétrica similar a un reloj de arena, representando los límites físicos del sistema.&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.2.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 3D del gradiente de temperatura en un plano horizontal a la altura z=2/3H (radio mínimo de 20 m). Las flechas azules representan el campo del gradiente, apuntando radialmente hacia afuera desde el centro de la figura ovalada, indicando un aumento de temperatura hacia los bordes. El contorno magenta delimita la región donde se estudia el gradiente.&lt;br /&gt;
&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82662</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82662"/>
				<updated>2024-12-09T20:44:38Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* 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 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros&lt;br /&gt;
radio_max_base = 50; % Radio máximo (m)&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
temp_base = 70; % Temperatura en la base (°C)&lt;br /&gt;
temp_tope = 25; % Temperatura en la parte superior (°C)&lt;br /&gt;
delta_temp_vertical = temp_base - temp_tope; % Diferencia de temperatura vertical&lt;br /&gt;
delta_temp_radial = 5; % Variación máxima radial (°C)&lt;br /&gt;
exponente_conveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
angulo_theta = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura_malla = linspace(0, altura_torre, 50); % Coordenada vertical&lt;br /&gt;
alturas_lineas = 0:20:altura_torre; % Alturas de las líneas discontinuas&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
%% 2. Campo de temperatura en el plano vertical&lt;br /&gt;
% Parámetros&lt;br /&gt;
radio_max_base = 50; % Radio máximo (m)&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
temp_base = 70; % Temperatura en la base (°C)&lt;br /&gt;
temp_tope = 25; % Temperatura en la parte superior (°C)&lt;br /&gt;
delta_temp_vertical = temp_base - temp_tope; % Diferencia de temperatura vertical&lt;br /&gt;
delta_temp_radial = 5; % Variación máxima radial (°C)&lt;br /&gt;
exponente_conveccion = 1.5; % Exponente de convección&lt;br /&gt;
figure('Name', 'Plano Vertical del Campo de Temperatura');&lt;br /&gt;
z = linspace(0, altura_torre, 300); % Coordenada vertical&lt;br /&gt;
x = linspace(-radio_max_base - 10, radio_max_base + 10, 300); % Coordenada horizontal&lt;br /&gt;
[X, Z] = meshgrid(x, z); % Crear malla&lt;br /&gt;
R = sqrt((1 + ((Z - centro_hiperboloide) / parametro_c).^2) * radio_min_torre^2); % Radio según el hiperboloide&lt;br /&gt;
r = abs(X); % Distancia radial&lt;br /&gt;
T = temp_base - delta_temp_vertical * (Z / altura_torre).^exponente_conveccion - delta_temp_radial * (1 - exp(-r.^2 ./ (radio_max_base^2 - r.^2))); % Campo de temperatura&lt;br /&gt;
mask = abs(X) &amp;lt;= R; % Máscara para limitar al hiperboloide&lt;br /&gt;
T(~mask) = NaN; % Fuera de la silueta, no mostrar&lt;br /&gt;
% Dibujar el campo de temperatura&lt;br /&gt;
contourf(X, Z, T, 50, 'LineColor', 'none');&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
x_sil_left = -R; % Lado izquierdo de la silueta&lt;br /&gt;
x_sil_right = R; % Lado derecho de la silueta&lt;br /&gt;
z_sil = z; % Coordenadas verticales&lt;br /&gt;
plot(x_sil_left, z_sil, 'k-', 'LineWidth', 2); % Silueta izquierda&lt;br /&gt;
plot(x_sil_right, z_sil, 'k-', 'LineWidth', 2); % Silueta derecha&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('z (m)');&lt;br /&gt;
title('Campo de temperatura (°C) dentro de la silueta de la torre');&lt;br /&gt;
xlim([-radio_max_base - 10, radio_max_base + 10]);&lt;br /&gt;
ylim([0, altura_torre]);&lt;br /&gt;
grid on;&lt;br /&gt;
view(2); % Vista 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
Este apartado consiste en representar el campo del gradiente de temperatura en dos planos diferentes de una torre: un plano vertical que corta la torre pasando por su eje de simetría y un plano horizontal en el radio mínimo de la estructura. La tarea es visualizar cómo varía la temperatura en estos puntos y cómo se representa el gradiente en cada caso.&lt;br /&gt;
&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
altura_inicial = 80;  % Altura inicial de la torre&lt;br /&gt;
radio_menor = 20;  % Radio mínimo (m)&lt;br /&gt;
temperatura_inicial = 70;  % Temperatura en la base (°C)&lt;br /&gt;
diferencia_temperatura_altura = temperatura_inicial - 25;  % Diferencia de temperatura con la altura (base a cima)&lt;br /&gt;
diferencia_temperatura_radial = 5;  % Diferencia de temperatura radial (°C)&lt;br /&gt;
exponente_z = 1.5;  % Exponente para el perfil vertical&lt;br /&gt;
radio_mayor = 50;  % Radio máximo (m)&lt;br /&gt;
altura_total = 120;  % Altura total de la torre (m)&lt;br /&gt;
altura_plano_central = (2/3) * altura_total;  % Altura del plano en el que se analiza&lt;br /&gt;
c=sqrt(((6400*radio_menor^2)/radio_mayor^2-radio_menor^2));% Parámetro constante c&lt;br /&gt;
&lt;br /&gt;
% Parámetros para la malla dentro del cuadrado [-60, 60] en X y Y con mayor resolución&lt;br /&gt;
resolucion_x = 50;  % Resolución ajustada para el eje X&lt;br /&gt;
resolucion_y = 50;  % Resolución ajustada para el eje Y&lt;br /&gt;
rango_x = linspace(-60, 60, resolucion_x);  % Rango de valores de X de -60 a 60&lt;br /&gt;
rango_y = linspace(-60, 60, resolucion_y);  % Rango de valores de Y de -60 a 60&lt;br /&gt;
[malla_X, malla_Y] = meshgrid(rango_x, rango_y); &lt;br /&gt;
&lt;br /&gt;
% Filtrar puntos dentro del círculo de radio 20&lt;br /&gt;
filtro_radio_inferior = malla_X.^2 + malla_Y.^2 &amp;lt;= radio_menor^2;  % Solo puntos dentro del radio mínimo (20 metros)&lt;br /&gt;
malla_X = malla_X(filtro_radio_inferior); &lt;br /&gt;
malla_Y = malla_Y(filtro_radio_inferior); &lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en dirección Z&lt;br /&gt;
gradiente_X = zeros(size(malla_X));  % No hay componente en X&lt;br /&gt;
gradiente_Y = zeros(size(malla_Y));  % No hay componente en Y&lt;br /&gt;
gradiente_Z = -0.8 * ones(size(malla_X));  % Flechas hacia abajo, magnitud ajustada&lt;br /&gt;
&lt;br /&gt;
% Gráfica 3D&lt;br /&gt;
figure; &lt;br /&gt;
hold on; &lt;br /&gt;
% Flechas del gradiente de temperatura&lt;br /&gt;
quiver3(malla_X, malla_Y, altura_plano_central * ones(size(malla_X)), gradiente_X, gradiente_Y, gradiente_Z, 0.5, ... &lt;br /&gt;
'Color', [0.3 0.5 1], 'LineWidth', 1, 'MaxHeadSize', 2); &lt;br /&gt;
&lt;br /&gt;
% Contorno de la torre con radio 20&lt;br /&gt;
angulo_contorno = linspace(0, 2*pi, 100); &lt;br /&gt;
x_contorno = radio_menor * cos(angulo_contorno); &lt;br /&gt;
y_contorno = radio_menor * sin(angulo_contorno); &lt;br /&gt;
z_contorno = altura_plano_central * ones(size(angulo_contorno)); &lt;br /&gt;
plot3(x_contorno, y_contorno, z_contorno, 'm--', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica&lt;br /&gt;
title('Gradiente de temperatura en el plano z = 2/3 H (Radio = 20m)'); &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Altura Z (m)'); &lt;br /&gt;
axis([-50 50 -50 50]);  % Ajuste de los límites del gráfico&lt;br /&gt;
axis equal; &lt;br /&gt;
grid on; &lt;br /&gt;
view(75, 30);  % Vista 3D inclinada para mejor percepción&lt;br /&gt;
&lt;br /&gt;
% Crear malla para el plano vertical&lt;br /&gt;
eje_z = linspace(0, altura_total, 50);  % Coordenada vertical&lt;br /&gt;
eje_x_ampliado = linspace(-radio_mayor - 10, radio_mayor + 10, 50);  % Coordenada horizontal extendida&lt;br /&gt;
[malla_X_vertical, malla_Z] = meshgrid(eje_x_ampliado, eje_z);  % Crear la malla&lt;br /&gt;
&lt;br /&gt;
radio_variable=sqrt((1+((malla_Z- altura_inicial)/c).^2)* radio_menor^2);  % Radio según el hiperboloide&lt;br /&gt;
distancia_radial_plano = abs(malla_X_vertical);  % Distancia radial en el plano (x, 0, z)&lt;br /&gt;
&lt;br /&gt;
% Campo de temperatura&lt;br /&gt;
campo_temperatura = temperatura_inicial - diferencia_temperatura_altura * (malla_Z / altura_total).^exponente_z - diferencia_temperatura_radial * (1 - exp(-distancia_radial_plano.^2 ./ (radio_mayor^2 - distancia_radial_plano.^2))); &lt;br /&gt;
&lt;br /&gt;
% Máscara para limitar al hiperboloide&lt;br /&gt;
mascara_hiperboloide = abs(malla_X_vertical) &amp;lt;= radio_variable;  % Máscara para la silueta&lt;br /&gt;
campo_temperatura(~mascara_hiperboloide) = NaN;  % Fuera de la torre, no se muestra&lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en el plano vertical&lt;br /&gt;
[gradiente_X_vertical, gradiente_Z_vertical] = gradient(campo_temperatura, eje_x_ampliado(2) - eje_x_ampliado(1), eje_z(2) - eje_z(1));  % Derivadas en X y Z&lt;br /&gt;
&lt;br /&gt;
% Gráfica 2D del gradiente de temperatura en el plano vertical&lt;br /&gt;
figure('Name', 'Gradiente de Temperatura en el Plano Vertical'); &lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
angulo_contorno_vertical = linspace(0, 2*pi, 100); &lt;br /&gt;
x_izquierda_silueta = -radio_variable;  % Lado izquierdo de la silueta&lt;br /&gt;
x_derecha_silueta = radio_variable;  % Lado derecho de la silueta&lt;br /&gt;
z_silueta = eje_z;  % Coordenadas verticales&lt;br /&gt;
plot(x_izquierda_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado izquierdo de la torre&lt;br /&gt;
hold on; &lt;br /&gt;
plot(x_derecha_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado derecho de la torre&lt;br /&gt;
&lt;br /&gt;
% Representar el campo de temperatura y las flechas dentro de la torre en 2D&lt;br /&gt;
quiver(malla_X_vertical(mascara_hiperboloide), malla_Z(mascara_hiperboloide), gradiente_X_vertical(mascara_hiperboloide), gradiente_Z_vertical(mascara_hiperboloide), 'b', 'LineWidth', 1, 'MaxHeadSize', 3);  % Flechas azules&lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica 2D&lt;br /&gt;
xlabel('x (m)'); &lt;br /&gt;
ylabel('z (m)'); &lt;br /&gt;
title('Gradiente de Temperatura en el Plano Vertical (Vista 2D)'); &lt;br /&gt;
xlim([-radio_mayor - 10, radio_mayor + 10]); &lt;br /&gt;
ylim([0, altura_total]); &lt;br /&gt;
grid on; &lt;br /&gt;
axis equal;  % Asegura que la proporción de los ejes sea la misma&lt;br /&gt;
view(2);  % Vista en 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.1.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 2D con el gradiente de temperatura representado por flechas azules distribuidas en un plano vertical (coordenadas x y z). Las flechas están más densamente distribuidas cerca del eje central y apuntan hacia afuera, indicando que el gradiente de temperatura es mayor en el eje de simetría. Los bordes negros delimitan una forma simétrica similar a un reloj de arena, representando los límites físicos del sistema.&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.2.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 3D del gradiente de temperatura en un plano horizontal a la altura z=2/3H (radio mínimo de 20 m). Las flechas azules representan el campo del gradiente, apuntando radialmente hacia afuera desde el centro de la figura ovalada, indicando un aumento de temperatura hacia los bordes. El contorno magenta delimita la región donde se estudia el gradiente.&lt;br /&gt;
&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82661</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82661"/>
				<updated>2024-12-09T20:44:15Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* 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 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros&lt;br /&gt;
radio_max_base = 50; % Radio máximo (m)&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
temp_base = 70; % Temperatura en la base (°C)&lt;br /&gt;
temp_tope = 25; % Temperatura en la parte superior (°C)&lt;br /&gt;
delta_temp_vertical = temp_base - temp_tope; % Diferencia de temperatura vertical&lt;br /&gt;
delta_temp_radial = 5; % Variación máxima radial (°C)&lt;br /&gt;
exponente_conveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
angulo_theta = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura_malla = linspace(0, altura_torre, 50); % Coordenada vertical&lt;br /&gt;
alturas_lineas = 0:20:altura_torre; % Alturas de las líneas discontinuas&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
%% 2. Campo de temperatura en el plano vertical&lt;br /&gt;
% Parámetros&lt;br /&gt;
radio_max_base = 50; % Radio máximo (m)&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
temp_base = 70; % Temperatura en la base (°C)&lt;br /&gt;
temp_tope = 25; % Temperatura en la parte superior (°C)&lt;br /&gt;
delta_temp_vertical = temp_base - temp_tope; % Diferencia de temperatura vertical&lt;br /&gt;
delta_temp_radial = 5; % Variación máxima radial (°C)&lt;br /&gt;
exponente_conveccion = 1.5; % Exponente de convección&lt;br /&gt;
figure('Name', 'Plano Vertical del Campo de Temperatura');&lt;br /&gt;
z = linspace(0, altura_torre, 300); % Coordenada vertical&lt;br /&gt;
x = linspace(-radio_max_base - 10, radio_max_base + 10, 300); % Coordenada horizontal&lt;br /&gt;
[X, Z] = meshgrid(x, z); % Crear malla&lt;br /&gt;
R = sqrt((1 + ((Z - centro_hiperboloide) / parametro_c).^2) * radio_min_torre^2); % Radio según el hiperboloide&lt;br /&gt;
r = abs(X); % Distancia radial&lt;br /&gt;
T = temp_base - delta_temp_vertical * (Z / altura_torre).^exponente_conveccion - delta_temp_radial * (1 - exp(-r.^2 ./ (radio_max_base^2 - r.^2))); % Campo de temperatura&lt;br /&gt;
mask = abs(X) &amp;lt;= R; % Máscara para limitar al hiperboloide&lt;br /&gt;
T(~mask) = NaN; % Fuera de la silueta, no mostrar&lt;br /&gt;
% Dibujar el campo de temperatura&lt;br /&gt;
contourf(X, Z, T, 50, 'LineColor', 'none');&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
x_sil_left = -R; % Lado izquierdo de la silueta&lt;br /&gt;
x_sil_right = R; % Lado derecho de la silueta&lt;br /&gt;
z_sil = z; % Coordenadas verticales&lt;br /&gt;
plot(x_sil_left, z_sil, 'k-', 'LineWidth', 2); % Silueta izquierda&lt;br /&gt;
plot(x_sil_right, z_sil, 'k-', 'LineWidth', 2); % Silueta derecha&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('z (m)');&lt;br /&gt;
title('Campo de temperatura (°C) dentro de la silueta de la torre');&lt;br /&gt;
xlim([-radio_max_base - 10, radio_max_base + 10]);&lt;br /&gt;
ylim([0, altura_torre]);&lt;br /&gt;
grid on;&lt;br /&gt;
view(2); % Vista 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
Este apartado consiste en representar el campo del gradiente de temperatura en dos planos diferentes de una torre: un plano vertical que corta la torre pasando por su eje de simetría y un plano horizontal en el radio mínimo de la estructura. La tarea es visualizar cómo varía la temperatura en estos puntos y cómo se representa el gradiente en cada caso.&lt;br /&gt;
&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
altura_inicial = 80;  % Altura inicial de la torre&lt;br /&gt;
radio_menor = 20;  % Radio mínimo (m)&lt;br /&gt;
temperatura_inicial = 70;  % Temperatura en la base (°C)&lt;br /&gt;
diferencia_temperatura_altura = temperatura_inicial - 25;  % Diferencia de temperatura con la altura (base a cima)&lt;br /&gt;
diferencia_temperatura_radial = 5;  % Diferencia de temperatura radial (°C)&lt;br /&gt;
exponente_z = 1.5;  % Exponente para el perfil vertical&lt;br /&gt;
radio_mayor = 50;  % Radio máximo (m)&lt;br /&gt;
altura_total = 120;  % Altura total de la torre (m)&lt;br /&gt;
altura_plano_central = (2/3) * altura_total;  % Altura del plano en el que se analiza&lt;br /&gt;
c=sqrt(((6400*radio_menor^2)/radio_mayor^2-radio_menor^2));%Parámetro constante c&lt;br /&gt;
&lt;br /&gt;
% Parámetros para la malla dentro del cuadrado [-60, 60] en X y Y con mayor resolución&lt;br /&gt;
resolucion_x = 50;  % Resolución ajustada para el eje X&lt;br /&gt;
resolucion_y = 50;  % Resolución ajustada para el eje Y&lt;br /&gt;
rango_x = linspace(-60, 60, resolucion_x);  % Rango de valores de X de -60 a 60&lt;br /&gt;
rango_y = linspace(-60, 60, resolucion_y);  % Rango de valores de Y de -60 a 60&lt;br /&gt;
[malla_X, malla_Y] = meshgrid(rango_x, rango_y); &lt;br /&gt;
&lt;br /&gt;
% Filtrar puntos dentro del círculo de radio 20&lt;br /&gt;
filtro_radio_inferior = malla_X.^2 + malla_Y.^2 &amp;lt;= radio_menor^2;  % Solo puntos dentro del radio mínimo (20 metros)&lt;br /&gt;
malla_X = malla_X(filtro_radio_inferior); &lt;br /&gt;
malla_Y = malla_Y(filtro_radio_inferior); &lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en dirección Z&lt;br /&gt;
gradiente_X = zeros(size(malla_X));  % No hay componente en X&lt;br /&gt;
gradiente_Y = zeros(size(malla_Y));  % No hay componente en Y&lt;br /&gt;
gradiente_Z = -0.8 * ones(size(malla_X));  % Flechas hacia abajo, magnitud ajustada&lt;br /&gt;
&lt;br /&gt;
% Gráfica 3D&lt;br /&gt;
figure; &lt;br /&gt;
hold on; &lt;br /&gt;
% Flechas del gradiente de temperatura&lt;br /&gt;
quiver3(malla_X, malla_Y, altura_plano_central * ones(size(malla_X)), gradiente_X, gradiente_Y, gradiente_Z, 0.5, ... &lt;br /&gt;
'Color', [0.3 0.5 1], 'LineWidth', 1, 'MaxHeadSize', 2); &lt;br /&gt;
&lt;br /&gt;
% Contorno de la torre con radio 20&lt;br /&gt;
angulo_contorno = linspace(0, 2*pi, 100); &lt;br /&gt;
x_contorno = radio_menor * cos(angulo_contorno); &lt;br /&gt;
y_contorno = radio_menor * sin(angulo_contorno); &lt;br /&gt;
z_contorno = altura_plano_central * ones(size(angulo_contorno)); &lt;br /&gt;
plot3(x_contorno, y_contorno, z_contorno, 'm--', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica&lt;br /&gt;
title('Gradiente de temperatura en el plano z = 2/3 H (Radio = 20m)'); &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Altura Z (m)'); &lt;br /&gt;
axis([-50 50 -50 50]);  % Ajuste de los límites del gráfico&lt;br /&gt;
axis equal; &lt;br /&gt;
grid on; &lt;br /&gt;
view(75, 30);  % Vista 3D inclinada para mejor percepción&lt;br /&gt;
&lt;br /&gt;
% Crear malla para el plano vertical&lt;br /&gt;
eje_z = linspace(0, altura_total, 50);  % Coordenada vertical&lt;br /&gt;
eje_x_ampliado = linspace(-radio_mayor - 10, radio_mayor + 10, 50);  % Coordenada horizontal extendida&lt;br /&gt;
[malla_X_vertical, malla_Z] = meshgrid(eje_x_ampliado, eje_z);  % Crear la malla&lt;br /&gt;
&lt;br /&gt;
radio_variable=sqrt((1+((malla_Z- altura_inicial)/c).^2)* radio_menor^2);  % Radio según el hiperboloide&lt;br /&gt;
distancia_radial_plano = abs(malla_X_vertical);  % Distancia radial en el plano (x, 0, z)&lt;br /&gt;
&lt;br /&gt;
% Campo de temperatura&lt;br /&gt;
campo_temperatura = temperatura_inicial - diferencia_temperatura_altura * (malla_Z / altura_total).^exponente_z - diferencia_temperatura_radial * (1 - exp(-distancia_radial_plano.^2 ./ (radio_mayor^2 - distancia_radial_plano.^2))); &lt;br /&gt;
&lt;br /&gt;
% Máscara para limitar al hiperboloide&lt;br /&gt;
mascara_hiperboloide = abs(malla_X_vertical) &amp;lt;= radio_variable;  % Máscara para la silueta&lt;br /&gt;
campo_temperatura(~mascara_hiperboloide) = NaN;  % Fuera de la torre, no se muestra&lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en el plano vertical&lt;br /&gt;
[gradiente_X_vertical, gradiente_Z_vertical] = gradient(campo_temperatura, eje_x_ampliado(2) - eje_x_ampliado(1), eje_z(2) - eje_z(1));  % Derivadas en X y Z&lt;br /&gt;
&lt;br /&gt;
% Gráfica 2D del gradiente de temperatura en el plano vertical&lt;br /&gt;
figure('Name', 'Gradiente de Temperatura en el Plano Vertical'); &lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
angulo_contorno_vertical = linspace(0, 2*pi, 100); &lt;br /&gt;
x_izquierda_silueta = -radio_variable;  % Lado izquierdo de la silueta&lt;br /&gt;
x_derecha_silueta = radio_variable;  % Lado derecho de la silueta&lt;br /&gt;
z_silueta = eje_z;  % Coordenadas verticales&lt;br /&gt;
plot(x_izquierda_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado izquierdo de la torre&lt;br /&gt;
hold on; &lt;br /&gt;
plot(x_derecha_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado derecho de la torre&lt;br /&gt;
&lt;br /&gt;
% Representar el campo de temperatura y las flechas dentro de la torre en 2D&lt;br /&gt;
quiver(malla_X_vertical(mascara_hiperboloide), malla_Z(mascara_hiperboloide), gradiente_X_vertical(mascara_hiperboloide), gradiente_Z_vertical(mascara_hiperboloide), 'b', 'LineWidth', 1, 'MaxHeadSize', 3);  % Flechas azules&lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica 2D&lt;br /&gt;
xlabel('x (m)'); &lt;br /&gt;
ylabel('z (m)'); &lt;br /&gt;
title('Gradiente de Temperatura en el Plano Vertical (Vista 2D)'); &lt;br /&gt;
xlim([-radio_mayor - 10, radio_mayor + 10]); &lt;br /&gt;
ylim([0, altura_total]); &lt;br /&gt;
grid on; &lt;br /&gt;
axis equal;  % Asegura que la proporción de los ejes sea la misma&lt;br /&gt;
view(2);  % Vista en 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.1.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 2D con el gradiente de temperatura representado por flechas azules distribuidas en un plano vertical (coordenadas x y z). Las flechas están más densamente distribuidas cerca del eje central y apuntan hacia afuera, indicando que el gradiente de temperatura es mayor en el eje de simetría. Los bordes negros delimitan una forma simétrica similar a un reloj de arena, representando los límites físicos del sistema.&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.2.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 3D del gradiente de temperatura en un plano horizontal a la altura z=2/3H (radio mínimo de 20 m). Las flechas azules representan el campo del gradiente, apuntando radialmente hacia afuera desde el centro de la figura ovalada, indicando un aumento de temperatura hacia los bordes. El contorno magenta delimita la región donde se estudia el gradiente.&lt;br /&gt;
&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82645</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82645"/>
				<updated>2024-12-09T20:37:48Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros&lt;br /&gt;
radio_max_base = 50; % Radio máximo (m)&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
temp_base = 70; % Temperatura en la base (°C)&lt;br /&gt;
temp_tope = 25; % Temperatura en la parte superior (°C)&lt;br /&gt;
delta_temp_vertical = temp_base - temp_tope; % Diferencia de temperatura vertical&lt;br /&gt;
delta_temp_radial = 5; % Variación máxima radial (°C)&lt;br /&gt;
exponente_conveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
angulo_theta = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura_malla = linspace(0, altura_torre, 50); % Coordenada vertical&lt;br /&gt;
alturas_lineas = 0:20:altura_torre; % Alturas de las líneas discontinuas&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
%% 2. Campo de temperatura en el plano vertical&lt;br /&gt;
% Parámetros&lt;br /&gt;
radio_max_base = 50; % Radio máximo (m)&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
temp_base = 70; % Temperatura en la base (°C)&lt;br /&gt;
temp_tope = 25; % Temperatura en la parte superior (°C)&lt;br /&gt;
delta_temp_vertical = temp_base - temp_tope; % Diferencia de temperatura vertical&lt;br /&gt;
delta_temp_radial = 5; % Variación máxima radial (°C)&lt;br /&gt;
exponente_conveccion = 1.5; % Exponente de convección&lt;br /&gt;
figure('Name', 'Plano Vertical del Campo de Temperatura');&lt;br /&gt;
z = linspace(0, altura_torre, 300); % Coordenada vertical&lt;br /&gt;
x = linspace(-radio_max_base - 10, radio_max_base + 10, 300); % Coordenada horizontal&lt;br /&gt;
[X, Z] = meshgrid(x, z); % Crear malla&lt;br /&gt;
R = sqrt((1 + ((Z - centro_hiperboloide) / parametro_c).^2) * radio_min_torre^2); % Radio según el hiperboloide&lt;br /&gt;
r = abs(X); % Distancia radial&lt;br /&gt;
T = temp_base - delta_temp_vertical * (Z / altura_torre).^exponente_conveccion - delta_temp_radial * (1 - exp(-r.^2 ./ (radio_max_base^2 - r.^2))); % Campo de temperatura&lt;br /&gt;
mask = abs(X) &amp;lt;= R; % Máscara para limitar al hiperboloide&lt;br /&gt;
T(~mask) = NaN; % Fuera de la silueta, no mostrar&lt;br /&gt;
% Dibujar el campo de temperatura&lt;br /&gt;
contourf(X, Z, T, 50, 'LineColor', 'none');&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
x_sil_left = -R; % Lado izquierdo de la silueta&lt;br /&gt;
x_sil_right = R; % Lado derecho de la silueta&lt;br /&gt;
z_sil = z; % Coordenadas verticales&lt;br /&gt;
plot(x_sil_left, z_sil, 'k-', 'LineWidth', 2); % Silueta izquierda&lt;br /&gt;
plot(x_sil_right, z_sil, 'k-', 'LineWidth', 2); % Silueta derecha&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('z (m)');&lt;br /&gt;
title('Campo de temperatura (°C) dentro de la silueta de la torre');&lt;br /&gt;
xlim([-radio_max_base - 10, radio_max_base + 10]);&lt;br /&gt;
ylim([0, altura_torre]);&lt;br /&gt;
grid on;&lt;br /&gt;
view(2); % Vista 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
Este apartado consiste en representar el campo del gradiente de temperatura en dos planos diferentes de una torre: un plano vertical que corta la torre pasando por su eje de simetría y un plano horizontal en el radio mínimo de la estructura. La tarea es visualizar cómo varía la temperatura en estos puntos y cómo se representa el gradiente en cada caso.&lt;br /&gt;
&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
altura_inicial = 80;  % Altura inicial de la torre&lt;br /&gt;
radio_menor = 20;  % Radio mínimo (m)&lt;br /&gt;
temperatura_inicial = 70;  % Temperatura en la base (°C)&lt;br /&gt;
diferencia_temperatura_altura = temperatura_inicial - 25;  % Diferencia de temperatura con la altura (base a cima)&lt;br /&gt;
diferencia_temperatura_radial = 5;  % Diferencia de temperatura radial (°C)&lt;br /&gt;
exponente_z = 1.5;  % Exponente para el perfil vertical&lt;br /&gt;
radio_mayor = 50;  % Radio máximo (m)&lt;br /&gt;
altura_total = 120;  % Altura total de la torre (m)&lt;br /&gt;
altura_plano_central = (2/3) * altura_total;  % Altura del plano en el que se analiza&lt;br /&gt;
c=sqrt(((6400*radio_menor^2)/radio_mayor^2-radio_menor^2)));%Parámetro constantec&lt;br /&gt;
&lt;br /&gt;
% Parámetros para la malla dentro del cuadrado [-60, 60] en X y Y con mayor resolución&lt;br /&gt;
resolucion_x = 50;  % Resolución ajustada para el eje X&lt;br /&gt;
resolucion_y = 50;  % Resolución ajustada para el eje Y&lt;br /&gt;
rango_x = linspace(-60, 60, resolucion_x);  % Rango de valores de X de -60 a 60&lt;br /&gt;
rango_y = linspace(-60, 60, resolucion_y);  % Rango de valores de Y de -60 a 60&lt;br /&gt;
[malla_X, malla_Y] = meshgrid(rango_x, rango_y); &lt;br /&gt;
&lt;br /&gt;
% Filtrar puntos dentro del círculo de radio 20&lt;br /&gt;
filtro_radio_inferior = malla_X.^2 + malla_Y.^2 &amp;lt;= radio_menor^2;  % Solo puntos dentro del radio mínimo (20 metros)&lt;br /&gt;
malla_X = malla_X(filtro_radio_inferior); &lt;br /&gt;
malla_Y = malla_Y(filtro_radio_inferior); &lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en dirección Z&lt;br /&gt;
gradiente_X = zeros(size(malla_X));  % No hay componente en X&lt;br /&gt;
gradiente_Y = zeros(size(malla_Y));  % No hay componente en Y&lt;br /&gt;
gradiente_Z = -0.8 * ones(size(malla_X));  % Flechas hacia abajo, magnitud ajustada&lt;br /&gt;
&lt;br /&gt;
% Gráfica 3D&lt;br /&gt;
figure; &lt;br /&gt;
hold on; &lt;br /&gt;
% Flechas del gradiente de temperatura&lt;br /&gt;
quiver3(malla_X, malla_Y, altura_plano_central * ones(size(malla_X)), gradiente_X, gradiente_Y, gradiente_Z, 0.5, ... &lt;br /&gt;
'Color', [0.3 0.5 1], 'LineWidth', 1, 'MaxHeadSize', 2); &lt;br /&gt;
&lt;br /&gt;
% Contorno de la torre con radio 20&lt;br /&gt;
angulo_contorno = linspace(0, 2*pi, 100); &lt;br /&gt;
x_contorno = radio_menor * cos(angulo_contorno); &lt;br /&gt;
y_contorno = radio_menor * sin(angulo_contorno); &lt;br /&gt;
z_contorno = altura_plano_central * ones(size(angulo_contorno)); &lt;br /&gt;
plot3(x_contorno, y_contorno, z_contorno, 'm--', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica&lt;br /&gt;
title('Gradiente de temperatura en el plano z = 2/3 H (Radio = 20m)'); &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Altura Z (m)'); &lt;br /&gt;
axis([-50 50 -50 50]);  % Ajuste de los límites del gráfico&lt;br /&gt;
axis equal; &lt;br /&gt;
grid on; &lt;br /&gt;
view(75, 30);  % Vista 3D inclinada para mejor percepción&lt;br /&gt;
&lt;br /&gt;
% Crear malla para el plano vertical&lt;br /&gt;
eje_z = linspace(0, altura_total, 50);  % Coordenada vertical&lt;br /&gt;
eje_x_ampliado = linspace(-radio_mayor - 10, radio_mayor + 10, 50);  % Coordenada horizontal extendida&lt;br /&gt;
[malla_X_vertical, malla_Z] = meshgrid(eje_x_ampliado, eje_z);  % Crear la malla&lt;br /&gt;
&lt;br /&gt;
radio_variable=sqrt((1+((malla_Z- altura_inicial)/c).^2)* radio_menor^2);  % Radio según el hiperboloide&lt;br /&gt;
distancia_radial_plano = abs(malla_X_vertical);  % Distancia radial en el plano (x, 0, z)&lt;br /&gt;
&lt;br /&gt;
% Campo de temperatura&lt;br /&gt;
campo_temperatura = temperatura_inicial - diferencia_temperatura_altura * (malla_Z / altura_total).^exponente_z - diferencia_temperatura_radial * (1 - exp(-distancia_radial_plano.^2 ./ (radio_mayor^2 - distancia_radial_plano.^2))); &lt;br /&gt;
&lt;br /&gt;
% Máscara para limitar al hiperboloide&lt;br /&gt;
mascara_hiperboloide = abs(malla_X_vertical) &amp;lt;= radio_variable;  % Máscara para la silueta&lt;br /&gt;
campo_temperatura(~mascara_hiperboloide) = NaN;  % Fuera de la torre, no se muestra&lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en el plano vertical&lt;br /&gt;
[gradiente_X_vertical, gradiente_Z_vertical] = gradient(campo_temperatura, eje_x_ampliado(2) - eje_x_ampliado(1), eje_z(2) - eje_z(1));  % Derivadas en X y Z&lt;br /&gt;
&lt;br /&gt;
% Gráfica 2D del gradiente de temperatura en el plano vertical&lt;br /&gt;
figure('Name', 'Gradiente de Temperatura en el Plano Vertical'); &lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
angulo_contorno_vertical = linspace(0, 2*pi, 100); &lt;br /&gt;
x_izquierda_silueta = -radio_variable;  % Lado izquierdo de la silueta&lt;br /&gt;
x_derecha_silueta = radio_variable;  % Lado derecho de la silueta&lt;br /&gt;
z_silueta = eje_z;  % Coordenadas verticales&lt;br /&gt;
plot(x_izquierda_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado izquierdo de la torre&lt;br /&gt;
hold on; &lt;br /&gt;
plot(x_derecha_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado derecho de la torre&lt;br /&gt;
&lt;br /&gt;
% Representar el campo de temperatura y las flechas dentro de la torre en 2D&lt;br /&gt;
quiver(malla_X_vertical(mascara_hiperboloide), malla_Z(mascara_hiperboloide), gradiente_X_vertical(mascara_hiperboloide), gradiente_Z_vertical(mascara_hiperboloide), 'b', 'LineWidth', 1, 'MaxHeadSize', 3);  % Flechas azules&lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica 2D&lt;br /&gt;
xlabel('x (m)'); &lt;br /&gt;
ylabel('z (m)'); &lt;br /&gt;
title('Gradiente de Temperatura en el Plano Vertical (Vista 2D)'); &lt;br /&gt;
xlim([-radio_mayor - 10, radio_mayor + 10]); &lt;br /&gt;
ylim([0, altura_total]); &lt;br /&gt;
grid on; &lt;br /&gt;
axis equal;  % Asegura que la proporción de los ejes sea la misma&lt;br /&gt;
view(2);  % Vista en 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.1.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 2D con el gradiente de temperatura representado por flechas azules distribuidas en un plano vertical (coordenadas x y z). Las flechas están más densamente distribuidas cerca del eje central y apuntan hacia afuera, indicando que el gradiente de temperatura es mayor en el eje de simetría. Los bordes negros delimitan una forma simétrica similar a un reloj de arena, representando los límites físicos del sistema.&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.2.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 3D del gradiente de temperatura en un plano horizontal a la altura z=2/3H (radio mínimo de 20 m). Las flechas azules representan el campo del gradiente, apuntando radialmente hacia afuera desde el centro de la figura ovalada, indicando un aumento de temperatura hacia los bordes. El contorno magenta delimita la región donde se estudia el gradiente.&lt;br /&gt;
&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82642</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82642"/>
				<updated>2024-12-09T20:36:52Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* 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. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros&lt;br /&gt;
radio_max_base = 50; % Radio máximo (m)&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
temp_base = 70; % Temperatura en la base (°C)&lt;br /&gt;
temp_tope = 25; % Temperatura en la parte superior (°C)&lt;br /&gt;
delta_temp_vertical = temp_base - temp_tope; % Diferencia de temperatura vertical&lt;br /&gt;
delta_temp_radial = 5; % Variación máxima radial (°C)&lt;br /&gt;
exponente_conveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
angulo_theta = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura_malla = linspace(0, altura_torre, 50); % Coordenada vertical&lt;br /&gt;
alturas_lineas = 0:20:altura_torre; % Alturas de las líneas discontinuas&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
%% 2. Campo de temperatura en el plano vertical&lt;br /&gt;
% Parámetros&lt;br /&gt;
radio_max_base = 50; % Radio máximo (m)&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
temp_base = 70; % Temperatura en la base (°C)&lt;br /&gt;
temp_tope = 25; % Temperatura en la parte superior (°C)&lt;br /&gt;
delta_temp_vertical = temp_base - temp_tope; % Diferencia de temperatura vertical&lt;br /&gt;
delta_temp_radial = 5; % Variación máxima radial (°C)&lt;br /&gt;
exponente_conveccion = 1.5; % Exponente de convección&lt;br /&gt;
figure('Name', 'Plano Vertical del Campo de Temperatura');&lt;br /&gt;
z = linspace(0, altura_torre, 300); % Coordenada vertical&lt;br /&gt;
x = linspace(-radio_max_base - 10, radio_max_base + 10, 300); % Coordenada horizontal&lt;br /&gt;
[X, Z] = meshgrid(x, z); % Crear malla&lt;br /&gt;
R = sqrt((1 + ((Z - centro_hiperboloide) / parametro_c).^2) * radio_min_torre^2); % Radio según el hiperboloide&lt;br /&gt;
r = abs(X); % Distancia radial&lt;br /&gt;
T = temp_base - delta_temp_vertical * (Z / altura_torre).^exponente_conveccion - delta_temp_radial * (1 - exp(-r.^2 ./ (radio_max_base^2 - r.^2))); % Campo de temperatura&lt;br /&gt;
mask = abs(X) &amp;lt;= R; % Máscara para limitar al hiperboloide&lt;br /&gt;
T(~mask) = NaN; % Fuera de la silueta, no mostrar&lt;br /&gt;
% Dibujar el campo de temperatura&lt;br /&gt;
contourf(X, Z, T, 50, 'LineColor', 'none');&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
x_sil_left = -R; % Lado izquierdo de la silueta&lt;br /&gt;
x_sil_right = R; % Lado derecho de la silueta&lt;br /&gt;
z_sil = z; % Coordenadas verticales&lt;br /&gt;
plot(x_sil_left, z_sil, 'k-', 'LineWidth', 2); % Silueta izquierda&lt;br /&gt;
plot(x_sil_right, z_sil, 'k-', 'LineWidth', 2); % Silueta derecha&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('z (m)');&lt;br /&gt;
title('Campo de temperatura (°C) dentro de la silueta de la torre');&lt;br /&gt;
xlim([-radio_max_base - 10, radio_max_base + 10]);&lt;br /&gt;
ylim([0, altura_torre]);&lt;br /&gt;
grid on;&lt;br /&gt;
view(2); % Vista 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
Este apartado consiste en representar el campo del gradiente de temperatura en dos planos diferentes de una torre: un plano vertical que corta la torre pasando por su eje de simetría y un plano horizontal en el radio mínimo de la estructura. La tarea es visualizar cómo varía la temperatura en estos puntos y cómo se representa el gradiente en cada caso.&lt;br /&gt;
&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
altura_inicial = 80;  % Altura inicial de la torre&lt;br /&gt;
radio_menor = 20;  % Radio mínimo (m)&lt;br /&gt;
temperatura_inicial = 70;  % Temperatura en la base (°C)&lt;br /&gt;
diferencia_temperatura_altura = temperatura_inicial - 25;  % Diferencia de temperatura con la altura (base a cima)&lt;br /&gt;
diferencia_temperatura_radial = 5;  % Diferencia de temperatura radial (°C)&lt;br /&gt;
exponente_z = 1.5;  % Exponente para el perfil vertical&lt;br /&gt;
radio_mayor = 50;  % Radio máximo (m)&lt;br /&gt;
altura_total = 120;  % Altura total de la torre (m)&lt;br /&gt;
altura_plano_central = (2/3) * altura_total;  % Altura del plano en el que se analiza&lt;br /&gt;
c=sqrt(((6400*radio_menor^2)/radio_mayor^2-radio_menor^2)));%Parámetro constantec&lt;br /&gt;
&lt;br /&gt;
% Parámetros para la malla dentro del cuadrado [-60, 60] en X y Y con mayor resolución&lt;br /&gt;
resolucion_x = 50;  % Resolución ajustada para el eje X&lt;br /&gt;
resolucion_y = 50;  % Resolución ajustada para el eje Y&lt;br /&gt;
rango_x = linspace(-60, 60, resolucion_x);  % Rango de valores de X de -60 a 60&lt;br /&gt;
rango_y = linspace(-60, 60, resolucion_y);  % Rango de valores de Y de -60 a 60&lt;br /&gt;
[malla_X, malla_Y] = meshgrid(rango_x, rango_y); &lt;br /&gt;
&lt;br /&gt;
% Filtrar puntos dentro del círculo de radio 20&lt;br /&gt;
filtro_radio_inferior = malla_X.^2 + malla_Y.^2 &amp;lt;= radio_menor^2;  % Solo puntos dentro del radio mínimo (20 metros)&lt;br /&gt;
malla_X = malla_X(filtro_radio_inferior); &lt;br /&gt;
malla_Y = malla_Y(filtro_radio_inferior); &lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en dirección Z&lt;br /&gt;
gradiente_X = zeros(size(malla_X));  % No hay componente en X&lt;br /&gt;
gradiente_Y = zeros(size(malla_Y));  % No hay componente en Y&lt;br /&gt;
gradiente_Z = -0.8 * ones(size(malla_X));  % Flechas hacia abajo, magnitud ajustada&lt;br /&gt;
&lt;br /&gt;
% Gráfica 3D&lt;br /&gt;
figure; &lt;br /&gt;
hold on; &lt;br /&gt;
% Flechas del gradiente de temperatura&lt;br /&gt;
quiver3(malla_X, malla_Y, altura_plano_central * ones(size(malla_X)), gradiente_X, gradiente_Y, gradiente_Z, 0.5, ... &lt;br /&gt;
'Color', [0.3 0.5 1], 'LineWidth', 1, 'MaxHeadSize', 2); &lt;br /&gt;
&lt;br /&gt;
% Contorno de la torre con radio 20&lt;br /&gt;
angulo_contorno = linspace(0, 2*pi, 100); &lt;br /&gt;
x_contorno = radio_menor * cos(angulo_contorno); &lt;br /&gt;
y_contorno = radio_menor * sin(angulo_contorno); &lt;br /&gt;
z_contorno = altura_plano_central * ones(size(angulo_contorno)); &lt;br /&gt;
plot3(x_contorno, y_contorno, z_contorno, 'm--', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica&lt;br /&gt;
title('Gradiente de temperatura en el plano z = 2/3 H (Radio = 20m)'); &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Altura Z (m)'); &lt;br /&gt;
axis([-50 50 -50 50]);  % Ajuste de los límites del gráfico&lt;br /&gt;
axis equal; &lt;br /&gt;
grid on; &lt;br /&gt;
view(75, 30);  % Vista 3D inclinada para mejor percepción&lt;br /&gt;
&lt;br /&gt;
% Crear malla para el plano vertical&lt;br /&gt;
eje_z = linspace(0, altura_total, 50);  % Coordenada vertical&lt;br /&gt;
eje_x_ampliado = linspace(-radio_mayor - 10, radio_mayor + 10, 50);  % Coordenada horizontal extendida&lt;br /&gt;
[malla_X_vertical, malla_Z] = meshgrid(eje_x_ampliado, eje_z);  % Crear la malla&lt;br /&gt;
&lt;br /&gt;
radio_variable=sqrt((1+((malla_Z- altura_inicial)/c).^2)* radio_menor^2);  % Radio según el hiperboloide&lt;br /&gt;
distancia_radial_plano = abs(malla_X_vertical);  % Distancia radial en el plano (x, 0, z)&lt;br /&gt;
&lt;br /&gt;
% Campo de temperatura&lt;br /&gt;
campo_temperatura = temperatura_inicial - diferencia_temperatura_altura * (malla_Z / altura_total).^exponente_z - diferencia_temperatura_radial * (1 - exp(-distancia_radial_plano.^2 ./ (radio_mayor^2 - distancia_radial_plano.^2))); &lt;br /&gt;
&lt;br /&gt;
% Máscara para limitar al hiperboloide&lt;br /&gt;
mascara_hiperboloide = abs(malla_X_vertical) &amp;lt;= radio_variable;  % Máscara para la silueta&lt;br /&gt;
campo_temperatura(~mascara_hiperboloide) = NaN;  % Fuera de la torre, no se muestra&lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en el plano vertical&lt;br /&gt;
[gradiente_X_vertical, gradiente_Z_vertical] = gradient(campo_temperatura, eje_x_ampliado(2) - eje_x_ampliado(1), eje_z(2) - eje_z(1));  % Derivadas en X y Z&lt;br /&gt;
&lt;br /&gt;
% Gráfica 2D del gradiente de temperatura en el plano vertical&lt;br /&gt;
figure('Name', 'Gradiente de Temperatura en el Plano Vertical'); &lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
angulo_contorno_vertical = linspace(0, 2*pi, 100); &lt;br /&gt;
x_izquierda_silueta = -radio_variable;  % Lado izquierdo de la silueta&lt;br /&gt;
x_derecha_silueta = radio_variable;  % Lado derecho de la silueta&lt;br /&gt;
z_silueta = eje_z;  % Coordenadas verticales&lt;br /&gt;
plot(x_izquierda_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado izquierdo de la torre&lt;br /&gt;
hold on; &lt;br /&gt;
plot(x_derecha_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado derecho de la torre&lt;br /&gt;
&lt;br /&gt;
% Representar el campo de temperatura y las flechas dentro de la torre en 2D&lt;br /&gt;
quiver(malla_X_vertical(mascara_hiperboloide), malla_Z(mascara_hiperboloide), gradiente_X_vertical(mascara_hiperboloide), gradiente_Z_vertical(mascara_hiperboloide), 'b', 'LineWidth', 1, 'MaxHeadSize', 3);  % Flechas azules&lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica 2D&lt;br /&gt;
xlabel('x (m)'); &lt;br /&gt;
ylabel('z (m)'); &lt;br /&gt;
title('Gradiente de Temperatura en el Plano Vertical (Vista 2D)'); &lt;br /&gt;
xlim([-radio_mayor - 10, radio_mayor + 10]); &lt;br /&gt;
ylim([0, altura_total]); &lt;br /&gt;
grid on; &lt;br /&gt;
axis equal;  % Asegura que la proporción de los ejes sea la misma&lt;br /&gt;
view(2);  % Vista en 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.1.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 2D con el gradiente de temperatura representado por flechas azules distribuidas en un plano vertical (coordenadas x y z). Las flechas están más densamente distribuidas cerca del eje central y apuntan hacia afuera, indicando que el gradiente de temperatura es mayor en el eje de simetría. Los bordes negros delimitan una forma simétrica similar a un reloj de arena, representando los límites físicos del sistema.&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.2.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 3D del gradiente de temperatura en un plano horizontal a la altura z=2/3H (radio mínimo de 20 m). Las flechas azules representan el campo del gradiente, apuntando radialmente hacia afuera desde el centro de la figura ovalada, indicando un aumento de temperatura hacia los bordes. El contorno magenta delimita la región donde se estudia el gradiente.&lt;br /&gt;
&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82638</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82638"/>
				<updated>2024-12-09T20:35:00Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* 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. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros&lt;br /&gt;
radio_max_base = 50; % Radio máximo (m)&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
temp_base = 70; % Temperatura en la base (°C)&lt;br /&gt;
temp_tope = 25; % Temperatura en la parte superior (°C)&lt;br /&gt;
delta_temp_vertical = temp_base - temp_tope; % Diferencia de temperatura vertical&lt;br /&gt;
delta_temp_radial = 5; % Variación máxima radial (°C)&lt;br /&gt;
exponente_conveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
angulo_theta = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura_malla = linspace(0, altura_torre, 50); % Coordenada vertical&lt;br /&gt;
alturas_lineas = 0:20:altura_torre; % Alturas de las líneas discontinuas&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
%% 2. Campo de temperatura en el plano vertical&lt;br /&gt;
% Parámetros&lt;br /&gt;
radio_max_base = 50; % Radio máximo (m)&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
temp_base = 70; % Temperatura en la base (°C)&lt;br /&gt;
temp_tope = 25; % Temperatura en la parte superior (°C)&lt;br /&gt;
delta_temp_vertical = temp_base - temp_tope; % Diferencia de temperatura vertical&lt;br /&gt;
delta_temp_radial = 5; % Variación máxima radial (°C)&lt;br /&gt;
exponente_conveccion = 1.5; % Exponente de convección&lt;br /&gt;
figure('Name', 'Plano Vertical del Campo de Temperatura');&lt;br /&gt;
z = linspace(0, altura_torre, 300); % Coordenada vertical&lt;br /&gt;
x = linspace(-radio_max_base - 10, radio_max_base + 10, 300); % Coordenada horizontal&lt;br /&gt;
[X, Z] = meshgrid(x, z); % Crear malla&lt;br /&gt;
R = sqrt((1 + ((Z - centro_hiperboloide) / parametro_c).^2) * radio_min_torre^2); % Radio según el hiperboloide&lt;br /&gt;
r = abs(X); % Distancia radial&lt;br /&gt;
T = temp_base - delta_temp_vertical * (Z / altura_torre).^exponente_conveccion - delta_temp_radial * (1 - exp(-r.^2 ./ (radio_max_base^2 - r.^2))); % Campo de temperatura&lt;br /&gt;
mask = abs(X) &amp;lt;= R; % Máscara para limitar al hiperboloide&lt;br /&gt;
T(~mask) = NaN; % Fuera de la silueta, no mostrar&lt;br /&gt;
% Dibujar el campo de temperatura&lt;br /&gt;
contourf(X, Z, T, 50, 'LineColor', 'none');&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
x_sil_left = -R; % Lado izquierdo de la silueta&lt;br /&gt;
x_sil_right = R; % Lado derecho de la silueta&lt;br /&gt;
z_sil = z; % Coordenadas verticales&lt;br /&gt;
plot(x_sil_left, z_sil, 'k-', 'LineWidth', 2); % Silueta izquierda&lt;br /&gt;
plot(x_sil_right, z_sil, 'k-', 'LineWidth', 2); % Silueta derecha&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('z (m)');&lt;br /&gt;
title('Campo de temperatura (°C) dentro de la silueta de la torre');&lt;br /&gt;
xlim([-radio_max_base - 10, radio_max_base + 10]);&lt;br /&gt;
ylim([0, altura_torre]);&lt;br /&gt;
grid on;&lt;br /&gt;
view(2); % Vista 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
Este apartado consiste en representar el campo del gradiente de temperatura en dos planos diferentes de una torre: un plano vertical que corta la torre pasando por su eje de simetría y un plano horizontal en el radio mínimo de la estructura. La tarea es visualizar cómo varía la temperatura en estos puntos y cómo se representa el gradiente en cada caso.&lt;br /&gt;
&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
altura_inicial = 80;  % Altura inicial de la torre&lt;br /&gt;
radio_menor = 20;  % Radio mínimo (m)&lt;br /&gt;
temperatura_inicial = 70;  % Temperatura en la base (°C)&lt;br /&gt;
diferencia_temperatura_altura = temperatura_inicial - 25;  % Diferencia de temperatura con la altura (base a cima)&lt;br /&gt;
diferencia_temperatura_radial = 5;  % Diferencia de temperatura radial (°C)&lt;br /&gt;
exponente_z = 1.5;  % Exponente para el perfil vertical&lt;br /&gt;
radio_mayor = 50;  % Radio máximo (m)&lt;br /&gt;
altura_total = 120;  % Altura total de la torre (m)&lt;br /&gt;
altura_plano_central = (2/3) * altura_total;  % Altura del plano en el que se analiza&lt;br /&gt;
c=sqrt(((6400*radio_menor^2)/radio_mayor^2-radio_menor^2)));%Parámetro constantec&lt;br /&gt;
&lt;br /&gt;
% Parámetros para la malla dentro del cuadrado [-60, 60] en X y Y con mayor resolución&lt;br /&gt;
resolucion_x = 50;  % Resolución ajustada para el eje X&lt;br /&gt;
resolucion_y = 50;  % Resolución ajustada para el eje Y&lt;br /&gt;
rango_x = linspace(-60, 60, resolucion_x);  % Rango de valores de X de -60 a 60&lt;br /&gt;
rango_y = linspace(-60, 60, resolucion_y);  % Rango de valores de Y de -60 a 60&lt;br /&gt;
[malla_X, malla_Y] = meshgrid(rango_x, rango_y); &lt;br /&gt;
&lt;br /&gt;
% Filtrar puntos dentro del círculo de radio 20&lt;br /&gt;
filtro_radio_inferior = malla_X.^2 + malla_Y.^2 &amp;lt;= radio_menor^2;  % Solo puntos dentro del radio mínimo (20 metros)&lt;br /&gt;
malla_X = malla_X(filtro_radio_inferior); &lt;br /&gt;
malla_Y = malla_Y(filtro_radio_inferior); &lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en dirección Z&lt;br /&gt;
gradiente_X = zeros(size(malla_X));  % No hay componente en X&lt;br /&gt;
gradiente_Y = zeros(size(malla_Y));  % No hay componente en Y&lt;br /&gt;
gradiente_Z = -0.8 * ones(size(malla_X));  % Flechas hacia abajo, magnitud ajustada&lt;br /&gt;
&lt;br /&gt;
% Gráfica 3D&lt;br /&gt;
figure; &lt;br /&gt;
hold on; &lt;br /&gt;
% Flechas del gradiente de temperatura&lt;br /&gt;
quiver3(malla_X, malla_Y, altura_plano_central * ones(size(malla_X)), gradiente_X, gradiente_Y, gradiente_Z, 0.5, ... &lt;br /&gt;
'Color', [0.3 0.5 1], 'LineWidth', 1, 'MaxHeadSize', 2); &lt;br /&gt;
&lt;br /&gt;
% Contorno de la torre con radio 20&lt;br /&gt;
angulo_contorno = linspace(0, 2*pi, 100); &lt;br /&gt;
x_contorno = radio_menor * cos(angulo_contorno); &lt;br /&gt;
y_contorno = radio_menor * sin(angulo_contorno); &lt;br /&gt;
z_contorno = altura_plano_central * ones(size(angulo_contorno)); &lt;br /&gt;
plot3(x_contorno, y_contorno, z_contorno, 'm--', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica&lt;br /&gt;
title('Gradiente de temperatura en el plano z = 2/3 H (Radio = 20m)'); &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Altura Z (m)'); &lt;br /&gt;
axis([-50 50 -50 50]);  % Ajuste de los límites del gráfico&lt;br /&gt;
axis equal; &lt;br /&gt;
grid on; &lt;br /&gt;
view(75, 30);  % Vista 3D inclinada para mejor percepción&lt;br /&gt;
&lt;br /&gt;
% Crear malla para el plano vertical&lt;br /&gt;
eje_z = linspace(0, altura_total, 50);  % Coordenada vertical&lt;br /&gt;
eje_x_ampliado = linspace(-radio_mayor - 10, radio_mayor + 10, 50);  % Coordenada horizontal extendida&lt;br /&gt;
[malla_X_vertical, malla_Z] = meshgrid(eje_x_ampliado, eje_z);  % Crear la malla&lt;br /&gt;
&lt;br /&gt;
radio_variable=sqrt((1+((malla_Z- altura_inicial)/c).^2)* radio_menor^2);  % Radio según el hiperboloide&lt;br /&gt;
distancia_radial_plano = abs(malla_X_vertical);  % Distancia radial en el plano (x, 0, z)&lt;br /&gt;
&lt;br /&gt;
% Campo de temperatura&lt;br /&gt;
campo_temperatura = temperatura_inicial - diferencia_temperatura_altura * (malla_Z / altura_total).^exponente_z - diferencia_temperatura_radial * (1 - exp(-distancia_radial_plano.^2 ./ (radio_mayor^2 - distancia_radial_plano.^2))); &lt;br /&gt;
&lt;br /&gt;
% Máscara para limitar al hiperboloide&lt;br /&gt;
mascara_hiperboloide = abs(malla_X_vertical) &amp;lt;= radio_variable;  % Máscara para la silueta&lt;br /&gt;
campo_temperatura(~mascara_hiperboloide) = NaN;  % Fuera de la torre, no se muestra&lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en el plano vertical&lt;br /&gt;
[gradiente_X_vertical, gradiente_Z_vertical] = gradient(campo_temperatura, eje_x_ampliado(2) - eje_x_ampliado(1), eje_z(2) - eje_z(1));  % Derivadas en X y Z&lt;br /&gt;
&lt;br /&gt;
% Gráfica 2D del gradiente de temperatura en el plano vertical&lt;br /&gt;
figure('Name', 'Gradiente de Temperatura en el Plano Vertical'); &lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
angulo_contorno_vertical = linspace(0, 2*pi, 100); &lt;br /&gt;
x_izquierda_silueta = -radio_variable;  % Lado izquierdo de la silueta&lt;br /&gt;
x_derecha_silueta = radio_variable;  % Lado derecho de la silueta&lt;br /&gt;
z_silueta = eje_z;  % Coordenadas verticales&lt;br /&gt;
plot(x_izquierda_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado izquierdo de la torre&lt;br /&gt;
hold on; &lt;br /&gt;
plot(x_derecha_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado derecho de la torre&lt;br /&gt;
&lt;br /&gt;
% Representar el campo de temperatura y las flechas dentro de la torre en 2D&lt;br /&gt;
quiver(malla_X_vertical(mascara_hiperboloide), malla_Z(mascara_hiperboloide), gradiente_X_vertical(mascara_hiperboloide), gradiente_Z_vertical(mascara_hiperboloide), 'b', 'LineWidth', 1, 'MaxHeadSize', 3);  % Flechas azules&lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica 2D&lt;br /&gt;
xlabel('x (m)'); &lt;br /&gt;
ylabel('z (m)'); &lt;br /&gt;
title('Gradiente de Temperatura en el Plano Vertical (Vista 2D)'); &lt;br /&gt;
xlim([-radio_mayor - 10, radio_mayor + 10]); &lt;br /&gt;
ylim([0, altura_total]); &lt;br /&gt;
grid on; &lt;br /&gt;
axis equal;  % Asegura que la proporción de los ejes sea la misma&lt;br /&gt;
view(2);  % Vista en 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.1.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 2D con el gradiente de temperatura representado por flechas azules distribuidas en un plano vertical (coordenadas x y z). Las flechas están más densamente distribuidas cerca del eje central y apuntan hacia afuera, indicando que el gradiente de temperatura es mayor en el eje de simetría. Los bordes negros delimitan una forma simétrica similar a un reloj de arena, representando los límites físicos del sistema.&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.2.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 3D del gradiente de temperatura en un plano horizontal a la altura z=2/3H (radio mínimo de 20 m). Las flechas azules representan el campo del gradiente, apuntando radialmente hacia afuera desde el centro de la figura ovalada, indicando un aumento de temperatura hacia los bordes. El contorno magenta delimita la región donde se estudia el gradiente.&lt;br /&gt;
&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82634</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=82634"/>
				<updated>2024-12-09T20:32:32Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* 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 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
Este apartado consiste en representar el campo del gradiente de temperatura en dos planos diferentes de una torre: un plano vertical que corta la torre pasando por su eje de simetría y un plano horizontal en el radio mínimo de la estructura. La tarea es visualizar cómo varía la temperatura en estos puntos y cómo se representa el gradiente en cada caso.&lt;br /&gt;
&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
altura_inicial = 80;  % Altura inicial de la torre&lt;br /&gt;
radio_menor = 20;  % Radio mínimo (m)&lt;br /&gt;
temperatura_inicial = 70;  % Temperatura en la base (°C)&lt;br /&gt;
diferencia_temperatura_altura = temperatura_inicial - 25;  % Diferencia de temperatura con la altura (base a cima)&lt;br /&gt;
diferencia_temperatura_radial = 5;  % Diferencia de temperatura radial (°C)&lt;br /&gt;
exponente_z = 1.5;  % Exponente para el perfil vertical&lt;br /&gt;
radio_mayor = 50;  % Radio máximo (m)&lt;br /&gt;
altura_total = 120;  % Altura total de la torre (m)&lt;br /&gt;
altura_plano_central = (2/3) * altura_total;  % Altura del plano en el que se analiza&lt;br /&gt;
c=sqrt(((6400*radio_menor^2)/radio_mayor^2-radio_menor^2)));%Parámetro constantec&lt;br /&gt;
&lt;br /&gt;
% Parámetros para la malla dentro del cuadrado [-60, 60] en X y Y con mayor resolución&lt;br /&gt;
resolucion_x = 50;  % Resolución ajustada para el eje X&lt;br /&gt;
resolucion_y = 50;  % Resolución ajustada para el eje Y&lt;br /&gt;
rango_x = linspace(-60, 60, resolucion_x);  % Rango de valores de X de -60 a 60&lt;br /&gt;
rango_y = linspace(-60, 60, resolucion_y);  % Rango de valores de Y de -60 a 60&lt;br /&gt;
[malla_X, malla_Y] = meshgrid(rango_x, rango_y); &lt;br /&gt;
&lt;br /&gt;
% Filtrar puntos dentro del círculo de radio 20&lt;br /&gt;
filtro_radio_inferior = malla_X.^2 + malla_Y.^2 &amp;lt;= radio_menor^2;  % Solo puntos dentro del radio mínimo (20 metros)&lt;br /&gt;
malla_X = malla_X(filtro_radio_inferior); &lt;br /&gt;
malla_Y = malla_Y(filtro_radio_inferior); &lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en dirección Z&lt;br /&gt;
gradiente_X = zeros(size(malla_X));  % No hay componente en X&lt;br /&gt;
gradiente_Y = zeros(size(malla_Y));  % No hay componente en Y&lt;br /&gt;
gradiente_Z = -0.8 * ones(size(malla_X));  % Flechas hacia abajo, magnitud ajustada&lt;br /&gt;
&lt;br /&gt;
% Gráfica 3D&lt;br /&gt;
figure; &lt;br /&gt;
hold on; &lt;br /&gt;
% Flechas del gradiente de temperatura&lt;br /&gt;
quiver3(malla_X, malla_Y, altura_plano_central * ones(size(malla_X)), gradiente_X, gradiente_Y, gradiente_Z, 0.5, ... &lt;br /&gt;
'Color', [0.3 0.5 1], 'LineWidth', 1, 'MaxHeadSize', 2); &lt;br /&gt;
&lt;br /&gt;
% Contorno de la torre con radio 20&lt;br /&gt;
angulo_contorno = linspace(0, 2*pi, 100); &lt;br /&gt;
x_contorno = radio_menor * cos(angulo_contorno); &lt;br /&gt;
y_contorno = radio_menor * sin(angulo_contorno); &lt;br /&gt;
z_contorno = altura_plano_central * ones(size(angulo_contorno)); &lt;br /&gt;
plot3(x_contorno, y_contorno, z_contorno, 'm--', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica&lt;br /&gt;
title('Gradiente de temperatura en el plano z = 2/3 H (Radio = 20m)'); &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Altura Z (m)'); &lt;br /&gt;
axis([-50 50 -50 50]);  % Ajuste de los límites del gráfico&lt;br /&gt;
axis equal; &lt;br /&gt;
grid on; &lt;br /&gt;
view(75, 30);  % Vista 3D inclinada para mejor percepción&lt;br /&gt;
&lt;br /&gt;
% Crear malla para el plano vertical&lt;br /&gt;
eje_z = linspace(0, altura_total, 50);  % Coordenada vertical&lt;br /&gt;
eje_x_ampliado = linspace(-radio_mayor - 10, radio_mayor + 10, 50);  % Coordenada horizontal extendida&lt;br /&gt;
[malla_X_vertical, malla_Z] = meshgrid(eje_x_ampliado, eje_z);  % Crear la malla&lt;br /&gt;
&lt;br /&gt;
radio_variable=sqrt((1+((malla_Z- altura_inicial)/c).^2)* radio_menor^2);  % Radio según el hiperboloide&lt;br /&gt;
distancia_radial_plano = abs(malla_X_vertical);  % Distancia radial en el plano (x, 0, z)&lt;br /&gt;
&lt;br /&gt;
% Campo de temperatura&lt;br /&gt;
campo_temperatura = temperatura_inicial - diferencia_temperatura_altura * (malla_Z / altura_total).^exponente_z - diferencia_temperatura_radial * (1 - exp(-distancia_radial_plano.^2 ./ (radio_mayor^2 - distancia_radial_plano.^2))); &lt;br /&gt;
&lt;br /&gt;
% Máscara para limitar al hiperboloide&lt;br /&gt;
mascara_hiperboloide = abs(malla_X_vertical) &amp;lt;= radio_variable;  % Máscara para la silueta&lt;br /&gt;
campo_temperatura(~mascara_hiperboloide) = NaN;  % Fuera de la torre, no se muestra&lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en el plano vertical&lt;br /&gt;
[gradiente_X_vertical, gradiente_Z_vertical] = gradient(campo_temperatura, eje_x_ampliado(2) - eje_x_ampliado(1), eje_z(2) - eje_z(1));  % Derivadas en X y Z&lt;br /&gt;
&lt;br /&gt;
% Gráfica 2D del gradiente de temperatura en el plano vertical&lt;br /&gt;
figure('Name', 'Gradiente de Temperatura en el Plano Vertical'); &lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
angulo_contorno_vertical = linspace(0, 2*pi, 100); &lt;br /&gt;
x_izquierda_silueta = -radio_variable;  % Lado izquierdo de la silueta&lt;br /&gt;
x_derecha_silueta = radio_variable;  % Lado derecho de la silueta&lt;br /&gt;
z_silueta = eje_z;  % Coordenadas verticales&lt;br /&gt;
plot(x_izquierda_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado izquierdo de la torre&lt;br /&gt;
hold on; &lt;br /&gt;
plot(x_derecha_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado derecho de la torre&lt;br /&gt;
&lt;br /&gt;
% Representar el campo de temperatura y las flechas dentro de la torre en 2D&lt;br /&gt;
quiver(malla_X_vertical(mascara_hiperboloide), malla_Z(mascara_hiperboloide), gradiente_X_vertical(mascara_hiperboloide), gradiente_Z_vertical(mascara_hiperboloide), 'b', 'LineWidth', 1, 'MaxHeadSize', 3);  % Flechas azules&lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica 2D&lt;br /&gt;
xlabel('x (m)'); &lt;br /&gt;
ylabel('z (m)'); &lt;br /&gt;
title('Gradiente de Temperatura en el Plano Vertical (Vista 2D)'); &lt;br /&gt;
xlim([-radio_mayor - 10, radio_mayor + 10]); &lt;br /&gt;
ylim([0, altura_total]); &lt;br /&gt;
grid on; &lt;br /&gt;
axis equal;  % Asegura que la proporción de los ejes sea la misma&lt;br /&gt;
view(2);  % Vista en 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.1.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 2D con el gradiente de temperatura representado por flechas azules distribuidas en un plano vertical (coordenadas x y z). Las flechas están más densamente distribuidas cerca del eje central y apuntan hacia afuera, indicando que el gradiente de temperatura es mayor en el eje de simetría. Los bordes negros delimitan una forma simétrica similar a un reloj de arena, representando los límites físicos del sistema.&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.2.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 3D del gradiente de temperatura en un plano horizontal a la altura z=2/3H (radio mínimo de 20 m). Las flechas azules representan el campo del gradiente, apuntando radialmente hacia afuera desde el centro de la figura ovalada, indicando un aumento de temperatura hacia los bordes. El contorno magenta delimita la región donde se estudia el gradiente.&lt;br /&gt;
&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81780</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81780"/>
				<updated>2024-12-09T10:12:34Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
Este apartado consiste en representar el campo del gradiente de temperatura en dos planos diferentes de una torre: un plano vertical que corta la torre pasando por su eje de simetría y un plano horizontal en el radio mínimo de la estructura. La tarea es visualizar cómo varía la temperatura en estos puntos y cómo se representa el gradiente en cada caso.&lt;br /&gt;
&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
altura_inicial = 80;  % Altura inicial de la torre&lt;br /&gt;
radio_menor = 20;  % Radio mínimo (m)&lt;br /&gt;
temperatura_inicial = 70;  % Temperatura en la base (°C)&lt;br /&gt;
diferencia_temperatura_altura = temperatura_inicial - 25;  % Diferencia de temperatura con la altura (base a cima)&lt;br /&gt;
diferencia_temperatura_radial = 5;  % Diferencia de temperatura radial (°C)&lt;br /&gt;
exponente_z = 1.5;  % Exponente para el perfil vertical&lt;br /&gt;
radio_mayor = 50;  % Radio máximo (m)&lt;br /&gt;
altura_total = 120;  % Altura total de la torre (m)&lt;br /&gt;
altura_plano_central = (2/3) * altura_total;  % Altura del plano en el que se analiza&lt;br /&gt;
c=sqrt(((6400*radio_menor^2)/radio_mayor^2-radio_menor^2)));%Parámetro constantec&lt;br /&gt;
&lt;br /&gt;
% Parámetros para la malla dentro del cuadrado [-60, 60] en X y Y con mayor resolución&lt;br /&gt;
resolucion_x = 50;  % Resolución ajustada para el eje X&lt;br /&gt;
resolucion_y = 50;  % Resolución ajustada para el eje Y&lt;br /&gt;
rango_x = linspace(-60, 60, resolucion_x);  % Rango de valores de X de -60 a 60&lt;br /&gt;
rango_y = linspace(-60, 60, resolucion_y);  % Rango de valores de Y de -60 a 60&lt;br /&gt;
[malla_X, malla_Y] = meshgrid(rango_x, rango_y); &lt;br /&gt;
&lt;br /&gt;
% Filtrar puntos dentro del círculo de radio 20&lt;br /&gt;
filtro_radio_inferior = malla_X.^2 + malla_Y.^2 &amp;lt;= radio_menor^2;  % Solo puntos dentro del radio mínimo (20 metros)&lt;br /&gt;
malla_X = malla_X(filtro_radio_inferior); &lt;br /&gt;
malla_Y = malla_Y(filtro_radio_inferior); &lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en dirección Z&lt;br /&gt;
gradiente_X = zeros(size(malla_X));  % No hay componente en X&lt;br /&gt;
gradiente_Y = zeros(size(malla_Y));  % No hay componente en Y&lt;br /&gt;
gradiente_Z = -0.8 * ones(size(malla_X));  % Flechas hacia abajo, magnitud ajustada&lt;br /&gt;
&lt;br /&gt;
% Gráfica 3D&lt;br /&gt;
figure; &lt;br /&gt;
hold on; &lt;br /&gt;
% Flechas del gradiente de temperatura&lt;br /&gt;
quiver3(malla_X, malla_Y, altura_plano_central * ones(size(malla_X)), gradiente_X, gradiente_Y, gradiente_Z, 0.5, ... &lt;br /&gt;
'Color', [0.3 0.5 1], 'LineWidth', 1, 'MaxHeadSize', 2); &lt;br /&gt;
&lt;br /&gt;
% Contorno de la torre con radio 20&lt;br /&gt;
angulo_contorno = linspace(0, 2*pi, 100); &lt;br /&gt;
x_contorno = radio_menor * cos(angulo_contorno); &lt;br /&gt;
y_contorno = radio_menor * sin(angulo_contorno); &lt;br /&gt;
z_contorno = altura_plano_central * ones(size(angulo_contorno)); &lt;br /&gt;
plot3(x_contorno, y_contorno, z_contorno, 'm--', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica&lt;br /&gt;
title('Gradiente de temperatura en el plano z = 2/3 H (Radio = 20m)'); &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Altura Z (m)'); &lt;br /&gt;
axis([-50 50 -50 50]);  % Ajuste de los límites del gráfico&lt;br /&gt;
axis equal; &lt;br /&gt;
grid on; &lt;br /&gt;
view(75, 30);  % Vista 3D inclinada para mejor percepción&lt;br /&gt;
&lt;br /&gt;
% Crear malla para el plano vertical&lt;br /&gt;
eje_z = linspace(0, altura_total, 50);  % Coordenada vertical&lt;br /&gt;
eje_x_ampliado = linspace(-radio_mayor - 10, radio_mayor + 10, 50);  % Coordenada horizontal extendida&lt;br /&gt;
[malla_X_vertical, malla_Z] = meshgrid(eje_x_ampliado, eje_z);  % Crear la malla&lt;br /&gt;
&lt;br /&gt;
radio_variable=sqrt((1+((malla_Z- altura_inicial)/c).^2)* radio_menor^2);  % Radio según el hiperboloide&lt;br /&gt;
distancia_radial_plano = abs(malla_X_vertical);  % Distancia radial en el plano (x, 0, z)&lt;br /&gt;
&lt;br /&gt;
% Campo de temperatura&lt;br /&gt;
campo_temperatura = temperatura_inicial - diferencia_temperatura_altura * (malla_Z / altura_total).^exponente_z - diferencia_temperatura_radial * (1 - exp(-distancia_radial_plano.^2 ./ (radio_mayor^2 - distancia_radial_plano.^2))); &lt;br /&gt;
&lt;br /&gt;
% Máscara para limitar al hiperboloide&lt;br /&gt;
mascara_hiperboloide = abs(malla_X_vertical) &amp;lt;= radio_variable;  % Máscara para la silueta&lt;br /&gt;
campo_temperatura(~mascara_hiperboloide) = NaN;  % Fuera de la torre, no se muestra&lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en el plano vertical&lt;br /&gt;
[gradiente_X_vertical, gradiente_Z_vertical] = gradient(campo_temperatura, eje_x_ampliado(2) - eje_x_ampliado(1), eje_z(2) - eje_z(1));  % Derivadas en X y Z&lt;br /&gt;
&lt;br /&gt;
% Gráfica 2D del gradiente de temperatura en el plano vertical&lt;br /&gt;
figure('Name', 'Gradiente de Temperatura en el Plano Vertical'); &lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
angulo_contorno_vertical = linspace(0, 2*pi, 100); &lt;br /&gt;
x_izquierda_silueta = -radio_variable;  % Lado izquierdo de la silueta&lt;br /&gt;
x_derecha_silueta = radio_variable;  % Lado derecho de la silueta&lt;br /&gt;
z_silueta = eje_z;  % Coordenadas verticales&lt;br /&gt;
plot(x_izquierda_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado izquierdo de la torre&lt;br /&gt;
hold on; &lt;br /&gt;
plot(x_derecha_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado derecho de la torre&lt;br /&gt;
&lt;br /&gt;
% Representar el campo de temperatura y las flechas dentro de la torre en 2D&lt;br /&gt;
quiver(malla_X_vertical(mascara_hiperboloide), malla_Z(mascara_hiperboloide), gradiente_X_vertical(mascara_hiperboloide), gradiente_Z_vertical(mascara_hiperboloide), 'b', 'LineWidth', 1, 'MaxHeadSize', 3);  % Flechas azules&lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica 2D&lt;br /&gt;
xlabel('x (m)'); &lt;br /&gt;
ylabel('z (m)'); &lt;br /&gt;
title('Gradiente de Temperatura en el Plano Vertical (Vista 2D)'); &lt;br /&gt;
xlim([-radio_mayor - 10, radio_mayor + 10]); &lt;br /&gt;
ylim([0, altura_total]); &lt;br /&gt;
grid on; &lt;br /&gt;
axis equal;  % Asegura que la proporción de los ejes sea la misma&lt;br /&gt;
view(2);  % Vista en 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.1.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 2D con el gradiente de temperatura representado por flechas azules distribuidas en un plano vertical (coordenadas xxx y zzz). Las flechas están más densamente distribuidas cerca del eje central y apuntan hacia afuera, indicando que el gradiente de temperatura es mayor en el eje de simetría. Los bordes negros delimitan una forma simétrica similar a un reloj de arena, representando los límites físicos del sistema.&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.2.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 3D del gradiente de temperatura en un plano horizontal a la altura z=2/3H (radio mínimo de 20 m). Las flechas azules representan el campo del gradiente, apuntando radialmente hacia afuera desde el centro de la figura ovalada, indicando un aumento de temperatura hacia los bordes. El contorno magenta delimita la región donde se estudia el gradiente.&lt;br /&gt;
&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado7.2.jpg&amp;diff=81779</id>
		<title>Archivo:Apartado7.2.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado7.2.jpg&amp;diff=81779"/>
				<updated>2024-12-09T10:11:52Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81778</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81778"/>
				<updated>2024-12-09T10:10:48Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* 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 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
Este apartado consiste en representar el campo del gradiente de temperatura en dos planos diferentes de una torre: un plano vertical que corta la torre pasando por su eje de simetría y un plano horizontal en el radio mínimo de la estructura. La tarea es visualizar cómo varía la temperatura en estos puntos y cómo se representa el gradiente en cada caso.&lt;br /&gt;
&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
altura_inicial = 80;  % Altura inicial de la torre&lt;br /&gt;
radio_menor = 20;  % Radio mínimo (m)&lt;br /&gt;
temperatura_inicial = 70;  % Temperatura en la base (°C)&lt;br /&gt;
diferencia_temperatura_altura = temperatura_inicial - 25;  % Diferencia de temperatura con la altura (base a cima)&lt;br /&gt;
diferencia_temperatura_radial = 5;  % Diferencia de temperatura radial (°C)&lt;br /&gt;
exponente_z = 1.5;  % Exponente para el perfil vertical&lt;br /&gt;
radio_mayor = 50;  % Radio máximo (m)&lt;br /&gt;
altura_total = 120;  % Altura total de la torre (m)&lt;br /&gt;
altura_plano_central = (2/3) * altura_total;  % Altura del plano en el que se analiza&lt;br /&gt;
c=sqrt(((6400*radio_menor^2)/radio_mayor^2-radio_menor^2)));%Parámetro constantec&lt;br /&gt;
&lt;br /&gt;
% Parámetros para la malla dentro del cuadrado [-60, 60] en X y Y con mayor resolución&lt;br /&gt;
resolucion_x = 50;  % Resolución ajustada para el eje X&lt;br /&gt;
resolucion_y = 50;  % Resolución ajustada para el eje Y&lt;br /&gt;
rango_x = linspace(-60, 60, resolucion_x);  % Rango de valores de X de -60 a 60&lt;br /&gt;
rango_y = linspace(-60, 60, resolucion_y);  % Rango de valores de Y de -60 a 60&lt;br /&gt;
[malla_X, malla_Y] = meshgrid(rango_x, rango_y); &lt;br /&gt;
&lt;br /&gt;
% Filtrar puntos dentro del círculo de radio 20&lt;br /&gt;
filtro_radio_inferior = malla_X.^2 + malla_Y.^2 &amp;lt;= radio_menor^2;  % Solo puntos dentro del radio mínimo (20 metros)&lt;br /&gt;
malla_X = malla_X(filtro_radio_inferior); &lt;br /&gt;
malla_Y = malla_Y(filtro_radio_inferior); &lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en dirección Z&lt;br /&gt;
gradiente_X = zeros(size(malla_X));  % No hay componente en X&lt;br /&gt;
gradiente_Y = zeros(size(malla_Y));  % No hay componente en Y&lt;br /&gt;
gradiente_Z = -0.8 * ones(size(malla_X));  % Flechas hacia abajo, magnitud ajustada&lt;br /&gt;
&lt;br /&gt;
% Gráfica 3D&lt;br /&gt;
figure; &lt;br /&gt;
hold on; &lt;br /&gt;
% Flechas del gradiente de temperatura&lt;br /&gt;
quiver3(malla_X, malla_Y, altura_plano_central * ones(size(malla_X)), gradiente_X, gradiente_Y, gradiente_Z, 0.5, ... &lt;br /&gt;
'Color', [0.3 0.5 1], 'LineWidth', 1, 'MaxHeadSize', 2); &lt;br /&gt;
&lt;br /&gt;
% Contorno de la torre con radio 20&lt;br /&gt;
angulo_contorno = linspace(0, 2*pi, 100); &lt;br /&gt;
x_contorno = radio_menor * cos(angulo_contorno); &lt;br /&gt;
y_contorno = radio_menor * sin(angulo_contorno); &lt;br /&gt;
z_contorno = altura_plano_central * ones(size(angulo_contorno)); &lt;br /&gt;
plot3(x_contorno, y_contorno, z_contorno, 'm--', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica&lt;br /&gt;
title('Gradiente de temperatura en el plano z = 2/3 H (Radio = 20m)'); &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Altura Z (m)'); &lt;br /&gt;
axis([-50 50 -50 50]);  % Ajuste de los límites del gráfico&lt;br /&gt;
axis equal; &lt;br /&gt;
grid on; &lt;br /&gt;
view(75, 30);  % Vista 3D inclinada para mejor percepción&lt;br /&gt;
&lt;br /&gt;
% Crear malla para el plano vertical&lt;br /&gt;
eje_z = linspace(0, altura_total, 50);  % Coordenada vertical&lt;br /&gt;
eje_x_ampliado = linspace(-radio_mayor - 10, radio_mayor + 10, 50);  % Coordenada horizontal extendida&lt;br /&gt;
[malla_X_vertical, malla_Z] = meshgrid(eje_x_ampliado, eje_z);  % Crear la malla&lt;br /&gt;
&lt;br /&gt;
radio_variable=sqrt((1+((malla_Z- altura_inicial)/c).^2)* radio_menor^2);  % Radio según el hiperboloide&lt;br /&gt;
distancia_radial_plano = abs(malla_X_vertical);  % Distancia radial en el plano (x, 0, z)&lt;br /&gt;
&lt;br /&gt;
% Campo de temperatura&lt;br /&gt;
campo_temperatura = temperatura_inicial - diferencia_temperatura_altura * (malla_Z / altura_total).^exponente_z - diferencia_temperatura_radial * (1 - exp(-distancia_radial_plano.^2 ./ (radio_mayor^2 - distancia_radial_plano.^2))); &lt;br /&gt;
&lt;br /&gt;
% Máscara para limitar al hiperboloide&lt;br /&gt;
mascara_hiperboloide = abs(malla_X_vertical) &amp;lt;= radio_variable;  % Máscara para la silueta&lt;br /&gt;
campo_temperatura(~mascara_hiperboloide) = NaN;  % Fuera de la torre, no se muestra&lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en el plano vertical&lt;br /&gt;
[gradiente_X_vertical, gradiente_Z_vertical] = gradient(campo_temperatura, eje_x_ampliado(2) - eje_x_ampliado(1), eje_z(2) - eje_z(1));  % Derivadas en X y Z&lt;br /&gt;
&lt;br /&gt;
% Gráfica 2D del gradiente de temperatura en el plano vertical&lt;br /&gt;
figure('Name', 'Gradiente de Temperatura en el Plano Vertical'); &lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
angulo_contorno_vertical = linspace(0, 2*pi, 100); &lt;br /&gt;
x_izquierda_silueta = -radio_variable;  % Lado izquierdo de la silueta&lt;br /&gt;
x_derecha_silueta = radio_variable;  % Lado derecho de la silueta&lt;br /&gt;
z_silueta = eje_z;  % Coordenadas verticales&lt;br /&gt;
plot(x_izquierda_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado izquierdo de la torre&lt;br /&gt;
hold on; &lt;br /&gt;
plot(x_derecha_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado derecho de la torre&lt;br /&gt;
&lt;br /&gt;
% Representar el campo de temperatura y las flechas dentro de la torre en 2D&lt;br /&gt;
quiver(malla_X_vertical(mascara_hiperboloide), malla_Z(mascara_hiperboloide), gradiente_X_vertical(mascara_hiperboloide), gradiente_Z_vertical(mascara_hiperboloide), 'b', 'LineWidth', 1, 'MaxHeadSize', 3);  % Flechas azules&lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica 2D&lt;br /&gt;
xlabel('x (m)'); &lt;br /&gt;
ylabel('z (m)'); &lt;br /&gt;
title('Gradiente de Temperatura en el Plano Vertical (Vista 2D)'); &lt;br /&gt;
xlim([-radio_mayor - 10, radio_mayor + 10]); &lt;br /&gt;
ylim([0, altura_total]); &lt;br /&gt;
grid on; &lt;br /&gt;
axis equal;  % Asegura que la proporción de los ejes sea la misma&lt;br /&gt;
view(2);  % Vista en 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado7.1.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
La imagen muestra un gráfico 2D con el gradiente de temperatura representado por flechas azules distribuidas en un plano vertical (coordenadas xxx y zzz). Las flechas están más densamente distribuidas cerca del eje central y apuntan hacia afuera, indicando que el gradiente de temperatura es mayor en el eje de simetría. Los bordes negros delimitan una forma simétrica similar a un reloj de arena, representando los límites físicos del sistema.&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado7.1.jpg&amp;diff=81776</id>
		<title>Archivo:Apartado7.1.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado7.1.jpg&amp;diff=81776"/>
				<updated>2024-12-09T10:09:36Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81775</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81775"/>
				<updated>2024-12-09T10:08:13Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* 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 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
Este apartado consiste en representar el campo del gradiente de temperatura en dos planos diferentes de una torre: un plano vertical que corta la torre pasando por su eje de simetría y un plano horizontal en el radio mínimo de la estructura. La tarea es visualizar cómo varía la temperatura en estos puntos y cómo se representa el gradiente en cada caso.&lt;br /&gt;
&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
altura_inicial = 80;  % Altura inicial de la torre&lt;br /&gt;
radio_menor = 20;  % Radio mínimo (m)&lt;br /&gt;
temperatura_inicial = 70;  % Temperatura en la base (°C)&lt;br /&gt;
diferencia_temperatura_altura = temperatura_inicial - 25;  % Diferencia de temperatura con la altura (base a cima)&lt;br /&gt;
diferencia_temperatura_radial = 5;  % Diferencia de temperatura radial (°C)&lt;br /&gt;
exponente_z = 1.5;  % Exponente para el perfil vertical&lt;br /&gt;
radio_mayor = 50;  % Radio máximo (m)&lt;br /&gt;
altura_total = 120;  % Altura total de la torre (m)&lt;br /&gt;
altura_plano_central = (2/3) * altura_total;  % Altura del plano en el que se analiza&lt;br /&gt;
c=sqrt(((6400*radio_menor^2)/radio_mayor^2-radio_menor^2)));%Parámetro constantec&lt;br /&gt;
&lt;br /&gt;
% Parámetros para la malla dentro del cuadrado [-60, 60] en X y Y con mayor resolución&lt;br /&gt;
resolucion_x = 50;  % Resolución ajustada para el eje X&lt;br /&gt;
resolucion_y = 50;  % Resolución ajustada para el eje Y&lt;br /&gt;
rango_x = linspace(-60, 60, resolucion_x);  % Rango de valores de X de -60 a 60&lt;br /&gt;
rango_y = linspace(-60, 60, resolucion_y);  % Rango de valores de Y de -60 a 60&lt;br /&gt;
[malla_X, malla_Y] = meshgrid(rango_x, rango_y); &lt;br /&gt;
&lt;br /&gt;
% Filtrar puntos dentro del círculo de radio 20&lt;br /&gt;
filtro_radio_inferior = malla_X.^2 + malla_Y.^2 &amp;lt;= radio_menor^2;  % Solo puntos dentro del radio mínimo (20 metros)&lt;br /&gt;
malla_X = malla_X(filtro_radio_inferior); &lt;br /&gt;
malla_Y = malla_Y(filtro_radio_inferior); &lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en dirección Z&lt;br /&gt;
gradiente_X = zeros(size(malla_X));  % No hay componente en X&lt;br /&gt;
gradiente_Y = zeros(size(malla_Y));  % No hay componente en Y&lt;br /&gt;
gradiente_Z = -0.8 * ones(size(malla_X));  % Flechas hacia abajo, magnitud ajustada&lt;br /&gt;
&lt;br /&gt;
% Gráfica 3D&lt;br /&gt;
figure; &lt;br /&gt;
hold on; &lt;br /&gt;
% Flechas del gradiente de temperatura&lt;br /&gt;
quiver3(malla_X, malla_Y, altura_plano_central * ones(size(malla_X)), gradiente_X, gradiente_Y, gradiente_Z, 0.5, ... &lt;br /&gt;
'Color', [0.3 0.5 1], 'LineWidth', 1, 'MaxHeadSize', 2); &lt;br /&gt;
&lt;br /&gt;
% Contorno de la torre con radio 20&lt;br /&gt;
angulo_contorno = linspace(0, 2*pi, 100); &lt;br /&gt;
x_contorno = radio_menor * cos(angulo_contorno); &lt;br /&gt;
y_contorno = radio_menor * sin(angulo_contorno); &lt;br /&gt;
z_contorno = altura_plano_central * ones(size(angulo_contorno)); &lt;br /&gt;
plot3(x_contorno, y_contorno, z_contorno, 'm--', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica&lt;br /&gt;
title('Gradiente de temperatura en el plano z = 2/3 H (Radio = 20m)'); &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Altura Z (m)'); &lt;br /&gt;
axis([-50 50 -50 50]);  % Ajuste de los límites del gráfico&lt;br /&gt;
axis equal; &lt;br /&gt;
grid on; &lt;br /&gt;
view(75, 30);  % Vista 3D inclinada para mejor percepción&lt;br /&gt;
&lt;br /&gt;
% Crear malla para el plano vertical&lt;br /&gt;
eje_z = linspace(0, altura_total, 50);  % Coordenada vertical&lt;br /&gt;
eje_x_ampliado = linspace(-radio_mayor - 10, radio_mayor + 10, 50);  % Coordenada horizontal extendida&lt;br /&gt;
[malla_X_vertical, malla_Z] = meshgrid(eje_x_ampliado, eje_z);  % Crear la malla&lt;br /&gt;
&lt;br /&gt;
radio_variable=sqrt((1+((malla_Z- altura_inicial)/c).^2)* radio_menor^2);  % Radio según el hiperboloide&lt;br /&gt;
distancia_radial_plano = abs(malla_X_vertical);  % Distancia radial en el plano (x, 0, z)&lt;br /&gt;
&lt;br /&gt;
% Campo de temperatura&lt;br /&gt;
campo_temperatura = temperatura_inicial - diferencia_temperatura_altura * (malla_Z / altura_total).^exponente_z - diferencia_temperatura_radial * (1 - exp(-distancia_radial_plano.^2 ./ (radio_mayor^2 - distancia_radial_plano.^2))); &lt;br /&gt;
&lt;br /&gt;
% Máscara para limitar al hiperboloide&lt;br /&gt;
mascara_hiperboloide = abs(malla_X_vertical) &amp;lt;= radio_variable;  % Máscara para la silueta&lt;br /&gt;
campo_temperatura(~mascara_hiperboloide) = NaN;  % Fuera de la torre, no se muestra&lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en el plano vertical&lt;br /&gt;
[gradiente_X_vertical, gradiente_Z_vertical] = gradient(campo_temperatura, eje_x_ampliado(2) - eje_x_ampliado(1), eje_z(2) - eje_z(1));  % Derivadas en X y Z&lt;br /&gt;
&lt;br /&gt;
% Gráfica 2D del gradiente de temperatura en el plano vertical&lt;br /&gt;
figure('Name', 'Gradiente de Temperatura en el Plano Vertical'); &lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
angulo_contorno_vertical = linspace(0, 2*pi, 100); &lt;br /&gt;
x_izquierda_silueta = -radio_variable;  % Lado izquierdo de la silueta&lt;br /&gt;
x_derecha_silueta = radio_variable;  % Lado derecho de la silueta&lt;br /&gt;
z_silueta = eje_z;  % Coordenadas verticales&lt;br /&gt;
plot(x_izquierda_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado izquierdo de la torre&lt;br /&gt;
hold on; &lt;br /&gt;
plot(x_derecha_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado derecho de la torre&lt;br /&gt;
&lt;br /&gt;
% Representar el campo de temperatura y las flechas dentro de la torre en 2D&lt;br /&gt;
quiver(malla_X_vertical(mascara_hiperboloide), malla_Z(mascara_hiperboloide), gradiente_X_vertical(mascara_hiperboloide), gradiente_Z_vertical(mascara_hiperboloide), 'b', 'LineWidth', 1, 'MaxHeadSize', 3);  % Flechas azules&lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica 2D&lt;br /&gt;
xlabel('x (m)'); &lt;br /&gt;
ylabel('z (m)'); &lt;br /&gt;
title('Gradiente de Temperatura en el Plano Vertical (Vista 2D)'); &lt;br /&gt;
xlim([-radio_mayor - 10, radio_mayor + 10]); &lt;br /&gt;
ylim([0, altura_total]); &lt;br /&gt;
grid on; &lt;br /&gt;
axis equal;  % Asegura que la proporción de los ejes sea la misma&lt;br /&gt;
view(2);  % Vista en 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81773</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81773"/>
				<updated>2024-12-09T10:06:35Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* 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 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
Este apartado consiste en representar el campo del gradiente de temperatura en dos planos diferentes de una torre: un plano vertical que corta la torre pasando por su eje de simetría y un plano horizontal en el radio mínimo de la estructura. La tarea es visualizar cómo varía la temperatura en estos puntos y cómo se representa el gradiente en cada caso.&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
altura_inicial = 80;  % Altura inicial de la torre&lt;br /&gt;
radio_menor = 20;  % Radio mínimo (m)&lt;br /&gt;
temperatura_inicial = 70;  % Temperatura en la base (°C)&lt;br /&gt;
diferencia_temperatura_altura = temperatura_inicial - 25;  % Diferencia de temperatura con la altura (base a cima)&lt;br /&gt;
diferencia_temperatura_radial = 5;  % Diferencia de temperatura radial (°C)&lt;br /&gt;
exponente_z = 1.5;  % Exponente para el perfil vertical&lt;br /&gt;
radio_mayor = 50;  % Radio máximo (m)&lt;br /&gt;
altura_total = 120;  % Altura total de la torre (m)&lt;br /&gt;
altura_plano_central = (2/3) * altura_total;  % Altura del plano en el que se analiza&lt;br /&gt;
c=sqrt(((6400*radio_menor^2)/radio_mayor^2-radio_menor^2)));%Parámetro constantec&lt;br /&gt;
&lt;br /&gt;
% Parámetros para la malla dentro del cuadrado [-60, 60] en X y Y con mayor resolución&lt;br /&gt;
resolucion_x = 50;  % Resolución ajustada para el eje X&lt;br /&gt;
resolucion_y = 50;  % Resolución ajustada para el eje Y&lt;br /&gt;
rango_x = linspace(-60, 60, resolucion_x);  % Rango de valores de X de -60 a 60&lt;br /&gt;
rango_y = linspace(-60, 60, resolucion_y);  % Rango de valores de Y de -60 a 60&lt;br /&gt;
[malla_X, malla_Y] = meshgrid(rango_x, rango_y); &lt;br /&gt;
&lt;br /&gt;
% Filtrar puntos dentro del círculo de radio 20&lt;br /&gt;
filtro_radio_inferior = malla_X.^2 + malla_Y.^2 &amp;lt;= radio_menor^2;  % Solo puntos dentro del radio mínimo (20 metros)&lt;br /&gt;
malla_X = malla_X(filtro_radio_inferior); &lt;br /&gt;
malla_Y = malla_Y(filtro_radio_inferior); &lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en dirección Z&lt;br /&gt;
gradiente_X = zeros(size(malla_X));  % No hay componente en X&lt;br /&gt;
gradiente_Y = zeros(size(malla_Y));  % No hay componente en Y&lt;br /&gt;
gradiente_Z = -0.8 * ones(size(malla_X));  % Flechas hacia abajo, magnitud ajustada&lt;br /&gt;
&lt;br /&gt;
% Gráfica 3D&lt;br /&gt;
figure; &lt;br /&gt;
hold on; &lt;br /&gt;
% Flechas del gradiente de temperatura&lt;br /&gt;
quiver3(malla_X, malla_Y, altura_plano_central * ones(size(malla_X)), gradiente_X, gradiente_Y, gradiente_Z, 0.5, ... &lt;br /&gt;
'Color', [0.3 0.5 1], 'LineWidth', 1, 'MaxHeadSize', 2); &lt;br /&gt;
&lt;br /&gt;
% Contorno de la torre con radio 20&lt;br /&gt;
angulo_contorno = linspace(0, 2*pi, 100); &lt;br /&gt;
x_contorno = radio_menor * cos(angulo_contorno); &lt;br /&gt;
y_contorno = radio_menor * sin(angulo_contorno); &lt;br /&gt;
z_contorno = altura_plano_central * ones(size(angulo_contorno)); &lt;br /&gt;
plot3(x_contorno, y_contorno, z_contorno, 'm--', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica&lt;br /&gt;
title('Gradiente de temperatura en el plano z = 2/3 H (Radio = 20m)'); &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Altura Z (m)'); &lt;br /&gt;
axis([-50 50 -50 50]);  % Ajuste de los límites del gráfico&lt;br /&gt;
axis equal; &lt;br /&gt;
grid on; &lt;br /&gt;
view(75, 30);  % Vista 3D inclinada para mejor percepción&lt;br /&gt;
&lt;br /&gt;
% Crear malla para el plano vertical&lt;br /&gt;
eje_z = linspace(0, altura_total, 50);  % Coordenada vertical&lt;br /&gt;
eje_x_ampliado = linspace(-radio_mayor - 10, radio_mayor + 10, 50);  % Coordenada horizontal extendida&lt;br /&gt;
[malla_X_vertical, malla_Z] = meshgrid(eje_x_ampliado, eje_z);  % Crear la malla&lt;br /&gt;
&lt;br /&gt;
radio_variable=sqrt((1+((malla_Z- altura_inicial)/c).^2)* radio_menor^2);  % Radio según el hiperboloide&lt;br /&gt;
distancia_radial_plano = abs(malla_X_vertical);  % Distancia radial en el plano (x, 0, z)&lt;br /&gt;
&lt;br /&gt;
% Campo de temperatura&lt;br /&gt;
campo_temperatura = temperatura_inicial - diferencia_temperatura_altura * (malla_Z / altura_total).^exponente_z - diferencia_temperatura_radial * (1 - exp(-distancia_radial_plano.^2 ./ (radio_mayor^2 - distancia_radial_plano.^2))); &lt;br /&gt;
&lt;br /&gt;
% Máscara para limitar al hiperboloide&lt;br /&gt;
mascara_hiperboloide = abs(malla_X_vertical) &amp;lt;= radio_variable;  % Máscara para la silueta&lt;br /&gt;
campo_temperatura(~mascara_hiperboloide) = NaN;  % Fuera de la torre, no se muestra&lt;br /&gt;
&lt;br /&gt;
% Gradientes de temperatura en el plano vertical&lt;br /&gt;
[gradiente_X_vertical, gradiente_Z_vertical] = gradient(campo_temperatura, eje_x_ampliado(2) - eje_x_ampliado(1), eje_z(2) - eje_z(1));  % Derivadas en X y Z&lt;br /&gt;
&lt;br /&gt;
% Gráfica 2D del gradiente de temperatura en el plano vertical&lt;br /&gt;
figure('Name', 'Gradiente de Temperatura en el Plano Vertical'); &lt;br /&gt;
% Dibujar la silueta de la torre&lt;br /&gt;
angulo_contorno_vertical = linspace(0, 2*pi, 100); &lt;br /&gt;
x_izquierda_silueta = -radio_variable;  % Lado izquierdo de la silueta&lt;br /&gt;
x_derecha_silueta = radio_variable;  % Lado derecho de la silueta&lt;br /&gt;
z_silueta = eje_z;  % Coordenadas verticales&lt;br /&gt;
plot(x_izquierda_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado izquierdo de la torre&lt;br /&gt;
hold on; &lt;br /&gt;
plot(x_derecha_silueta, z_silueta, 'k-', 'LineWidth', 2);  % Lado derecho de la torre&lt;br /&gt;
&lt;br /&gt;
% Representar el campo de temperatura y las flechas dentro de la torre en 2D&lt;br /&gt;
quiver(malla_X_vertical(mascara_hiperboloide), malla_Z(mascara_hiperboloide), gradiente_X_vertical(mascara_hiperboloide), gradiente_Z_vertical(mascara_hiperboloide), 'b', 'LineWidth', 1, 'MaxHeadSize', 3);  % Flechas azules&lt;br /&gt;
&lt;br /&gt;
% Configuración de la gráfica 2D&lt;br /&gt;
xlabel('x (m)'); &lt;br /&gt;
ylabel('z (m)'); &lt;br /&gt;
title('Gradiente de Temperatura en el Plano Vertical (Vista 2D)'); &lt;br /&gt;
xlim([-radio_mayor - 10, radio_mayor + 10]); &lt;br /&gt;
ylim([0, altura_total]); &lt;br /&gt;
grid on; &lt;br /&gt;
axis equal;  % Asegura que la proporción de los ejes sea la misma&lt;br /&gt;
view(2);  % Vista en 2D&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81772</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81772"/>
				<updated>2024-12-09T10:05:35Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* 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 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
Este apartado consiste en representar el campo del gradiente de temperatura en dos planos diferentes de una torre: un plano vertical que corta la torre pasando por su eje de simetría y un plano horizontal en el radio mínimo de la estructura. La tarea es visualizar cómo varía la temperatura en estos puntos y cómo se representa el gradiente en cada caso.&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81771</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81771"/>
				<updated>2024-12-09T10:05:23Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* 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 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
Este apartado consiste en representar el campo del gradiente de temperatura en dos planos diferentes de una torre: un plano vertical que corta la torre pasando por su eje de simetría y un plano horizontal en el radio mínimo de la estructura. La tarea es visualizar cómo varía la temperatura en estos puntos y cómo se representa el gradiente en cada caso.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81770</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81770"/>
				<updated>2024-12-09T10:04:40Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* 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. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centroizquierda]][[Archivo:Apartado6.2torrehip.jpg|450px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado6.2torrehip.jpg&amp;diff=81767</id>
		<title>Archivo:Apartado6.2torrehip.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado6.2torrehip.jpg&amp;diff=81767"/>
				<updated>2024-12-09T10:03:23Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81364</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81364"/>
				<updated>2024-12-08T20:18:18Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Ecuación de la torre como una superficie rigada */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
(Insertar imagen plano vertical)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81363</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81363"/>
				<updated>2024-12-08T20:18:05Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Ecuación de la torre como una superficie rigada */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
(Insertar imagen plano vertical)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81361</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81361"/>
				<updated>2024-12-08T20:17:43Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Ecuación de la torre como una superficie rigada */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
(Insertar imagen plano vertical)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81360</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81360"/>
				<updated>2024-12-08T20:17:29Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Ecuación de la torre como una superficie rigada */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|125px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
(Insertar imagen plano vertical)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81359</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81359"/>
				<updated>2024-12-08T20:17:13Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Ecuación de la torre como una superficie rigada */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|150px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
(Insertar imagen plano vertical)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81358</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81358"/>
				<updated>2024-12-08T20:16:45Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Ecuación de la torre como una superficie rigada */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|100px|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
(Insertar imagen plano vertical)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81356</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81356"/>
				<updated>2024-12-08T20:16:28Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Ecuación de la torre como una superficie rigada */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado3torrehip.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
(Insertar imagen plano vertical)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado3torrehip.jpg&amp;diff=81353</id>
		<title>Archivo:Apartado3torrehip.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado3torrehip.jpg&amp;diff=81353"/>
				<updated>2024-12-08T20:14:40Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81350</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81350"/>
				<updated>2024-12-08T20:12:13Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* 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. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
(Insertar imagen plano vertical)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81347</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81347"/>
				<updated>2024-12-08T20:11:11Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado6gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado6gif.gif&amp;diff=81344</id>
		<title>Archivo:Apartado6gif.gif</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado6gif.gif&amp;diff=81344"/>
				<updated>2024-12-08T20:09:08Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81336</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81336"/>
				<updated>2024-12-08T20:04:11Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Animación que representa las superficies isotérmicas para varios valores de temperatura */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado8gif.gif|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado8gif.gif&amp;diff=81331</id>
		<title>Archivo:Apartado8gif.gif</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado8gif.gif&amp;diff=81331"/>
				<updated>2024-12-08T20:02:50Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81289</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81289"/>
				<updated>2024-12-08T19:41:47Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Uso de estructuras hiperboloides en ingeniería */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centroderecha]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81288</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81288"/>
				<updated>2024-12-08T19:41:27Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Uso de estructuras hiperboloides en ingeniería */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.4.jpg|250px|centro]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado10.4.jpg&amp;diff=81287</id>
		<title>Archivo:Apartado10.4.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado10.4.jpg&amp;diff=81287"/>
				<updated>2024-12-08T19:41:16Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81285</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81285"/>
				<updated>2024-12-08T19:39:27Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Uso de estructuras hiperboloides en ingeniería */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales. Y en puentes para reforzar la estructura.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.3.jpg|250px|centroizquierda]][[Archivo:Apartado10.2.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes entre el texto)&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado10.3.jpg&amp;diff=81284</id>
		<title>Archivo:Apartado10.3.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado10.3.jpg&amp;diff=81284"/>
				<updated>2024-12-08T19:39:12Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado10.2.jpg&amp;diff=81282</id>
		<title>Archivo:Apartado10.2.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado10.2.jpg&amp;diff=81282"/>
				<updated>2024-12-08T19:37:42Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81280</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81280"/>
				<updated>2024-12-08T19:34:52Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado10.1.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales.Y en puentes para reforzar la estructura .&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes entre el texto)&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado10.1.jpg&amp;diff=81278</id>
		<title>Archivo:Apartado10.1.jpg</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Apartado10.1.jpg&amp;diff=81278"/>
				<updated>2024-12-08T19:33:46Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81274</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81274"/>
				<updated>2024-12-08T19:32:25Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Cálculos para la torre hiperbólica */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales.Y en puentes para reforzar la estructura .&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes entre el texto)&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81272</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81272"/>
				<updated>2024-12-08T19:32:10Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Cálculos para la torre hiperbólica */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centroizquierda]] [[Archivo:Apartado9.2b.jpg|250px|centroderecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales.Y en puentes para reforzar la estructura .&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes entre el texto)&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81270</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81270"/>
				<updated>2024-12-08T19:31:52Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Cálculos para la torre hiperbólica */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|izquierda]] [[Archivo:Apartado9.2b.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales.Y en puentes para reforzar la estructura .&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes entre el texto)&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81267</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81267"/>
				<updated>2024-12-08T19:31:17Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Cálculos para la torre hiperbólica */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|izquierda]] [[Archivo:Apartado9.2b.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales.Y en puentes para reforzar la estructura .&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes entre el texto)&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81263</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81263"/>
				<updated>2024-12-08T19:29:17Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Cálculos para la torre hiperbólica */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|izquierda]] [[Archivo:Apartado9.2b.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales.Y en puentes para reforzar la estructura .&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes entre el texto)&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81262</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81262"/>
				<updated>2024-12-08T19:29:01Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Cálculos para la torre hiperbólica */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|450px|izquierda]] [[Archivo:Apartado9.2b.jpg|450px|derecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales.Y en puentes para reforzar la estructura .&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes entre el texto)&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81261</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81261"/>
				<updated>2024-12-08T19:28:06Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Cálculos para la torre hiperbólica */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|centro]] [[Archivo:Apartado9.2b.jpg|250px|centro]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales.Y en puentes para reforzar la estructura .&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes entre el texto)&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81259</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81259"/>
				<updated>2024-12-08T19:27:40Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Uso de estructuras hiperboloides en ingeniería */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|izquierda]] [[Archivo:Apartado9.2b.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
El uso de las estructuras hiperbólicas en la ingeniería civil es bastante extendido.El primero y al que se le viene a la gente a la cabeza es el de nuestro trabajo, las torres hiperbólicas. Utilizada sobre todo en centrales nucleares para dejar salir el vapor de agua , usada para enfriar el núcleo.El uso de estas torres no se limita a lo nuclear si no a depósitos de agua , torres de control en aeropuertos…Esto es dado a su eficiencia estructural son resistentes a fuerzas externas debido a su diseño optimizado, lo que les permite ser ligeras pero robustas.&lt;br /&gt;
&lt;br /&gt;
También son utilizadas en tejados para evitar utilizar columnas y ahorrar materiales.Y en puentes para reforzar la estructura .&lt;br /&gt;
&lt;br /&gt;
Por añadidura su aspecto visual innovador las convierte en íconos arquitectónicos,elementos estéticos al mismo tiempo de servir como elemento de soporte a la estructura.&lt;br /&gt;
&lt;br /&gt;
Con materiales avanzados como acero y concreto reforzado, estas estructuras logran combinar diseño y sostenibilidad. Se utilizan ampliamente en edificios públicos, estadios, estaciones de transporte y más, priorizando eficiencia energética y resistencia sísmica&lt;br /&gt;
&lt;br /&gt;
En resumen, los hiperboloides representan una confluencia de diseño innovador, eficiencia estructural y estética, siendo elementos destacados en la ingeniería moderna y la arquitectura emblemática.&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes entre el texto)&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81258</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81258"/>
				<updated>2024-12-08T19:26:44Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Cálculos para la torre hiperbólica */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|250px|izquierda]] [[Archivo:Apartado9.2b.jpg|250px|derecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81257</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81257"/>
				<updated>2024-12-08T19:25:54Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Cálculos para la torre hiperbólica */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|izquierda]] [[Archivo:Apartado9.2b.jpg|derecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81256</id>
		<title>Torres de enfriamiento hiperbólicas (grupo 33)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Torres_de_enfriamiento_hiperb%C3%B3licas_(grupo_33)&amp;diff=81256"/>
				<updated>2024-12-08T19:25:27Z</updated>
		
		<summary type="html">&lt;p&gt;Marcos Sanchez: /* Cálculos para la torre hiperbólica */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Torres de enfriamiento Hiperbólicas. Grupo 33 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC24/25|2024-25]] | Marcos Sanchez Martínez   Guillermo Garrido Torres   Carlos Aguado Esparrells     Hector Perucho Conde}}&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Torrehip.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Consideremos una torre de enfriamiento hiperbólica, caracterizada por su altura total H, su radio&lt;br /&gt;
máximo en la base Rmax, y su radio mínimo Rmin alcanzado a 2/3 de la altura H de la torre. &lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se pueden suponer los siguientes parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;Rmax=50m,\qquad    Rmin=50m,\qquad    H=120m&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el viento ejerce una presión lateral que varía a lo largo de la superficie de la torre. Considerando que&lt;br /&gt;
la velocidad escalar del viento aumenta con la altura, podemos representarla con la función:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
Donde:&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;Math&amp;gt;V_0&amp;lt;/Math&amp;gt; es la velocidad de referencia del viento a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;. Para una simulación de viento, podemos fijar &amp;lt;Math&amp;gt;V_0 = 15 m/s&amp;lt;/Math&amp;gt; como valor de referencia.&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno; para ´areas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
Utilizando esta velocidad del viento, la presión del viento sobre la superficie de la torre se puede&lt;br /&gt;
modelar como:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde ρ es la densidad del aire estándar.&lt;br /&gt;
&lt;br /&gt;
Para determinar la distribución de las fuerzas laterales, calculamos el campo vectorial de las fuerzas&lt;br /&gt;
inducidas por el viento en la superficie de la torre:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;\vec{n}&amp;lt;/math&amp;gt; es el vector normal a la superficie.&lt;br /&gt;
&lt;br /&gt;
Por ultimo, Suponemos que dentro de la torre de enfriamiento se da un campo de temperatura representado mediante la ecuación: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt;T(r, z) = T_{\text{base}} - \Delta T_z \left( \frac{z}{H} \right)^n - \Delta T_r \left( 1 - e^{-\frac{r^2}{R_{\text{max}}^2 - r^2}} \right)&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Encontrar los valores de a, c, &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; para la ecuación de la torre ==&lt;br /&gt;
Con la ecuación: &amp;lt;math&amp;gt;\dfrac{x^2+y^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt; en cartesianas, lo primero es pasar la fórmula del hiperboloide a cilíndricas que es &amp;lt;math&amp;gt;\dfrac{\rho^2}{a^2}  - \dfrac{(z - z_0)^2}{c^2} = 1&amp;lt;/math&amp;gt;. Ya que en cilíndricas &amp;lt;Math&amp;gt; \rho^2=x^2+y^2 &amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ahora se tiene en cuenta los parámetros: &lt;br /&gt;
&lt;br /&gt;
La altura (H) es 120 metros&lt;br /&gt;
&lt;br /&gt;
En z=0 (la base) el radio máximo es 50 metros&lt;br /&gt;
&lt;br /&gt;
En &amp;lt;Math&amp;gt;z=\dfrac{2}{3} \cdot H=80&amp;lt;/Math&amp;gt;  el radio mínimo es 20 metros&lt;br /&gt;
&lt;br /&gt;
Lo primero es saber que el hiperboloide está centrado a una altura &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt;(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 &amp;lt;Math&amp;gt;z=z_0&amp;lt;/Math&amp;gt;​. Esto implica que:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Math&amp;gt;z_0=\dfrac{2}{3} \cdot H=80m&amp;lt;/Math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación(1) situada en el centro de simetría con los parámetros: &lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=20, \qquad z=z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{20^2}{a^2}  - \dfrac{(80-80)^2}{c^2} = 1 → \qquad \dfrac{20^2}{a^2}=1 → \qquad a=20 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos la ecuación(2) situada en la base con parámetros:&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;math&amp;gt; \rho=50, \qquad z=0, \qquad z_0=80&amp;lt;/math&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{50^2}{a^2}  - \dfrac{(0-80)^2}{c^2} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por último se sustituye el valor de a en (2) y se consigue el valor de c&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;c≈34,91&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Así que la ecuación de la torre en cilíndricas con los valores ya sustituidos de a,c y &amp;lt;Math&amp;gt;z_0&amp;lt;/Math&amp;gt; es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación de la superficie parametrizada ==&lt;br /&gt;
Lo primero, es parametrizar la superficie conseguida en la tarea 1 qué es:&lt;br /&gt;
&amp;lt;math&amp;gt;\dfrac{\rho^2}{20^2}  - \dfrac{(z-80)^2}{34,91^2} = 1 → \qquad \dfrac{\rho^2}{400}  - \dfrac{(z-80)^2}{1219} = 1&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La parametrización que le damos nosotros para la representación es:&lt;br /&gt;
&lt;br /&gt;
r(u,v)=(p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;cos(u) , p(v)&amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;sen(u) , v)&lt;br /&gt;
&lt;br /&gt;
Donde &amp;lt;math&amp;gt;p(v)=\sqrt{400 \cdot (1+ \dfrac{(v-80)^2}{1219})}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y u pertenece a [0,2pi] y v pertenece a [0,120]&lt;br /&gt;
&lt;br /&gt;
Por lo que es la representación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre &lt;br /&gt;
Rm=50% Parámetro a (radio max)&lt;br /&gt;
a = 20; % Parámetro a (radio mínimo)&lt;br /&gt;
z0 = 80; % Centro del hiperboloide&lt;br /&gt;
H = 120; % Altura total de la torre&lt;br /&gt;
c = sqrt(((6400*a^2)/(Rm^2-a^2))); % Parámetro c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
% Dominio de los parámetros &lt;br /&gt;
theta = linspace(0, 2*pi, 100); % Ángulo theta [0, 2pi] &lt;br /&gt;
z = linspace(0, H, 100); % Altura z [0, H] &lt;br /&gt;
% Crear mallas para theta y z &lt;br /&gt;
[Theta, Z] = meshgrid(theta, z); &lt;br /&gt;
% Radio \rho en función de z &lt;br /&gt;
Rho = sqrt(a^2 * (1 + ((Z - z0).^2) / c^2)); &lt;br /&gt;
&lt;br /&gt;
% Coordenadas cartesianas &lt;br /&gt;
X = Rho .* cos(Theta); % Coordenada x &lt;br /&gt;
Y = Rho .* sin(Theta); % Coordenada y &lt;br /&gt;
&lt;br /&gt;
% Graficar la superficie &lt;br /&gt;
figure; &lt;br /&gt;
surf(X, Y, Z, 'EdgeColor', 'none'); % Representar superficie sin bordes &lt;br /&gt;
colormap([0.5, 0.5, 0.5]); % Color único (gris) &lt;br /&gt;
xlabel('X (m)'); &lt;br /&gt;
ylabel('Y (m)'); &lt;br /&gt;
zlabel('Z (m)'); &lt;br /&gt;
title('Superficie de la Torre de Enfriamiento'); &lt;br /&gt;
axis equal; % Ejes proporcionales &lt;br /&gt;
view(3); % Vista 3D&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Superficietorreparamet.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
En 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)&lt;br /&gt;
&lt;br /&gt;
==  Ecuación de la torre como una superficie rigada ==&lt;br /&gt;
Una superficie rigada es una superficie generada al mover una recta a lo largo de una trayectoria.&lt;br /&gt;
El hiperboloide de una hoja es una superficie reglada, y su representación puede expresarse como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;r(u,v)=r_0(u)+v \cdot d(u)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
donde &amp;lt;math&amp;gt;r_0(u)&amp;lt;/math&amp;gt;  es una curva generadora, en cambio d(u) es una dirección de la recta generadora.&lt;br /&gt;
&lt;br /&gt;
Para el hiperboloide:&lt;br /&gt;
&lt;br /&gt;
1. Podemos parametrizar una curva generadora en &amp;lt;math&amp;gt;z_0&amp;lt;/math&amp;gt;=cte como:&lt;br /&gt;
&amp;lt;math&amp;gt;r_0(u)= (a \cdot cos(u) , a \cdot sen(u) , z_0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Una dirección de la recta generadora es:&lt;br /&gt;
&amp;lt;math&amp;gt;d(u)= (sinh(v) \cdot cos(u) , sinh(v) \cdot sin(u) , cosh(v))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por lo que la parametrización rigada es:&lt;br /&gt;
&amp;lt;math&amp;gt;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))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Representación del campo escalar de presión como un mapa de colores sobre la superficie parametrizada de la torre ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Crear mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Perfil del viento&lt;br /&gt;
vel_viento = vel_viento_ref * (altura_malla / altura_ref_viento).^exponente_viento;&lt;br /&gt;
% Presión del viento&lt;br /&gt;
presion_viento = 0.5 * densidad_aire * vel_viento.^2;&lt;br /&gt;
% Máscara para dividir la torre: seleccionar puntos donde coord_x + coord_y &amp;lt; 0&lt;br /&gt;
mascara_division = (coord_x + coord_y &amp;lt; 0);&lt;br /&gt;
coord_x(~mascara_division) = NaN; % Asignar NaN para ocultar la otra mitad&lt;br /&gt;
coord_y(~mascara_division) = NaN;&lt;br /&gt;
coord_z(~mascara_division) = NaN;&lt;br /&gt;
presion_viento(~mascara_division) = NaN;&lt;br /&gt;
% Representar la torre y el campo de presión&lt;br /&gt;
figure;&lt;br /&gt;
surf(coord_x, coord_y, coord_z, presion_viento, 'EdgeColor', 'none'); % Campo de presión&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Presión del viento en la mitad expuesta de la torre');&lt;br /&gt;
axis equal;&lt;br /&gt;
grid on;&lt;br /&gt;
view(3);&lt;br /&gt;
colormap(jet); % Representación del campo de presiones&lt;br /&gt;
colorbar; % Leyenda de colores&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado4campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
El 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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo de la base&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo de la torre&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total de la torre&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Parámetros de la torre&lt;br /&gt;
radio_max_base = 50; % Radio máximo&lt;br /&gt;
radio_min_torre = 20; % Radio mínimo&lt;br /&gt;
centro_hiperboloide = 80; % Centro del hiperboloide&lt;br /&gt;
parametro_c = sqrt(((6400 * radio_min_torre^2) / (radio_max_base^2 - radio_min_torre^2))); % Parámetro c&lt;br /&gt;
altura_torre = 120; % Altura total&lt;br /&gt;
densidad_aire = 1.225; % Densidad del aire (kg/m^3)&lt;br /&gt;
vel_viento_ref = 15; % Velocidad del viento a altura de referencia (m/s)&lt;br /&gt;
altura_ref_viento = 10; % Altura de referencia para el viento (m)&lt;br /&gt;
exponente_viento = 0.14; % Exponente del perfil del viento&lt;br /&gt;
% Crear la malla para parametrizar la superficie&lt;br /&gt;
angulo = linspace(0, 2*pi, 100); % Ángulo alrededor del eje z&lt;br /&gt;
altura = linspace(0, altura_torre, 200); % Altura&lt;br /&gt;
[angulo_malla, altura_malla] = meshgrid(angulo, altura); % Mallas 2D para ángulo y altura&lt;br /&gt;
% Parametrización del hiperboloide&lt;br /&gt;
coord_x = radio_min_torre * cos(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_y = radio_min_torre * sin(angulo_malla) .* sqrt(1 + ((altura_malla - centro_hiperboloide) / parametro_c).^2);&lt;br /&gt;
coord_z = altura_malla;&lt;br /&gt;
% Crear una máscara para cortar la torre según el eje -i-j (X + Y &amp;lt;= 0)&lt;br /&gt;
mascara_corte = (coord_x + coord_y) &amp;lt;= 0;&lt;br /&gt;
coord_x_corte = coord_x .* mascara_corte;&lt;br /&gt;
coord_y_corte = coord_y .* mascara_corte;&lt;br /&gt;
coord_z_corte = coord_z .* mascara_corte;&lt;br /&gt;
% Crear flechas apuntando al centro (eje Z)&lt;br /&gt;
fuerza_x_centro = -coord_x_corte; % Componente en X hacia el centro&lt;br /&gt;
fuerza_y_centro = -coord_y_corte; % Componente en Y hacia el centro&lt;br /&gt;
fuerza_z_centro = 0 * coord_z_corte; % Sin componente en Z (paralelas al eje Z)&lt;br /&gt;
% Escalar las flechas según la presión del viento&lt;br /&gt;
factor_escala = coord_z_corte / max(coord_z_corte(:));&lt;br /&gt;
factor_escala(isnan(factor_escala)) = 0; % Manejar valores NaN en la base&lt;br /&gt;
fuerza_x_centro = fuerza_x_centro .* factor_escala;&lt;br /&gt;
fuerza_y_centro = fuerza_y_centro .* factor_escala;&lt;br /&gt;
% Filtrar las flechas para evitar puntos nulos&lt;br /&gt;
puntos_validos = mascara_corte &amp;amp; (coord_x_corte ~= 0 | coord_y_corte ~= 0);&lt;br /&gt;
% --------- Gráfico de las flechas ---------&lt;br /&gt;
figure;&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujar las flechas&lt;br /&gt;
quiver3(coord_x_corte(puntos_validos), coord_y_corte(puntos_validos), coord_z_corte(puntos_validos), ...&lt;br /&gt;
      fuerza_x_centro(puntos_validos), fuerza_y_centro(puntos_validos), fuerza_z_centro(puntos_validos), ...&lt;br /&gt;
      2, 'Color', [0.5 0.7 1]); % Azul claro (RGB: 50% rojo, 70% verde, 100% azul)&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
title('Campo vectorial de la presión del viento sobre la parte expuesta de la torre');&lt;br /&gt;
axis equal; % Mantener proporciones&lt;br /&gt;
grid on;&lt;br /&gt;
view(3); % Vista en 3D&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado5campos.jpg|450px|centro]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  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. ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Iniciar figura&lt;br /&gt;
figure;&lt;br /&gt;
for i = 1:length(altura_malla)&lt;br /&gt;
  % Altura de la capa actual&lt;br /&gt;
  altura_actual = altura_malla(i);&lt;br /&gt;
   % Radio en esta altura&lt;br /&gt;
  radio_capa = sqrt((1 + (altura_actual - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2);&lt;br /&gt;
   % Coordenadas de la capa&lt;br /&gt;
  coord_x_capa = radio_capa * cos(angulo_theta);&lt;br /&gt;
  coord_y_capa = radio_capa * sin(angulo_theta);&lt;br /&gt;
  coord_z_capa = altura_actual * ones(size(coord_x_capa));&lt;br /&gt;
   % Temperatura en esta capa&lt;br /&gt;
  temp_capa = temp_base - delta_temp_vertical * (altura_actual / altura_torre)^exponente_conveccion - ...&lt;br /&gt;
              delta_temp_radial * (1 - exp(-radio_capa^2 / (radio_max_base^2 - radio_capa^2)));&lt;br /&gt;
   % Dibujar la capa&lt;br /&gt;
  fill3(coord_x_capa, coord_y_capa, coord_z_capa, temp_capa, 'EdgeColor', 'none');&lt;br /&gt;
  hold on;&lt;br /&gt;
   % Dibujar las líneas discontinuas en las alturas predefinidas&lt;br /&gt;
  for altura_linea = alturas_lineas&lt;br /&gt;
      radio_linea = sqrt((1 + (altura_linea - centro_hiperboloide)^2 / parametro_c^2) * radio_min_torre^2); % Radio en esta altura&lt;br /&gt;
      coord_x_linea = radio_linea * cos(angulo_theta);&lt;br /&gt;
      coord_y_linea = radio_linea * sin(angulo_theta);&lt;br /&gt;
      plot3(coord_x_linea, coord_y_linea, altura_linea * ones(size(coord_x_linea)), 'm--', 'LineWidth', 1.5); % Línea discontinua magenta&lt;br /&gt;
  end&lt;br /&gt;
   % Mostrar el contador de la altura actual en el título&lt;br /&gt;
  title(sprintf('Campo de temperatura a z = %.2f m', altura_actual));&lt;br /&gt;
   % Configuración gráfica&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([temp_tope, temp_base]); % Escala de colores&lt;br /&gt;
  xlabel('x (m)');&lt;br /&gt;
  ylabel('y (m)');&lt;br /&gt;
  zlabel('z (m)');&lt;br /&gt;
  xlim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  ylim([-radio_max_base, radio_max_base]);&lt;br /&gt;
  zlim([0, altura_torre]);&lt;br /&gt;
  view(3);&lt;br /&gt;
   % Pausar para animación&lt;br /&gt;
  pause(0.1);&lt;br /&gt;
  hold off;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por otro lado, el plano vertical en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
figure; % Ventana 2: Plano vertical&lt;br /&gt;
% Generar plano vertical en xz&lt;br /&gt;
x_plane = linspace(-Rm, Rm, 100); % Eje x del plano&lt;br /&gt;
z_plane = linspace(0, H, 100);        % Eje z del plano&lt;br /&gt;
[X_plane, Z_plane] = meshgrid(x_plane, z_plane);&lt;br /&gt;
% Cálculo de la temperatura en el plano&lt;br /&gt;
R_plane = abs(X_plane); % Distancia radial en el plano&lt;br /&gt;
T_plane = Tbase - DeltaTz * (Z_plane / H).^n - DeltaTr * (1 - exp(-R_plane.^2 ./ (Rmax^2 - R_plane.^2 + eps)));&lt;br /&gt;
% Representar el plano vertical&lt;br /&gt;
surf(X_plane, zeros(size(X_plane)), Z_plane, T_plane, 'EdgeColor', 'none', 'FaceAlpha', 0.8);&lt;br /&gt;
% Configuración gráfica&lt;br /&gt;
colormap('jet');&lt;br /&gt;
colorbar;&lt;br /&gt;
caxis([Ttop, Tbase]); % Escala de colores&lt;br /&gt;
xlabel('x (m)');&lt;br /&gt;
ylabel('y (m)');&lt;br /&gt;
zlabel('z (m)');&lt;br /&gt;
title('Plano Vertical: Campo de Temperatura');&lt;br /&gt;
xlim([-Rm, Rm]);&lt;br /&gt;
ylim([-Rm, Rm]);&lt;br /&gt;
zlim([0, H]);&lt;br /&gt;
view(3);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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).&lt;br /&gt;
&lt;br /&gt;
==  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 ==&lt;br /&gt;
(Introducción 7)&lt;br /&gt;
&lt;br /&gt;
=== 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 ===&lt;br /&gt;
El codigo en matlab es:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros del modelo&lt;br /&gt;
radioBase = 20; % Semi-eje en las direcciones x e y (m)&lt;br /&gt;
radioAltura = 34.17; % Semi-eje en la dirección z (m)&lt;br /&gt;
alturaCentro = 80; % Altura del centro del hiperboloide&lt;br /&gt;
alturaTotal = 120; % Altura total de la torre (m)&lt;br /&gt;
radioMaximo = 50; % Radio máximo de la torre (m)&lt;br /&gt;
tempInicial = 70; % Temperatura en la base (°C)&lt;br /&gt;
tempFinal = 25; % Temperatura en la cima (°C)&lt;br /&gt;
variacionAlturaTemp = tempInicial - tempFinal;&lt;br /&gt;
variacionRadialTemp = 5; % Variación máxima radial (°C)&lt;br /&gt;
expConveccion = 1.5; % Exponente de convección&lt;br /&gt;
% Malla para el hiperboloide&lt;br /&gt;
anguloTheta = linspace(0, 2*pi, 50); % Ángulo de rotación&lt;br /&gt;
altura = linspace(0, alturaTotal, 50); % Coordenada vertical (z)&lt;br /&gt;
% Inicializar figura&lt;br /&gt;
figure;&lt;br /&gt;
% Ciclo de animación para construir el hiperboloide&lt;br /&gt;
for paso = 1:length(altura)&lt;br /&gt;
   % Limpiar figura de iteración anterior&lt;br /&gt;
   clf;&lt;br /&gt;
  &lt;br /&gt;
   % Dibujar cada capa hasta el paso actual&lt;br /&gt;
   hold on;&lt;br /&gt;
   for capa = 1:paso&lt;br /&gt;
       % Coordenada z de la capa actual&lt;br /&gt;
       alturaActual = altura(capa);&lt;br /&gt;
      &lt;br /&gt;
       % Calcular el radio en esta altura&lt;br /&gt;
       radioActual = sqrt((1 + ((alturaActual - alturaCentro)^2) / radioAltura^2) * radioBase^2);&lt;br /&gt;
      &lt;br /&gt;
       % Coordenadas de la capa en el plano x-y&lt;br /&gt;
       coordX = radioActual * cos(anguloTheta);&lt;br /&gt;
       coordY = radioActual * sin(anguloTheta);&lt;br /&gt;
       capaZ = alturaActual * ones(size(coordX));&lt;br /&gt;
      &lt;br /&gt;
       % Calcular la temperatura en la capa&lt;br /&gt;
       parteAltura = (alturaActual / alturaTotal)^expConveccion;&lt;br /&gt;
       variacionRadial = exp(-radioActual^2 / (radioMaximo^2 - radioActual^2));&lt;br /&gt;
       temperaturaCapa = tempInicial - variacionAlturaTemp * parteAltura - variacionRadialTemp * (1 - variacionRadial);&lt;br /&gt;
      &lt;br /&gt;
       % Dibujar la capa con temperatura&lt;br /&gt;
       fill3(coordX, coordY, capaZ, temperaturaCapa, 'EdgeColor', 'none');&lt;br /&gt;
   end&lt;br /&gt;
  &lt;br /&gt;
   % Configuración de la gráfica&lt;br /&gt;
   colormap('jet');&lt;br /&gt;
   colorbar;&lt;br /&gt;
   caxis([tempFinal, tempInicial]); % Escala de colores&lt;br /&gt;
   xlabel('x (m)');&lt;br /&gt;
   ylabel('y (m)');&lt;br /&gt;
   zlabel('z (m)');&lt;br /&gt;
   title('Construcción del hiperboloide con campo de temperatura');&lt;br /&gt;
   xlim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   ylim([-radioMaximo, radioMaximo]);&lt;br /&gt;
   zlim([0, alturaTotal]);&lt;br /&gt;
   view(3);&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
(Breve descripción de las imagenes vistas)&lt;br /&gt;
&lt;br /&gt;
=== Puntos de un plano que corta la torre horizontalmente en correspondencia con el radio mínimo ===&lt;br /&gt;
(Apartado 2)&lt;br /&gt;
==  Animación que representa las superficies isotérmicas para varios valores de temperatura ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
La animación en matlab es :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Parámetros geométricos y térmicos&lt;br /&gt;
radioBase = 20;&lt;br /&gt;
alturaCentro = 80;&lt;br /&gt;
alturaTotal = 120;&lt;br /&gt;
radioMaximo = 50;&lt;br /&gt;
radioHiperboloide = 34.17;&lt;br /&gt;
tempBase = 70;&lt;br /&gt;
tempCima = 25;&lt;br /&gt;
variacionTempAltura = tempBase - tempCima;&lt;br /&gt;
variacionTempRadial = 5;&lt;br /&gt;
expConveccion = 1.5;&lt;br /&gt;
% Discretización optimizada&lt;br /&gt;
theta = linspace(0, 2*pi, 50); % Menos puntos para mayor velocidad&lt;br /&gt;
z = linspace(0, alturaTotal, 50);&lt;br /&gt;
[Theta, Z] = meshgrid(theta, z);&lt;br /&gt;
% Radio \rho en función de z&lt;br /&gt;
Rho = sqrt(radioBase^2 * (1 + ((Z - alturaCentro).^2) / radioHiperboloide^2));&lt;br /&gt;
X = Rho .* cos(Theta);&lt;br /&gt;
Y = Rho .* sin(Theta);&lt;br /&gt;
% Campo de temperaturas en 3D&lt;br /&gt;
campoTemp = tempBase - variacionTempAltura * (Z / alturaTotal).^expConveccion ...&lt;br /&gt;
          - variacionTempRadial * (1 - exp(-Rho.^2 ./ (radioMaximo^2 - Rho.^2)));&lt;br /&gt;
% Niveles isotérmicos optimizados&lt;br /&gt;
nivelesTemp = linspace(tempCima, tempBase, 20); % Menos niveles isotérmicos&lt;br /&gt;
% Calcular gradiente térmico&lt;br /&gt;
[gradTempX, gradTempZ] = gradient(campoTemp, mean(diff(X(1,:))), mean(diff(Z(:,1))));&lt;br /&gt;
gradTempY=gradTempX;&lt;br /&gt;
figure;&lt;br /&gt;
for nivel = 1:length(nivelesTemp)&lt;br /&gt;
 margen = 0.5; % Ajusta según necesidad&lt;br /&gt;
mascaraIso = abs(campoTemp - tempNivel) &amp;lt; margen;&lt;br /&gt;
   tempNivel = nivelesTemp(nivel);&lt;br /&gt;
   mascaraIso = abs(campoTemp - tempNivel) &amp;lt; 0.5; % Margen ±0.5 °C&lt;br /&gt;
 contour3(X,Y,Z,6,'k');&lt;br /&gt;
xlabel('X (m)');&lt;br /&gt;
ylabel('Y (m)');&lt;br /&gt;
zlabel('Z (m)');&lt;br /&gt;
 hold on&lt;br /&gt;
   % Extraer puntos isotérmicos&lt;br /&gt;
   xIso = X(mascaraIso);&lt;br /&gt;
   yIso = Y(mascaraIso);&lt;br /&gt;
   zIso = Z(mascaraIso);&lt;br /&gt;
   coloresIso = campoTemp(mascaraIso);&lt;br /&gt;
   % Superficie isotérmica&lt;br /&gt;
   scatter3(xIso, yIso, zIso, 10, coloresIso, 'filled');&lt;br /&gt;
  colormap('jet');&lt;br /&gt;
  colorbar;&lt;br /&gt;
  caxis([tempCima, tempBase]);&lt;br /&gt;
     % Graficar el gradiente térmico en los puntos isotérmicos&lt;br /&gt;
  quiver3(xIso, yIso, zIso, gradTempX(mascaraIso), gradTempY(mascaraIso), gradTempZ(mascaraIso), ...&lt;br /&gt;
          'k', 'AutoScaleFactor', 0.5);&lt;br /&gt;
   % Refrescar gráfico&lt;br /&gt;
   drawnow;&lt;br /&gt;
   pause(0.05); % Breve pausa para visualización&lt;br /&gt;
   % Limpiar puntos isotérmicos del cuadro anterior&lt;br /&gt;
% En lugar de 'cla('reset')'&lt;br /&gt;
delete(findall(gca, 'Type', 'scatter'));&lt;br /&gt;
delete(findall(gca, 'Type', 'quiver'));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(Insertar imagenes)&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==  Qué forma tendría ahora la torre de enfriamiento si suponemos que Rmax=Rmin=50m ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
Al observarla nos damos cuenta que se convierte en un simple cilindro de radio=50 m.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.1.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de presión por unidad en cada torre supondremos que:&lt;br /&gt;
&lt;br /&gt;
- El viento ejerce una presión lateral &amp;lt;math&amp;gt;V(z)=V_o(\dfrac{z}{z_o})^α &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;V_o = 15 m/s &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- α es un exponente que depende del terreno para áreas abiertas suele ser alrededor de 0.14.&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \rho V(z)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- \rho =1.225 kg/m3&lt;br /&gt;
&lt;br /&gt;
- &amp;lt;math&amp;gt;\vec{F}(x, y, z) = -P(z) \cdot \vec{n}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para el cilindro =====&lt;br /&gt;
Sustituyendo todas las fórmulas en la ecuación de la presión&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;P(z) = \dfrac{1}{2} \cdot 1,225 \cdot (15 \cdot (\dfrac{z}{10})^{0,28})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcular la fuerza total&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; &lt;br /&gt;
\int_{0}^{120} P(z) \, \text{d}z = 8,13918 \cdot 10^6 N &lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No obstante esa es la fuerza total , y dado que el viento solo da por un lateral (la mitad de la torre) hay que dividirla entre dos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;F= \dfrac{8,13918 \cdot 10^6 }{2}=4069590N&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;Funidad=\dfrac{F}{S}=\dfrac{4069590}{\pi \cdot 50 \cdot 120}≈215,8984Pa&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Cálculos para la torre hiperbólica =====&lt;br /&gt;
Dado que los cálculos para la torre hiperbólica son más complicados los vamos a hacer analicamente.&lt;br /&gt;
Comparando las vistas laterales de las torres nos damos cuenta de que el cilindro obstruye más el paso del viento en comparación a la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado9.2a.jpg|miniaturadeimagen|izquierda]] [[Archivo:Apartado9.2b.jpg|miniaturadeimagen|derecha]]&lt;br /&gt;
&lt;br /&gt;
Además que la superficie de la torre hiperbólica es claramente menor.Por lo tanto podemos deducir que la fuerza por unidad también será menor.&lt;br /&gt;
&lt;br /&gt;
En conclusión la torre hiperbólica es mejor ante el viento ya que opone menos resistencia ante él, por eso es mejor la torre hiperbólica.&lt;br /&gt;
&lt;br /&gt;
==  Uso de estructuras hiperboloides en ingeniería ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Teoría de Campos]] &lt;br /&gt;
[[Categoría:TC24/25]]&lt;/div&gt;</summary>
		<author><name>Marcos Sanchez</name></author>	</entry>

	</feed>