Flujo alrededor de un obstáculo circular. (Grupo68)
| Trabajo realizado por estudiantes | |
|---|---|
| Título | Flujo alrededor de un obstáculo circular. Grupo 68 |
| Asignatura | Teoría de Campos |
| Curso | 2025-26 |
| Autores | Nicolás Rus Pérez, Jeremy García Herrera, Antonio Rodriguez Montes, Franco Luis Santillan, Juan Jose Salhua Palma. |
| Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura | |
Un fluido es un medio contínuo deformable con la propiedad de que no transmite tensiones tangenciales. Estos no tienen una forma definida y por tanto adoptan la forma del recipiente en el que se encuentran, y pueden encontrarse tanto en estado líquido (agua) como gaseoso (aire).
En este trabajo se estudiará el flujo de un fluido alrededor de un obstáculo circular considerando a este un fluido incompresible. Esta propiedad indica que el fluido no disminuye su volumen al serle aplicado una fuerza, y es propia de los fluidos en estado líquido.
Por conveniencia se trabajará en coordenadas con base cilíndrica (polares).
Contenido
- 1 Mallado
- 2 Campo de velocidad de las partículas
- 3 Rotacional Nulo y Divergencia Nula
- 4 Líneas de corriente
- 5 Velocidad extrema y puntos de remanso
- 6 Presión del fluido y ecuación de Bernoulli
- 7 Velocidad y presión al rodear el obstáculo.
- 8 Paradoja de D'Alembert.
- 9 Cambio de función potencial
- 10 Poster
1 Mallado
Se genera a continuación un mallado en el que se representan los puntos interiores a la región ocupada por el fluido. Por convenio se representará el obstáculo circular centrado en el origen de coordenadas y con radio 1. De esta forma la región ocupada por el fluido será todo el exterior de la circunferencia unidad.
El objetivo de realizar este mallado es dividir el medio continuo (la región ocupada por el fluido) en subdominios más pequeños denominados elementos finitos. El conjunto de estos elementos forman el mallado que cubre toda la región y permite realizar cálculos y simulaciones numéricas particulares en cada uno de ellos.
Para ilustrar que el fluido ocupa el exterior de un circulo, se dibujarán los ejes en el intervalo [math][-4,4]×[-4,4][/math].
r=linspace(1,5,50); %Definen el rho (r) y theta (a)
a=linspace(0,2*pi,50);
[R,A]=meshgrid(r,a); %Genera el mallado
hold on
X=R.*cos(A); %Parametriza la superficie
Y=R.*sin(A);
Z=0.*R;
mesh(X,Y,0*Z); %Dibuja la región
plot(cos(a),sin(a),'k','lineWidth',1); %Dibuja el obstáculo
axis([-4 4,-4 4]); %Se fijan los ejes
title ('Regíon Fluido'); %Definen los ejes y el nombre de la gráfica
xlabel 'EJE X'
ylabel 'EJE Y'
hold off
2 Campo de velocidad de las partículas
Una vez definido el mallado de trabajo del fluido y el obstáculo, se procede a calcular las velocidades de las partículas del fluido en los distintos puntos de la región ocupada por el fluido incompresible. Partimos sabiendo que el campo de velocidades viene definido por el gradiente de la siguiente función potencial:
A continuación se representa graficamente la función potencial:
r=linspace(1,5,30); %Define rho (r) y theta (a)
a=linspace(0,2*pi,30);
[R,A]=meshgrid(r,a); %CGenra el mallado
hold on
X=R.*cos(A); %Parametrización la superficie
Y=R.*sin(A);
f=@(r,a)(r+(1./r)).*cos(a); %Define la función potencial
Z=f(R,A);
surf(X,Y,Z); %Representa la función
plot(1*cos(a),1*sin(a),'k','lineWidth',3); %Representa el obstáculo
axis([-4,4,-4,4]);
colorbar; %Añade la barra de colores, define el titulo de la gráfica y los ejes
title ('Función potencial');
xlabel ('EJE X');
ylabel ('EJE Y');
hold offPara calcular el campo de velocidades de las partículas del fluido es necesario el campo gradiente de la funcion potencial anterior, y dicho gradiente viene definido por la siguiente expresión:
Aplicando dicha expresión a la función potencial, el gradiente resultante sera:
Dado que la representación en MATLAB se realiza en coordenadas cartesianas [math](\vec i,\vec j,\vec k)[/math], y el gradiente calculado se encuentra en coordenadas ciliíndricas [math](\vec e_\rho,\vec e_\theta,\vec e_z)[/math] ,debemos de pasar el gradiente de la función potencial a las primeras. Esto es posible gracias a la matriz de cambio de base entre coordenadas cilíndricas y cartesianas, por lo que la multiplicamos por el vector gradiente dado [math](\vec u)[/math] en coordenadas cilíndricas.
Matriz de cambio de base de coordenadas cilindricas a coordenadas cartesianas:
\begin{pmatrix} \vec i\\ \vec j\\ \vec k\\ \end{pmatrix} = \begin{pmatrix} \cos \theta & -sen \theta & 0\\ sen \theta & \cos \theta & 0\\ 0 & 0 & 1 \end{pmatrix} \begin{pmatrix} \vec e_\rho\\ \vec e_\theta\\ \vec e_z\\ \end{pmatrix}
Por lo que:
\begin{pmatrix} \vec i\\ \vec j\\ \vec k\\ \end{pmatrix} = \begin{pmatrix} \cos \theta & -sen \theta & 0\\ sen \theta & \cos \theta & 0\\ 0 & 0 & 1 \end{pmatrix} \begin{pmatrix} (1-\frac{1}{\rho^2})\cos(\theta)\\ -(1+\frac{1}{\rho^2})\sin(\theta)\\ 0\\ \end{pmatrix}
Resolviendo a coordenadas cartesianas:
A continuación representamos el campo de velocidades de las partículas sobre las superficies equipotenciales del flujo del fluido.
r=linspace(1,5,50); %Define rho (r) y theta (a)
a=linspace(0,2*pi,50);
[R,A]=meshgrid(r,a); %Crea la malla
X=R.*cos(A); %Parametriza la superficie
Y=R.*sin(A);
f=@(r,a)(r+(1./r)).*cos(a); %Definimos la función potencial
Z=f(R,A); %Aplica la función
contour(X,Y,Z,30); %Dibuja las curvas de nivel
hold on %Define las componentes X e Y del gradiente
Cx=(1-(1./R.^2)).*cos(A).^2+(1+(1./R.^2)).*sin(A).^2;
Cy=(1-(1./R.^2)).*sin(A).*cos(A)-(1+(1./R.^2)).*sin(A).*cos(A);
quiver(X,Y,Cx,Cy); %Dibuja el campo de velocidades
plot(1*cos(a),1*sin(a),'k','lineWidth',1); %Representa del obstáculo
axis([-4,4,-4,4]);
colorbar; %Añade la barra de color, titulo y nombre a los ejes
title ('Campo de velocidades');
xlabel ('EJE X');
ylabel ('EJE Y');
axis equal
hold offGracias a la gráfica anterior se observa como los vectores de velocidad definidos por [math] \vec u [/math] son siempre perpendiculares a las líneas equipotenciales del fluido.
3 Rotacional Nulo y Divergencia Nula
3.1 Rotacional Nulo
El rotacional nulo del campo de velocidades indica que el flujo es irrotacional , es decir , carece de vórtices o giros locales. Esto significa que una partícula de fluido no rota sobre sí misma mientras se desplaza, característica típica de los flujos potenciales.
El operador rotacional nos indica la dirección y la velocidad del giro del campo en cada punto.
A continuación se demuestra que el rotacional es nulo:
[math]
= \frac{1}{\rho} \left[ \frac{\partial}{\partial \rho} \left[ \rho \left( -(1 + \frac{1}{{\rho^2}})\sin(\theta) \right) \right]\vec{e}_z - \frac{\partial}{\partial \theta} \left[ \cos(\theta) \left(1 - \frac{1}{\rho^2}\right) \right] \vec{e}_z \right]=\frac{1}{\rho} \left[ -(1 - \frac{1}{\rho^2})\sin(\theta) + \sin(\theta)(1 - \frac{1}{\rho^2}) \right]=0
[/math]
Se obtiene que el rotacional es 0, lo cual indica que las partículas del fluido no están girando
3.2 Divergencia Nula
Interpretación de la divergencia nula: La condición ∇·u = 0 corresponde a un flujo incompresible, donde la densidad del fluido permanece constante y el volumen de cualquier elemento material no cambia a lo largo del tiempo. Esto refleja la conservación local de la masa en ausencia de fuentes o sumideros.
[math] = \frac{1}{\rho} \left\{ \frac{\partial}{\partial \rho} \left( (\rho - \frac{1}{\rho})\cos(\theta) \right) + \frac{\partial}{\partial \theta} \left( -\left(1 + \frac{1}{\rho^2}\right)\sin(\theta) \right) \right\}= [/math] [math] \frac{1}{\rho} \left\{ (1 + \frac{1}{\rho^2})\cos(\theta) -\left(1 + \frac{1}{\rho^2}\right)\cos(\theta) \right\}= 0 [/math]
[math]\boxed { div(\bar { u } )=0 } [/math]4 Líneas de corriente
Las líneas de corriente del flujo alrededor de un cilindro circular (en sección transversal) presentan un patrón simétrico con respecto al eje horizontal (eje x) y antisimétrico con respecto al eje vertical (eje y).
Las líneas de corriente [math]\psi = \text{cte}[/math] describen las trayectorias del flujo potencial alrededor del obstáculo circular, mostrando simetría y adaptación suave a la geometría. Estas líneas son tangentes al campo de velocidades en cada punto, verificando que [math]\vec{u}\cdot\nabla\psi = 0[/math] . El patrón obtenido revela aceleración del fluido cerca del cilindro, condición de no penetración en la superficie, y recuperación del flujo uniforme lejos del obstáculo, características típicas de un flujo incompresible e irrotacional.
[math]\vec{v}[/math] se calculará con : [math]\vec{v}=\vec{k}\times \vec{u}[/math]
[math]\vec{v}[/math] es irrotacional dadon que el rotacional calculado en el apartado 3.1 es nulo. De igual forma iene un potencial escalar [math]\psi [/math] el cual tiene [math]\vec{v}[/math] de gradiente.
Para el potencial escalar [math]\psi [/math] se resolverá este sistema de ecuaciones: [math]\nabla\psi =\vec{v}[/math] cumpliendo la condición anterior de líneas [math]\psi =cte[/math].
Empezamos las operaciones: [math]\vec{v} =\vec{k}\times \vec{u} = \begin{vmatrix} \vec{e}_\rho & \vec{e}_\theta & \vec{e}_z \\ 0 & 0 & 1 \\ (1 - \frac{1}{{\rho^2}})\cos(\theta) & (-(1 + \frac{1}{{\rho^2}})\sin(\theta)) & 0 \end{vmatrix} = ((1+\frac{1}{\rho^2})\sin{\theta})\vec{e}_\rho + (1-\frac{1}{\rho^2})\cos{\theta}\vec{e}_\theta[/math]
[math]\psi(\rho,\theta,Z) =\int((1+\frac{1}{\rho^2})\sin{\theta})\partial\rho = \sin{\theta}\int(1+\frac{1}{\rho^2})\partial\rho = \sin{\theta}(\rho-\frac{1}{\rho})+ C[/math]
[math]\frac{1}{\rho}\frac{\partial \psi}{\partial \theta} = \cos{\theta}(\rho+\frac{1}{\rho})\Rightarrow\psi(\rho,\theta,Z)= \sin{\theta}(\rho-\frac{1}{\rho})+ C[/math]
Dando como resultado [math]\psi: \sin{\theta}(\rho-\frac{1}{\rho})=cte[/math]
% Definir dominio en coordenadas cilíndricas
r = linspace(1, 5, 50); % Coordenada radial (ρ) desde r=1 (obstáculo)
a = linspace(0, 2*pi, 50); % Coordenada angular (θ)
% Crear malla
[R, A] = meshgrid(r, a);
% Convertir a coordenadas cartesianas
X = R .* cos(A);
Y = R .* sin(A);
% 1. FUNCIÓN POTENCIAL φ (phi)
phi = (R + (1./R)) .* cos(A);
% 2. CAMPO DE VELOCIDADES u = ∇φ
% Componentes en coordenadas cilíndricas:
% u_ρ = (1 - 1/ρ²)cos(θ)
% u_θ = -(1 + 1/ρ²)sin(θ)
u_rho = (1 - (1./R.^2)) .* cos(A);
u_theta = -(1 + (1./R.^2)) .* sin(A);
% Convertir a coordenadas cartesianas
u_x = u_rho .* cos(A) - u_theta .* sin(A);
u_y = u_rho .* sin(A) + u_theta .* cos(A);
% 3. FUNCIÓN DE CORRIENTE ψ (psi)
psi = (R - 1./R) .* sin(A);
% 4. GRÁFICAS
figure('Position', [100, 100, 1200, 800]);
% Graf 1: Líneas de corriente (ψ) y campo de velocidades
subplot(2, 2, 2);
contourf(X, Y, psi, 30, 'LineStyle', '-', 'LineWidth', 0.5);
hold on;
colorbar;
title('Líneas de Corriente (ψ) y Campo de Velocidades');
xlabel('EJE X');
ylabel('EJE Y');
axis equal;
axis([-4, 4, -4, 4]);
grid on;
% Dibujar campo de velocidades
quiver(X(1:3:end, 1:3:end), Y(1:3:end, 1:3:end), ...
u_x(1:3:end, 1:3:end), u_y(1:3:end, 1:3:end), ...
1.5, 'w', 'LineWidth', 0.7, 'MaxHeadSize', 0.5);
% Dibujar obstáculo circular
plot(cos(theta_circ), sin(theta_circ), 'k', 'LineWidth', 2, ...
'Color', [0.2, 0.2, 0.2]);
fill(cos(theta_circ), sin(theta_circ), [0.8, 0.8, 0.8], ...
'EdgeColor', [0.2, 0.2, 0.2], 'LineWidth', 1.5);
hold off;
5 Velocidad extrema y puntos de remanso
En la frontera del obstáculo, definida por la circunferencia unidad [math]\rho=1[/math], el módulo de la velocidad viene dado por
De esta expresión se deduce que la velocidad máxima se alcanza cuando
[math]\sin\theta=\pm1[/math], es decir, en
que corresponden a los puntos cartesianos
Estos son los puntos donde la velocidad del fluido es máxima sobre la frontera.
Por otro lado, la velocidad se anula cuando
lo que corresponde a los puntos
Estos puntos reciben el nombre de puntos de remanso.
Para verificarlo numéricamente en MATLAB se ha representado el módulo de la velocidad sobre la frontera:
nr=100; nt=200;
r=linspace(1,5,nr);
th=linspace(0,2*pi,nt);
[R,TH]=meshgrid(r,th);
ur=(1-1./R.^2).*cos(TH);
uth=-(1+1./R.^2).*sin(TH);
Ux=ur.*cos(TH)-uth.*sin(TH);
Uy=ur.*sin(TH)+uth.*cos(TH);
Umag=sqrt(Ux.^2+Uy.^2);
UmagS=Umag(:,1);
THS=TH(:,1);
[Umax,imax]=max(UmagS);
[Umin,imin]=min(UmagS);
thetaMax=THS(imax);
thetaMin=THS(imin);
figure
plot(THS,UmagS), grid on
hold on
plot(thetaMax,Umax,'ro',thetaMin,Umin,'bo')
title('Modulo de la velocidad sobre la frontera S')
xlabel('\theta'), ylabel('
6 Presión del fluido y ecuación de Bernoulli
Se supone que la densidad del fluido es constante e igual a
y se cumple la ecuación de Bernoulli
Despejando la presión se obtiene
Tomando para la constante el valor [math]C=1[/math], la presión queda completamente determinada en toda la región del fluido.
El campo de presiones se ha representado en MATLAB mediante:
rho=2;
C=1;
P=C-0.5*rho*Umag.^2;
PS=P(:,1);
[Pmax,ipmax]=max(PS);
[Pmin,ipmin]=min(PS);
thetaPmax=THS(ipmax);
thetaPmin=THS(ipmin);
figure
contourf(R.*cos(TH),R.*sin(TH),P,30,'LineStyle','none');
colorbar
hold on
viscircles([0 0],1,'Color','k')
axis equal
title('Presión p(x,y)')
xlabel('x'), ylabel('y')
hold offSe observa que la presión es máxima en los puntos de remanso, donde la velocidad es nula, y mínima en los puntos donde la velocidad alcanza su valor máximo. Esto concuerda con la ecuación de Bernoulli, ya que un aumento del módulo de la velocidad implica necesariamente una disminución de la presión.
7 Velocidad y presión al rodear el obstáculo.
Ya teniendo el campo de presiones se puede apreciar que tiene relación con la velocidad, ya que cuando disminuye la presión aumenta el módulo de la velocidad, tratándose de un resultado lógico debido a que cuando hablamos de un fluido incompresible su valor de Trinomio de Bernoulli ha de ser constante. Lo podemos ver mediante la siguiente expresión: (Ec. Bernoulli).
[math]B=z+P/γ+v^2/2g[/math]
B=valor del trinomio de Bernoulli
P= presión
z= altura
v=velocidad que lleva el fluido en determinado punto
g=valor de la gravedad
γ=valor del peso específico
Donde podemos ver que si la presión aumenta la velocidad tiene que disminuir y viceversa.
8 Paradoja de D'Alembert.
La magnitud pn representa la fuerza que el fluido ejerce de forma puntual sobre la superficie del obstáculo. Para estudiar si existe empuje neto en la dirección horizontal, basta analizar la suma de las proyecciones de todas esas fuerzas sobre el vector i. Si dicha suma resulta nula, concluiremos que no hay fuerza total en esa dirección.
Del apartado anterior conocemos ya la presión en la frontera del círculo unidad: [math]p=10-∥u∥^2=9-4 sin^2 θ-4sinθ[/math]
Cálculo del vector normal
Sobre la circunferencia de radio 1 el vector normal exterior es
[math]n=-eρ.[/math]
Para expresarlo en coordenadas cartesianas utilizamos la matriz de cambio de base de polares a cartesianas. Tomando su traspuesta se obtiene:
\begin{pmatrix} \cos \theta & -sen \theta & 0\\ sen \theta & \cos \theta & 0\\ 0 & 0 & 1 \end{pmatrix}
Aplicando esta matriz a [math](1,0,0)^T[/math], que corresponde al versor radial eρ, se obtiene: \begin{pmatrix} \cos \theta &\\ sen \theta &\\ 0 \end{pmatrix} [math]=cosθi+sinθj[/math]
Al tomar el signo negativo para el normal exterior,
[math]n=cosθi-sinθj[/math],
de donde su proyección sobre i es:
[math]n⋅i=-cosθ[/math].
Integración sobre la frontera
El borde del dominio se parametriza como [math](ρ,θ)=(1,θ), con θ∈[0,2π)[/math].
La contribución total de la presión en la dirección horizontal es:
[math]\int_{0}^{2π}p(n⋅i)dθ=\int_{0}^{2π}p(-cosθ)dθ.[/math]
Sustituyendo la expresión de p:
[math]\int_{0}^{2π}(9-4sin^2 θ-4sinθ)(-cosθ)dθ.[/math]
Integramos término a término:
[math]\int_{0}^{2π}-9cosθdθ+\int_{0}^{2π}4sin^2 θcosθdθ+\int_{0}^{2π}4sinθcosθdθ.[/math]
Cada una de estas integrales es periódica con una primitiva continua en todo el intervalo; evaluándolas entre 0 y 2π se obtiene:
[math][-9sinθ]_{0}^{2π}=0,[(4sin^3 θ)/3]_{0}^{2π}=0,[2sin^2 θ]_{0}^{2π}=0.[/math]
Por tanto,
[math]\int_{0}^{2π}p(n⋅i)dθ=0.[/math]
Conclusión
La componente horizontal de la fuerza total ejercida por el fluido sobre el obstáculo es nula. En consecuencia, el fluido no produce empuje neto en la dirección i.
9 Cambio de función potencial
En este apartado repetimos los procesos de los puntos (2), (3) y (4), pero tomando ahora como función potencial
El obstáculo sigue siendo la circunferencia unidad centrada en el origen, y el fluido ocupa la región exterior, trabajándose de nuevo en coordenadas cilíndricas (polares).
9.1 Representación de la función potencial y del campo de velocidades
En primer lugar representamos la nueva función potencial [math]\varphi[/math] sobre la región ocupada por el fluido, manteniendo el mismo mallado del apartado inicial. Esta representación permite visualizar cómo el término angular [math]\theta/(4\pi)[/math] introduce una ligera inclinación en la superficie potencial respecto al caso anterior.
La velocidad de las partículas del fluido viene dada de nuevo por el gradiente del potencial. En coordenadas cilíndricas, el campo de velocidades es
donde
Para poder representarlo en MATLAB se pasa el campo a coordenadas cartesianas mediante la matriz de cambio de base de cilíndricas a cartesianas:
\begin{pmatrix} \vec i\\ \vec j\\ \vec k \end{pmatrix} = \begin{pmatrix} \cos\theta & -\sin\theta & 0\\ \sin\theta & \cos\theta & 0\\ 0 & 0 & 1 \end{pmatrix} \begin{pmatrix} \vec e_\rho\\ \vec e_\theta\\ \vec e_z \end{pmatrix}
Aplicando esta matriz al vector [math](u_\rho,u_\theta,0)^T[/math] se obtiene
Sobre las curvas de nivel de [math]\varphi[/math] se representa este nuevo campo de velocidades:
% Apartado 9.1: Potencial y campo de velocidades para la nueva función φ
r = linspace(1,5,30); % Coordenada radial (rho)
a = linspace(0,2*pi,30); % Coordenada angular (theta)
[R,A] = meshgrid(r,a); % Mallado en (rho,theta)
% Conversión a coordenadas cartesianas
X = R.*cos(A);
Y = R.*sin(A);
% Nueva función potencial
phi = (R + 1./R).*cos(A) + A/(4*pi);
figure
surf(X,Y,phi);
shading interp
hold on
plot(1*cos(a),1*sin(a),'k','LineWidth',2); % Obstáculo
axis([-4 4 -4 4])
title('Nueva función potencial')
xlabel('EJE X'); ylabel('EJE Y');
colorbar
hold off
% Campo de velocidades (en cartesianas) sobre curvas de nivel de φ
figure
contour(X,Y,phi,30);
hold on
u_rho = (1 - 1./R.^2).*cos(A);
u_theta = -(1 + 1./R.^2).*sin(A) + 1./(4*pi*R);
Cx = u_rho.*cos(A) - u_theta.*sin(A);
Cy = u_rho.*sin(A) + u_theta.*cos(A);
quiver(X,Y,Cx,Cy)
plot(1*cos(a),1*sin(a),'k','LineWidth',1)
axis equal
axis([-4 4 -4 4])
title('Campo de velocidades (nuevo potencial)')
xlabel('EJE X'); ylabel('EJE Y');
colorbar
hold off
Gracias a la representación anterior se observa que los vectores velocidad siguen siendo ortogonales a las líneas equipotenciales del nuevo potencial.
9.2 Rotacional nulo y divergencia nula del nuevo campo
Al ser [math]\vec u[/math] el gradiente de un potencial escalar, su rotacional sigue siendo nulo:
En coordenadas cilíndricas se verifica explícitamente mediante la expresión
lo que muestra que el flujo sigue siendo irrotacional.
Por otro lado, la divergencia del nuevo campo de velocidades viene dada por
y sustituyendo las expresiones de [math]u_\rho[/math] y [math]u_\theta[/math] se obtiene de nuevo
La divergencia nula indica que el flujo sigue siendo incompresible: no hay creación ni destrucción de volumen de fluido en el dominio.
9.3 Líneas de corriente del nuevo flujo
Para determinar las líneas de corriente asociadas al nuevo campo de velocidades, consideramos el campo [math]\vec v[/math] ortogonal a [math]\vec u[/math], definido por
En coordenadas cilíndricas se tiene
[math] \vec v = \left(\left(1+\tfrac{1}{\rho^2}\right)\sin\theta - \tfrac{1}{4\pi\rho}\right)\vec e_\rho + \left(1-\tfrac{1}{\rho^2}\right)\cos\theta\,\vec e_\theta. [/math]
Dado que el rotacional de [math]\vec v[/math] también es nulo, existe un potencial escalar [math]\psi[/math] tal que
A partir de las componentes de [math]\vec v[/math] se obtiene el siguiente sistema:
Integrando la primera ecuación respecto de [math]\rho[/math] y comprobando la compatibilidad con la segunda, llegamos a
donde [math]C[/math] es una constante. Las curvas [math]\psi=\text{cte}[/math] representan las líneas de corriente del nuevo flujo. Su representación numérica muestra cómo la introducción del término angular modifica el patrón de las corrientes, introduciendo una ligera asimetría respecto al caso inicial.
% Apartado 9.3: Líneas de corriente del nuevo flujo
r = linspace(1,5,80);
a = linspace(0,2*pi,80);
[R,A] = meshgrid(r,a);
X = R.*cos(A);
Y = R.*sin(A);
% Campo de velocidades (reutilizamos las expresiones de 9.1)
u_rho = (1 - 1./R.^2).*cos(A);
u_theta = -(1 + 1./R.^2).*sin(A) + 1./(4*pi*R);
Cx = u_rho.*cos(A) - u_theta.*sin(A);
Cy = u_rho.*sin(A) + u_theta.*cos(A);
% Función de corriente psi
psi = (R - 1./R).*sin(A) - (1/(4*pi))*log(R);
figure
contourf(X,Y,psi,30,'LineStyle','-');
hold on
colorbar
quiver(X(1:3:end,1:3:end),Y(1:3:end,1:3:end), ...
Cx(1:3:end,1:3:end),Cy(1:3:end,1:3:end),1.3,'w');
plot(cos(a),sin(a),'k','LineWidth',2)
axis equal
axis([-4 4 -4 4])
title('Líneas de corriente para el nuevo potencial')
xlabel('EJE X'); ylabel('EJE Y');
hold off
10 Poster
En el poster a continuación se muestra resumidamente el trabajo.