Diferencia entre revisiones de «La presa de El Atazar. Grupo 16»
(→. Representación de la curva que describe la trayectoria de una gota de agua al salir de la compuerta.) |
(→. Diferentes tipos de presas y su estabilidad.) |
||
| (No se muestran 5 ediciones intermedias de otro usuario) | |||
| Línea 227: | Línea 227: | ||
% Parámetros que vamos a utilizar | % Parámetros que vamos a utilizar | ||
| − | theta = 15 * pi / 180; | + | theta = 15 * pi / 180; % Pasamos el ángulo inicial a radianes |
| − | g = 9.81; | + | g = 9.81; % Gravedad (m/s^2) |
| − | Hc = 25; | + | Hc = 25; % Altura compuerta (m) |
| − | v0 = sqrt(2 * g * Hc); | + | v0 = sqrt(2 * g * Hc); % Velocidad inicial (con Torricelli) |
% Trayectoria de la curva | % Trayectoria de la curva | ||
| Línea 238: | Línea 238: | ||
% Velocidades (derivadas de la posición) | % Velocidades (derivadas de la posición) | ||
| − | vx = v0 * cos(theta) * ones(size(t)); % Velocidad en x (dx/dt) | + | vx = v0 * cos(theta) * ones(size(t)); % Velocidad en x (dx/dt) |
| − | vy = v0 * sin(theta) - g * t; | + | vy = v0 * sin(theta) - g * t; % Velocidad en y (dy/dt) |
| − | V = sqrt(vx.^2 + vy.^2); | + | V = sqrt(vx.^2 + vy.^2); % Magnitud de la velocidad |
% Vector tangente | % Vector tangente | ||
| − | Tx = vx ./ V; | + | Tx = vx ./ V; % Componente tangencial en x |
| − | Ty = vy ./ V; | + | Ty = vy ./ V; % Componente tangencial en y |
% Aceleraciones (derivadas de las velocidades) | % Aceleraciones (derivadas de las velocidades) | ||
| − | ax = zeros(size(t)); | + | ax = zeros(size(t)); % Aceleración en x (dvx/dt = 0) |
| − | ay = -g * ones(size(t)); | + | ay = -g * ones(size(t)); % Aceleración en y (dvy/dt = -g) |
| − | a_magnitude = sqrt(ax.^2 + ay.^2); | + | a_magnitude = sqrt(ax.^2 + ay.^2); % Magnitud de la aceleración |
% Vector normal | % Vector normal | ||
| Línea 289: | Línea 289: | ||
{{matlab|codigo= | {{matlab|codigo= | ||
% Parámetros ajustados para la trayectoria | % Parámetros ajustados para la trayectoria | ||
| − | g = 9.81; | + | g = 9.81; % Gravedad (m/s^2) |
| − | v0 = 30; | + | v0 = 30; % Velocidad inicial (m/s) |
| − | theta = pi/3; | + | theta = pi/3; % Ángulo de lanzamiento (60 grados) |
| − | Hc = 25; | + | Hc = 25; % Altura inicial (m) |
t_max = 2 * v0 * sin(theta) / g + sqrt(2 * Hc / g); % Tiempo total de vuelo | t_max = 2 * v0 * sin(theta) / g + sqrt(2 * Hc / g); % Tiempo total de vuelo | ||
| − | t = linspace(0, t_max, 200); | + | t = linspace(0, t_max, 200); % Intervalo de tiempo para la animación |
% Posiciones en x e y durante la animación | % Posiciones en x e y durante la animación | ||
| Línea 301: | Línea 301: | ||
% Velocidades en x e y durante la animación | % Velocidades en x e y durante la animación | ||
| − | vx = v0 * cos(theta) * ones(size(t)); | + | vx = v0 * cos(theta) * ones(size(t)); % Componente horizontal constante |
| − | vy = v0 * sin(theta) - g .* t; | + | vy = v0 * sin(theta) - g .* t; % Componente vertical |
% Aceleración (constante) | % Aceleración (constante) | ||
| − | ax = 0; | + | ax = 0; % Componente horizontal de la aceleración |
| − | ay = -g; | + | ay = -g; % Componente vertical de la aceleración |
% Ajustar límites para evitar valores negativos en y | % Ajustar límites para evitar valores negativos en y | ||
| − | valid_idx = y >= 0; | + | valid_idx = y >= 0; % Solo considerar valores donde y >= 0 |
x = x(valid_idx); | x = x(valid_idx); | ||
y = y(valid_idx); | y = y(valid_idx); | ||
| Línea 463: | Línea 463: | ||
[[Archivo:Aldeadavila.JPEG|miniatura|<u>Imagen 2</u>. Presa de Aldeadávila. Presa de arco-gravedad. Fuente propia.]] | [[Archivo:Aldeadavila.JPEG|miniatura|<u>Imagen 2</u>. Presa de Aldeadávila. Presa de arco-gravedad. Fuente propia.]] | ||
[[Archivo:almendra_presa.jpg|miniatura|<u>Imagen 3</u>. Presa de Almendra (Villarino). Presa de bóveda. Fuente propia.]] | [[Archivo:almendra_presa.jpg|miniatura|<u>Imagen 3</u>. Presa de Almendra (Villarino). Presa de bóveda. Fuente propia.]] | ||
| + | [[Archivo:tiposdepresas.jpg|miniatura|<u>Imagen 4</u>. Tipos de presas. Fuente: Iberdrola.]] | ||
| − | Una presa es una estructura diseñada para almacenar, regular o desviar el agua, resistiendo las fuerzas hidrostáticas y estructurales, y utilizada para abastecimiento, generar energía hidroeléctrica, control de inundaciones o riego. Existen cinco tipos principales de presas, cada una diseñada para adaptarse a las condiciones topográficas, hidrológicas y geológicas del lugar. Entre estas se encuentran las presas de gravedad, las de arco, las de arco-gravedad, las de bóveda o de doble arco y las de contrafuertes o aligeradas, cada una con características particulares que influyen en su estabilidad y los materiales empleados. | + | Una presa es una estructura diseñada para almacenar, regular o desviar el agua, resistiendo las fuerzas hidrostáticas y estructurales, y utilizada para abastecimiento, generar energía hidroeléctrica, control de inundaciones o riego. |
| + | |||
| + | |||
| + | Existen cinco tipos principales de presas, cada una diseñada para adaptarse a las condiciones topográficas, hidrológicas y geológicas del lugar. Entre estas se encuentran las presas de gravedad, las de arco, las de arco-gravedad, las de bóveda o de doble arco y las de contrafuertes o aligeradas, cada una con características particulares que influyen en su estabilidad y los materiales empleados. | ||
Las presas de gravedad se caracterizan por resistir el empuje del agua exclusivamente mediante su propio peso, de ahí su nombre. Son ideales para valles anchos y terrenos sólidos, ya que necesitan cimientos estables que no se erosionen con el tiempo. Están hechas generalmente de hormigón o mampostería, materiales que garantizan su resistencia frente al vuelco y el deslizamiento. Además, este tipo de presas es adecuado para resistir fuertes terremotos, gracias a su capacidad para absorber energía y transferirla al terreno. Ejemplos destacados en España son la Presa de Almendra, en Salamanca, una de las más altas de Europa con 202 metros, y la Presa de Alcántara, en Cáceres, que además de ser una de las más grandes de su tipo, destaca por su capacidad de almacenamiento de agua (casi 3200 hectómetros cúbicos). | Las presas de gravedad se caracterizan por resistir el empuje del agua exclusivamente mediante su propio peso, de ahí su nombre. Son ideales para valles anchos y terrenos sólidos, ya que necesitan cimientos estables que no se erosionen con el tiempo. Están hechas generalmente de hormigón o mampostería, materiales que garantizan su resistencia frente al vuelco y el deslizamiento. Además, este tipo de presas es adecuado para resistir fuertes terremotos, gracias a su capacidad para absorber energía y transferirla al terreno. Ejemplos destacados en España son la Presa de Almendra, en Salamanca, una de las más altas de Europa con 202 metros, y la Presa de Alcántara, en Cáceres, que además de ser una de las más grandes de su tipo, destaca por su capacidad de almacenamiento de agua (casi 3200 hectómetros cúbicos). | ||
| Línea 477: | Línea 481: | ||
En resumen, el diseño de una presa está directamente relacionado con las condiciones del terreno, el caudal que debe retener y los materiales disponibles, siendo ejemplos como Almendra, Aldeadávila, El Atazar y Alcántara grandes referentes de la ingeniería de presas en España. | En resumen, el diseño de una presa está directamente relacionado con las condiciones del terreno, el caudal que debe retener y los materiales disponibles, siendo ejemplos como Almendra, Aldeadávila, El Atazar y Alcántara grandes referentes de la ingeniería de presas en España. | ||
| − | |||
| − | |||
==. Bibliografía.== | ==. Bibliografía.== | ||
Revisión actual del 17:42 8 dic 2024
| Trabajo realizado por estudiantes | |
|---|---|
| Título | La presa de El Atazar. Grupo 16 |
| Asignatura | Teoría de Campos |
| Curso | 2024-25 |
| Autores |
|
| Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura | |
La presa de El Atazar, construida entre 1968 y 1972, es la más grande de la Comunidad de Madrid y una estructura clave para el suministro de agua de la capital y de toda la región. Esta presa de doble curvatura forma un arco tanto en la vista superior como en la sección vertical, alcanzando una altura de 134 metros y una longitud de coronación de 484 metros. Consideraremos la superficie de la presa en el lado aguas arriba, que está en contacto con el agua. Suponemos que la sección transversal de la presa sea un arco de circunferencia con un eje de simetría ubicado en el valle, mientras que la sección longitudinal se comporta como un arco parabólico. En coordenadas cilíndricas (r,θ,z), la superficie puede modelarse mediante las siguientes ecuaciones:
Siendo:
- H: altura de la presa,
- [math]r_{0}[/math]: radio de la presa en la altura máxima,
- b = 35 m: factor que determina la curvatura del arco parabólico.
Consideramos el campo escalar de la presión que ejerce el agua como:
- [math]P(z)=ρgh(z)[/math]
Además el campo vectorial de la fuerza de presión viene dado por:
- [math]\overrightarrow{F} = −P(z) \overrightarrow{n}[/math]
Contenido
- 1 . Representación de la cara interior de la presa.
- 2 . Representación del campo escalar de presiones.
- 3 . Representación del campo escalar de la fuerza de presión.
- 4 . Representación de la curva que describe la trayectoria de una gota de agua al salir de la compuerta.
- 5 . Representación del campo tangente y el campo normal sobre la curva anterior.
- 6 . Representación de la animación del vector velocidad y el vector aceleración de la gota.
- 7 . Cálculo del caudal volumétrico.
- 8 . Cálculo de la fuerza de la presión total y la presión por unidad de superficie.
- 9 . Diferentes tipos de presas y su estabilidad.
- 10 . Bibliografía.
1 . Representación de la cara interior de la presa.
En primer lugar, vamos a representar la superficie aguas arriba de la presa. Esta se representa directamente con la ecuación de la superficie mencionada anteriormente. El color que hemos elegido para la representación de este primer gráfico es azul, dado que la superficie representaría la pared contra la cual el agua ejercería la presión.
clear; clc;
% 1. Representar en MATLAB la superficie parametrizada de la presa en su
% cara de aguas arriba, en un unico color
% Asignacion de variables
H = 134; % Altura de la presa (metros)
r0 = 242; % Radio de la presa en la altura maxima (metros)
b = 35; % Curvatura del arco parabolico (metros)
theta = linspace(3*pi/4,5*pi/4,100); % Angulo theta coordenadas cilindricas
z = linspace(0,H,100); % Altura z coordenadas cilindricas
[Mthetha,Mz] = meshgrid(theta,z); % Mallado
r = r0+b*(1-(Mz.^2/H^2)); % Ecuacion de la superficie de la presa
% Conversion de cilíndricas a cartesianas
X = r.*cos(Mthetha);
Y = r.*sin(Mthetha);
% Creacion del grafico
figure;
surf(X,Y,Mz,'FaceColor','#4DBEEE','EdgeColor','none');
title('Presa de El Atazar aguas arriba');
xlabel('X (m)');
ylabel('Y (m)');
zlabel('Z (m)');
axis equal;
grid on;
Como se puede observar en la figura 1, tenemos una superficie curva con un radio de curvatura inferior de mayor dimensión que el radio de curvatura de mayor altura de la pared de la presa. Para representar la superficie de un único color, hemos hecho uso de la función 'surf' de MATLAB.
2 . Representación del campo escalar de presiones.
Utilizando la fórmula fundamental de la estática de fluidos, calcularemos las presiones que sufre la cara interior de la presa. Como es lógico, la presión aumenta de manera proporcional según aumenta la profundidad (color más rojo).
clear; clc;
% 2. Representar el campo escalar de presion como un mapa de colores sobre
% la superficie parametrizada de la presa (usa tambien colorbar)
% Asignacion de parametros
rho = 1000; % Densidad del agua (Kg/(m^3))
g = 9.81; % Gravedad (m/s^2)
% Relacion presion - altura
P = rho*g*(H-Mz);
% Creacion del gráfico
figure;
surf(X,Y,Mz,P,"EdgeColor","none");
title('Campo escalar de presion en la presa');
xlabel('X (m)');
ylabel('Y (m)');
zlabel('Z (m)');
axis equal;
grid on;
colormap("jet");
colorbar;Para la representación de esta gráfica, hemos hecho uso de la función 'surf', al igual que en el apartado anterior, y además hemos usado la función 'colorbar' para representar dónde es más fuerte la presión.
3 . Representación del campo escalar de la fuerza de presión.
En este apartado, vamos a trabajar con el campo vectorial de la presión que ejerce el agua contra la pared interior de la presa.
clear; clc;
% 3. Representación de campo de presiones
% Derivadas y vectores normales
[Rx_theta, Rx_z] = gradient(X);
[Ry_theta, Ry_z] = gradient(Y);
[Rz_theta, Rz_z] = gradient(gridH);
% Producto cruzado para el vector normal
Nx = Ry_theta .* Rz_z - Rz_theta .* Ry_z;
Ny = Rz_theta .* Rx_z - Rx_theta .* Rz_z;
Nz = Rx_theta .* Ry_z - Ry_theta .* Rx_z;
% Magnitud del vector normal
N_magnitud = sqrt(Nx.^2 + Ny.^2 + Nz.^2);
% Vector normal unitario
Nx_unit = Nx ./ N_magnitud;
Ny_unit = Ny ./ N_magnitud;
Nz_unit = Nz ./ N_magnitud;
% Campo de fuerza de presión
Fx = -P .* Nx_unit;
Fy = -P .* Ny_unit;
Fz = -P .* Nz_unit;
% Representación del campo vectorial sobre la superficie
figure;
quiver3(X, Y, gridH, Fx, Fy, Fz, 0.5, 'Color', 'r');
hold on;
surf(X, Y, gridH, P, 'EdgeColor', 'none', 'FaceAlpha', 0.8);
colorbar;
xlabel('X (m)');
ylabel('Y (m)');
zlabel('Altura Z (m)');
title('Campo vectorial de la fuerza de presión sobre la presa');
view(-60, 20); % Cambia el ángulo de vista
axis equal;
grid on;
% Corte en planta
corte = 51; % Elegimos un corte en el plano longitudinal (aproximadamente theta = 0)
X_corte = X(:, corte);
Z_corte = gridH(:, corte);
P_corte = P(:, corte);
Nx_corte = Nx(:, corte);
Nz_corte = Nz(:, corte);
N_magnitud_corte = sqrt(Nx_corte.^2 + Nz_corte.^2);
Nx_unit_corte = Nx_corte ./ N_magnitud_corte;
Nz_unit_corte = Nz_corte ./ N_magnitud_corte;
Fx_corte = -P_corte .* Nx_unit_corte;
Fz_corte = -P_corte .* Nz_unit_corte;
% Representación del corte longitudinal
figure;
quiver(X_corte, Z_corte, Fx_corte, Fz_corte, 'r', 'LineWidth', 1.5);
hold on;
plot(X_corte, Z_corte, 'k-', 'LineWidth', 2);
xlabel('X (m)');
ylabel('Z (m)');
title('Campo de fuerza de presión en el corte longitudinal');
grid on;En la figura 3, podemos ver la representación en tercera dimensión del campo vectorial de presiones. Hemos conseguido representarla haciendo uso de la función 'quiver3' la cual sirve para representar campos vectoriales tridimensionales, en el gráfico, este queda representado en rojo. Además hemos representado con la función 'surf' la superficie de la pared interior de la presa.
En la figura 4, tenemos la representación en planta de lo que sería el corte longitudinal de la presa en planta. Para ella hemos hecho uso de la función 'quiver' para representar el campo vectorial de presiones en 2D y la función 'plot' para representar la curva, es decir, la sección de la pared de la presa en planta.
4 . Representación de la curva que describe la trayectoria de una gota de agua al salir de la compuerta.
Teniendo en cuenta que la altura de la compuerta de la presa es 25 metros, que el área de la compuerta son 1100 metros cuadrados y que la fórmula de Torricelli es:
Podemos determinar la trayectoria que describiría una gota de agua que sale de la compuerta.
clear; clc;
% Parámetros que vamos a utilizar
theta = 15 * pi / 180; % Ángulo de salida (pasamos a radianes)
g = 9.81; % Gravedad (m/s^2)
Hc = 25; % Altura compuerta (m)
% Velocidad inicial, utilizamos la fórmula de Torricelli
v0 = sqrt(2 * g * Hc);
% Determinamos los factores posición
t = linspace(0, 5, 1000); % Tiempo
x = v0 * cos(theta) * t; % Posición horizontal (X)
y = Hc + v0 * sin(theta) * t - 0.5 * g * t.^2; % Posición vertical (Y)
% Hallamos el tiempo para el cual la altura es 0, es decir, el momento en el que la gota impacta contra el suelo
t_impacto = fzero(@(t) Hc + v0 * sin(theta) * t - 0.5 * g * t^2, [0, 10]);
x_impacto = v0 * cos(theta) * t_impacto; % Distancia desde la compuerta hasta el punto de impacto con el suelo
% Representación de la gráfica de la trayectoria que describe la gota
figure;
plot(x, y, 'Color', '#4DBEEE', 'LineWidth', 1.5); % Ponemos el mismo color que hemos utilizado para la primera figura
hold on;
plot(x_impacto, 0, 'ro', 'MarkerSize', 8, 'DisplayName', 'Impacto con el suelo');
xlabel('Distancia horizontal de la gota (metros)');
ylabel('Altura de la gota (metros)');
title('Trayectoria de la gota de agua');
grid on;
% Insertamos una leyenda que describa lo que vemos
legend('Trayectoria gota', 'Impacto con el suelo');
xlim([0, x_impacto + 12]);
ylim([0, Hc + 7]);El punto (25,0) representaría el punto en el que se encuentra la compuerta, es decir, el punto de partida de la gota, por otro lado, el punto que se encuentra entre x=60 y x=70 que está rodeado de un círculo rojo, sería el punto final de la trayectoria de la gota, es decir, el punto en el que la gota impacta contra el suelo.
La curva azul representada indica por dónde se movería la gota, es decir, su trayectoria.
Para la representación de la figura 5, al ser una función bidimensional, hemos hecho uso de la función 'plot' para la representación de la gráfica.
5 . Representación del campo tangente y el campo normal sobre la curva anterior.
En este apartado, representamos los vectores tangentes y normales de la trayectoria que describe la gota anterior que sale de la compuerta.
clear; clc;
% Parámetros que vamos a utilizar
theta = 15 * pi / 180; % Pasamos el ángulo inicial a radianes
g = 9.81; % Gravedad (m/s^2)
Hc = 25; % Altura compuerta (m)
v0 = sqrt(2 * g * Hc); % Velocidad inicial (con Torricelli)
% Trayectoria de la curva
t = linspace(0, 5, 500); % Tiempo
x = v0 * cos(theta) * t; % Posición en el eje x
y = Hc + v0 * sin(theta) * t - 0.5 * g * t.^2; % Posición en el eje y
% Velocidades (derivadas de la posición)
vx = v0 * cos(theta) * ones(size(t)); % Velocidad en x (dx/dt)
vy = v0 * sin(theta) - g * t; % Velocidad en y (dy/dt)
V = sqrt(vx.^2 + vy.^2); % Magnitud de la velocidad
% Vector tangente
Tx = vx ./ V; % Componente tangencial en x
Ty = vy ./ V; % Componente tangencial en y
% Aceleraciones (derivadas de las velocidades)
ax = zeros(size(t)); % Aceleración en x (dvx/dt = 0)
ay = -g * ones(size(t)); % Aceleración en y (dvy/dt = -g)
a_magnitude = sqrt(ax.^2 + ay.^2); % Magnitud de la aceleración
% Vector normal
Nx = (ax - Tx .* (ax .* Tx + ay .* Ty)) ./ a_magnitude; % Componente normal en x
Ny = (ay - Ty .* (ax .* Tx + ay .* Ty)) ./ a_magnitude; % Componente normal en y
% Representación de la gráfica de los campos tangente y normal sobre la curva en varios instantes
figure;
plot(x, y, 'Color', '#4DBEEE', 'LineWidth', 1.5); hold on;
% Campos tangente y normal en puntos específicos
puntos = 15; % Número de vectores a graficar
indices = round(linspace(1, length(t), puntos)); % Selección de índices
% Vectores tangentes en rojo
quiver(x(indices), y(indices), Tx(indices), Ty(indices), 0.3, 'r', 'LineWidth', 1.5, 'DisplayName', 'Tangente');
% Vectores normales en color azul oscuro
quiver(x(indices), y(indices), Nx(indices), Ny(indices), 0.3, 'Color', [0, 0, 0.5], 'LineWidth', 1.5, 'DisplayName', 'Normal');
xlabel('Distancia horizontal (m)');
ylabel('Altura (m)');
title('Campos Tangente y Normal sobre la trayectoria');
legend('Trayectoria', 'Tangente', 'Normal');
grid on;
axis equal;
% Ajustar los límites de la gráfica para asegurar que se vea la intersección con el eje x (y=0) y el eje y (x=0)
xlim([min(0, min(x) - 5), max(x) + 5]);
ylim([min(0, min(y) - 5), max(y) + 5]);
Para la elaboración de la figura 6 hemos usado la función 'quiver' para representar los campos vectoriales en 2D (Tangencial y normal) y la función 'plot' para la representación de la representación de la curva.
6 . Representación de la animación del vector velocidad y el vector aceleración de la gota.
Sobre la gráfica anterior, se representan mediante una animación el movimiento de seguiría una gota con su vector velocidad y su vector aceleración, siguiendo la trayectoria del apartado anterior.
% Parámetros ajustados para la trayectoria
g = 9.81; % Gravedad (m/s^2)
v0 = 30; % Velocidad inicial (m/s)
theta = pi/3; % Ángulo de lanzamiento (60 grados)
Hc = 25; % Altura inicial (m)
t_max = 2 * v0 * sin(theta) / g + sqrt(2 * Hc / g); % Tiempo total de vuelo
t = linspace(0, t_max, 200); % Intervalo de tiempo para la animación
% Posiciones en x e y durante la animación
x = v0 * cos(theta) .* t;
y = Hc + v0 * sin(theta) .* t - 0.5 * g .* t.^2;
% Velocidades en x e y durante la animación
vx = v0 * cos(theta) * ones(size(t)); % Componente horizontal constante
vy = v0 * sin(theta) - g .* t; % Componente vertical
% Aceleración (constante)
ax = 0; % Componente horizontal de la aceleración
ay = -g; % Componente vertical de la aceleración
% Ajustar límites para evitar valores negativos en y
valid_idx = y >= 0; % Solo considerar valores donde y >= 0
x = x(valid_idx);
y = y(valid_idx);
vx = vx(valid_idx);
vy = vy(valid_idx);
% Crear y configurar la figura
figure;
hold on;
plot(x, y, 'c', 'LineWidth', 1.5, 'DisplayName', 'Trayectoria gota'); % Trayectoria
xlabel('Distancia horizontal de la gota (metros)');
ylabel('Altura de la gota (metros)');
title('Trayectoria de la gota de agua con vectores de velocidad y aceleración');
grid on;
axis equal;
xlim([25, max(x)]);
ylim([0, Hc + 75]);
% Inicializar marcador de la gota y vectores
gota = plot(x(1), y(1), 'ro', 'MarkerSize', 10, 'DisplayName', 'Gota en movimiento');
vector_velocidad = quiver(x(1), y(1), vx(1), vy(1), 0.5, 'g', 'LineWidth', 1.5, ...
'MaxHeadSize', 2, 'DisplayName', 'Velocidad');
vector_aceleracion = quiver(x(1), y(1), ax, ay, 0.5, 'y', 'LineWidth', 1.5, ...
'MaxHeadSize', 2, 'DisplayName', 'Aceleración');
legend('Location', 'best');
hold off;
% Nombre del archivo GIF
gif_filename = 'animaciongotaG16.gif';
% Animar la trayectoria con vectores
for i = 1:length(x)
% Actualizar la posición de la gota
set(gota, 'XData', x(i), 'YData', y(i));
% Actualizar el vector velocidad
set(vector_velocidad, 'XData', x(i), 'YData', y(i), ...
'UData', vx(i), 'VData', vy(i));
% Actualizar el vector aceleración
set(vector_aceleracion, 'XData', x(i), 'YData', y(i), ...
'UData', ax, 'VData', ay);
% Capturar el cuadro actual
frame = getframe(gcf);
im = frame2im(frame);
[imind, cm] = rgb2ind(im, 256);
% Escribir al archivo GIF
if i == 1
imwrite(imind, cm, gif_filename, 'gif', 'LoopCount', inf, 'DelayTime', 0.05);
else
imwrite(imind, cm, gif_filename, 'gif', 'WriteMode', 'append', 'DelayTime', 0.05);
end
% Pausa para crear el efecto de animación
pause(0.05);
end
% Agregar marcador de impacto al final de la animación
hold on;
plot(x(end), y(end), 'ro', 'MarkerSize', 8, 'DisplayName', 'Impacto con el suelo');
legend('Location', 'best');
hold off;Para la representación de la curva que describe la gota, utilizamos la función "plot", en cambio para representar los vectores velocidad y aceleración utilizamos la función "quiver".
El movimiento de la gota se representa dentro de un bucle "for" que actualiza, en cada iteración, las posiciones de la gota y los vectores de velocidad y aceleración mediante la función "set", y luego captura y guarda cada cuadro con "getframe" y "imwrite" para crear la animación en un GIF.
7 . Cálculo del caudal volumétrico.
La presa cuenta con una compuerta a una altura de 25m con un área de 1100m2. Para calcular el caudal ideal de agua que fluye por dicha compuerta se usa el siguiente código.
clear; clc;
% Parámetros que vamos a utilizar
a = 1100; % Área compuerta (m^2)
g = 9.81; % Gravedad (m/s^2)
Hc = 25; % Altura compuerta (m)
v0 = sqrt(2 * g * Hc); % Velocidad inicial (con Torricelli)
% Caudal de la presa en metros cúbicos por segundo
Q = ( a * v0);
% Caudal de la presa en litros por segundo
Ql = Q ./ 1000;
% Caudales
disp(['Caudal en m³/s: ', num2str(Q), ' m³/s']);
disp(['Caudal en l/s: ', num2str(Ql), ' l/s']);Este cálculo nos da un caudal de 24,36 litros por segundo.
8 . Cálculo de la fuerza de la presión total y la presión por unidad de superficie.
En este apartado calculamos la presión que ejerce el agua sobre la presa. Para ello, utilizamos las datos de la altura de la presa, su radio en la altura máxima y su factor de curvatura parabólica.
clear; clc;
rho = 1000; % Densidad del agua (kg/m^3)
g = 9.81; % Gravedad (m/s^2)
H = 134; % Altura de la presa (m)
r0 = 242; % Radio de la presa en la altura máxima (metros)
b = 35; % Factor de curvatura parabólica
% Resolución para la integración
num_theta = 100; % Divisiones en theta
num_z = 100; % Divisiones en z
% Rango de variables
theta = linspace(3*pi/4, 5*pi/4, num_theta);
z = linspace(0, H, num_z);
% Matriz de resultados
F_total = 0;
A_total = 0;
% Integración sobre la superficie
for i = 1:numel(theta)
for j = 1:numel(z)
% Coordenadas en la superficie
r = r0 + b * (1 - (z(j)^2 / H^2)); % Radio a cada z
h = H - z(j); % Profundidad
% Elemento de área diferencial en coordenadas cilíndricas
dS = r * (theta(2) - theta(1)) * (z(2) - z(1));
% Presión a cada punto
P = rho * g * h;
% Contribución a la fuerza total
F_total = F_total + P * dS;
% Acumulación del área para calcular presión media (si necesaria)
A_total = A_total + dS;
end
end
% Fuerza total de presión
disp(['Fuerza total de presión: ', num2str(F_total), ' N']);
% Presión promedio por unidad de superficie
P_area = F_total / A_total;
disp(['Presión por unidad de superficie promedio: ', num2str(P_area), ' Pa']);
Usando este código, obtenemos una fuerza total de presión de 3,83x10¹⁰ N y una presión por unidad de superficie promedio de 6,72 x 10⁵ Pa.
9 . Diferentes tipos de presas y su estabilidad.
Una presa es una estructura diseñada para almacenar, regular o desviar el agua, resistiendo las fuerzas hidrostáticas y estructurales, y utilizada para abastecimiento, generar energía hidroeléctrica, control de inundaciones o riego.
Existen cinco tipos principales de presas, cada una diseñada para adaptarse a las condiciones topográficas, hidrológicas y geológicas del lugar. Entre estas se encuentran las presas de gravedad, las de arco, las de arco-gravedad, las de bóveda o de doble arco y las de contrafuertes o aligeradas, cada una con características particulares que influyen en su estabilidad y los materiales empleados.
Las presas de gravedad se caracterizan por resistir el empuje del agua exclusivamente mediante su propio peso, de ahí su nombre. Son ideales para valles anchos y terrenos sólidos, ya que necesitan cimientos estables que no se erosionen con el tiempo. Están hechas generalmente de hormigón o mampostería, materiales que garantizan su resistencia frente al vuelco y el deslizamiento. Además, este tipo de presas es adecuado para resistir fuertes terremotos, gracias a su capacidad para absorber energía y transferirla al terreno. Ejemplos destacados en España son la Presa de Almendra, en Salamanca, una de las más altas de Europa con 202 metros, y la Presa de Alcántara, en Cáceres, que además de ser una de las más grandes de su tipo, destaca por su capacidad de almacenamiento de agua (casi 3200 hectómetros cúbicos).
Por su parte, las presas de arco aprovechan su forma curva para transmitir la fuerza del agua hacia los estribos, las partes laterales del valle, lo que las hace ideales para valles estrechos y profundos. Este diseño requiere estribos sólidos y un material de alta resistencia en la cerrada, ya que es donde se concentran los mayores esfuerzos. Dentro de esta categoría se encuentra la Presa de Aldeadávila, finalizada en 1963 por Iberduero, situada entre Salamanca y Portugal, considerada una de las más importantes de España por su potencia hidroeléctrica, y la Presa de El Atazar, en Madrid, que combina elementos de arco y gravedad, adaptándose perfectamente al terreno rocoso donde se ubica.
Las presas bóveda o de doble arco son una variante de las presas de arco, que distribuyen el empuje tanto hacia los laterales como hacia el fondo del valle, gracias a su forma curva en planta y alzado. Este diseño ofrece una alta eficiencia estructural con un menor uso de materiales. Un ejemplo emblemático es nuevamente la Presa de Almendra, cuyo diseño y ubicación en un valle estrecho potencian su capacidad para resistir las fuerzas del agua.
En el caso de las presas de arco-gravedad, su forma curva permite transferir la presión del agua a las paredes del valle, combinando las características de las presas de arco y de gravedad. Este diseño requiere menos materiales que las presas de gravedad pura, pero su construcción es más compleja, y depende en gran medida de la resistencia de los estribos y del terreno. La Presa de El Atazar es un ejemplo claro de esta tipología, ya que aprovecha su forma mixta para adaptarse a las condiciones específicas de su emplazamiento.
Finalmente, las presas de contrafuertes o aligeradas utilizan una serie de soportes inclinados, llamados contrafuertes, para reducir el volumen de material necesario mientras se garantiza la estabilidad frente al vuelco y el deslizamiento. Aunque son menos comunes en España, este tipo de diseño se emplea cuando se busca reducir costes materiales en terrenos donde el peso excesivo puede ser un inconveniente.
En resumen, el diseño de una presa está directamente relacionado con las condiciones del terreno, el caudal que debe retener y los materiales disponibles, siendo ejemplos como Almendra, Aldeadávila, El Atazar y Alcántara grandes referentes de la ingeniería de presas en España.
10 . Bibliografía.
https://ingcivileng.com/2020/03/24/embalse-presa-boveda-el-atazar-rio-lozoya-madrid/
https://www.iberdrola.com/conocenos/nuestra-actividad/energia-hidroelectrica/tipos-presa