Flujo alrededor de un obstáculo circular (Grupo 29)
| Trabajo realizado por estudiantes | |
|---|---|
| Título | Flujo alrededor de un obstáculo circular (Grupo 29) |
| Asignatura | Teoría de Campos |
| Curso | 2025-26 |
| Autores | Rodrigo de Pelayo García García
Sergio Resino Velayo Cayetano Gilabert Castejón Hugo Moreno Peregrina |
| Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura | |
El estudio del flujo alrededor de un cilindro circular es uno de los problemas más clásicos y analizados en la mecánica de fluidos teórica y aplicada. Su importancia en ingeniería civil es notable, pues muchas estructuras presentan formas aproximadamente cilíndricas: pilas de puentes, torres, tirantes, pilotes o tuberías expuestas a corrientes o viento.
Comprender el comportamiento del flujo permite predecir fenómenos como la distribución de presiones alrededor del obstáculo, las fuerzas de arrastre y sustentación, el desprendimiento periódico de vórtices, los fenómenos de resonancia estructural y la erosión local en estructuras hidráulicas. El flujo alrededor de un cilindro combina varios conceptos clave de Teoría de Campos: los campos vectoriales, el gradiente, el rotacional, la divergencia y las líneas de corriente. A lo largo de este trabajo se desarrolla progresivamente la formulación matemática completa.
Contenido
- 1 Región del fluido y mallado en coordenadas polares
- 2 Función potencial y campo de velocidades
- 3 Divergencia y Rotacional
- 4 Lineas de Corriente
- 5 Puntos de Remanso
- 6 Presión según Bernouilli
- 7 Trayectorias de Particulas
- 8 Circulación y Paradoja D' Alembert
- 9 Flujo con circulación impuesta
- 10 Véase también
- 11 Referencias
1 Región del fluido y mallado en coordenadas polares
Para comenzar, se genera una malla que representa los puntos pertenecientes a la región donde se encuentra el fluido, situada en el exterior del cilindro de radio unidad. Para describir esta zona se emplean coordenadas polares dentro del anillo comprendido entre los radios 1 y 5, con centro en el origen. La visualización final se mostrará en coordenadas cartesianas dentro del dominio [-4,4] x [-4,4], de modo que se aprecie correctamente el área de trabajo.
Mediante el siguiente código elaborado en MATLAB es posible representar dicha malla:
% Parámetros del anillo
rho_inner = 1; % radio interior (círculo unidad)
rho_outer = 5; % radio exterior
n_rho = 40; % número de curvas rho = cte (radiales concéntricas)
n_theta = 40; % número de curvas theta = cte (radiales)
% Generar malla en coordenadas polares
rho = linspace(rho_inner, rho_outer, n_rho);
theta = linspace(0, 2*pi, n_theta);
[U,V] = meshgrid(rho,theta);
%Prarametrizar la superficie
hold on
X=U.*cos(V);
Y=U.*sin(V);
Z=0.*U;
%Representación del mallado y dibujo del círculo
mesh(X,Y,Z);
plot(1*cos(theta), 1*sin(theta), 'LineWidth',2);
%Delimitar los ejes
axis equal;
axis([-4,4,-4,4]);
% Marcas de eje
box on;
grid off;
% Etiquetas y título
xlabel('x');
ylabel('y');
title('Mallado del anillo');
hold off
2 Función potencial y campo de velocidades
Una vez delimitada la región en la que vamos a trabajar, el siguiente paso consiste en analizar el movimiento del fluido. Para ello estudiaremos la velocidad asociada a la función potencial, recordando que la velocidad en este tipo de modelos se obtiene aplicando el gradiente a dicha función.
Antes de continuar, resulta útil recordar brevemente qué entendemos por campo escalar y campo vectorial. Un campo escalar definido sobre un dominio [math] D \subset \mathbb{R}^{3} [/math] es una función que asigna a cada punto de D un valor numérico. En cambio, un campo vectorial en un dominio [math] D \subset \mathbb{R}^{3} [/math] asocia a cada punto de D un veto, describiendo así tanto magnitud como direccional en cada posición del espacio.
2.1 Función potencial
La función potencial a representar es la siguiente:
I = linspace(1,5,200); % mallado en rho
J = linspace(0,2*pi,300); % mallado en theta
[rho,theta] = meshgrid(I,J);
hold on
% Conversión a coordenadas cartesianas
X = rho .* cos(theta);
Y = rho .* sin(theta);
% Funcion potencial correcta
% phi(rho,theta) = (rho + 1/rho)*cos(theta)
phi = (rho + 1./rho) .* cos(theta);
% Contornos de la función de nivel
contour(X, Y, phi, 50, 'LineWidth', 1)
% Círculo de radio 1
plot(cos(J), sin(J), 'LineWidth', 2);
view(2);
axis([-5 5 -5 5]);
colorbar;
title('Función Potencial');
xlabel('X');
ylabel('Y');
axis equal
hold off2.2 Campo de velocidades
La velocidad de un campo escalar se representa a través del gradiente de esa función. Por eso, el campo de velocidades se expresa como [math]\vec u=\nabla\varphi[/math]. El gradiente escrito en coordenadas polares, queda:
<center>[math]\vec u=\nabla\varphi=\frac{∂φ}{∂\rho}\vec{e}_\rho + \frac{1}{\rho}\frac{∂φ}{∂\theta}\vec{e}_\theta [/math]Por lo tanto, se tiene que el campo de velocidades de la función potencial dada será:
rho = linspace(1, 5, 40); % Rango radial
th = linspace(0, 2*pi, 80); % Rango angular más fino para mejor detalle
[U, V] = meshgrid(rho, th);
% Conversión a coordenadas cartesianas
X = U .* cos(V);
Y = U .* sin(V);
% Función potencial
phi = (U + 1./U) .* cos(V);
% Derivadas parciales en polares
dphi_dr = (1 - 1./U.^2) .* cos(V);
dphi_dth = -(U + 1./U) .* sin(V);
% Gradiente transformado a coordenadas cartesianas
Cx = cos(V).*dphi_dr - (sin(V)./U).*dphi_dth;
Cy = sin(V).*dphi_dr + (cos(V)./U).*dphi_dth;
% FIGURA COMPLETA
figure;
subplot(1,2,1)
contour(X, Y, phi, 30)
hold on
quiver(X, Y, Cx, Cy, 'r')
plot(cos(th), sin(th), 'k', 'LineWidth', 1)
axis equal axis([-5 5 -5 5])
title('Función potencial y campo de velocidades')
xlabel('X')
ylabel('Y')
colorbar
hold off
% ZOOM ORTOGONALIDAD
subplot(1,2,2)
contour(X, Y, phi, 30)
hold on
quiver(X, Y, Cx, Cy, 'r')
plot(cos(th), sin(th), 'k', 'LineWidth', 1)
% Ajuste del zoom
axis equal
zoom_x = [-2 0];
zoom_y = [0 2];
axis([zoom_x zoom_y])
title('Zoom: ∇\phi ortogonal a curvas de nivel')
xlabel('X')
ylabel('Y')
hold off