Diferencia entre revisiones de «Tubos Concéntricos»
(→Caudal que circula por la sección longitudinal) |
|||
| (No se muestran 289 ediciones intermedias de 4 usuarios) | |||
| Línea 1: | Línea 1: | ||
| − | Flujo de Couette entre dos tubos concéntricos. Vamos a considerar el flujo de un fluido incompresible a través de dos cilindros concéntricos de manera que el exterior se mueve con velocidad angular constante en sentido antihorario mientras que el interior está fijo. Si suponemos que ambos cilindros tienen su eje OX<sub>3</sub> y pintamos la sección transversal (x<sub>3</sub> = 0) el cilindro exterior queda proyectado sobre la circunferencia <math> \rho = | + | Flujo de Couette entre dos tubos concéntricos. Vamos a considerar el flujo de un fluido incompresible a través de dos cilindros concéntricos de manera que el exterior se mueve con velocidad angular constante en sentido antihorario mientras que el interior está fijo. Si suponemos que ambos cilindros tienen su eje OX<sub>3</sub> y pintamos la sección transversal (x<sub>3</sub> = 0) el cilindro exterior queda proyectado sobre la circunferencia <math> \rho = 2 </math> y el interior sobre la circunferencia <math> \rho = 1 </math>. La velocidad angular del cilindro exterior es <math> \omega > 0 </math>. |
== Representación de la sección transversal == | == Representación de la sección transversal == | ||
| + | Al cortar los cilindros por el plano <math>x_3=0</math>, se dibuja la siguiente sección: | ||
| + | [[Archivo:secciontransversal.jpg|400px|miniaturadeimagen|centro|Sección transversal]] | ||
| + | |||
| + | {{matlab|codigo= | ||
| + | |||
| + | h=0.05; % intervalo | ||
| + | u=1:h:2; % definir u [1,2] | ||
| + | v=0:h:2*pi; % definir v [0,2*pi] | ||
| + | [uu,vv]=meshgrid(u,v); % matrices de u y v | ||
| + | figure(1) | ||
| + | xx=uu.*cos(vv); % parametrización | ||
| + | yy=uu.*sin(vv); | ||
| + | mesh(xx,yy,0*xx) % dibujar el mallado | ||
| + | axis([-3,3,-3,3]) % ejes del dibujo | ||
| + | view(2) % ver figura | ||
| + | }} | ||
== Cálculo de Velocidades == | == Cálculo de Velocidades == | ||
| + | La velocidad de las partículas del fluido viene dada por <math> \vec{u}(\rho,\theta) = f(\rho)\vec{e}_\theta </math> y su presión p es constante. Sabemos que <math> (\vec{u},p) </math> satisface la ecuación de Navier-Stokes estacionaria. | ||
=== Interpretación física del problema === | === Interpretación física del problema === | ||
| − | + | La ecuación de Navier-Stokes que satisface nuestro fluido es la siguiente: | |
| + | <center><math> \frac{\partial\vec{u}}{\partial t} + (\vec{u}\cdot\nabla)\vec{u} + \nabla p = \mu\Delta\vec{u} </math></center> | ||
| + | Donde p es la presión y <math> \mu </math> es la viscosidad del fluido. | ||
| + | |||
| + | |||
| + | Ahora bien, conocemos lo siguiente: | ||
| + | # Que es estacionario, por lo cual el diferencial de densidad en función del tiempo es igual a cero. | ||
| + | # Que su presión es constante, por lo que el campo de presiones, <math> \nabla p </math>, es cero. | ||
| + | # Que debemos despreciar el segundo término, <math> (\vec{u}\cdot\nabla)\vec{u} </math>, que es la parte convectiva, por lo que podemos suponer que la viscosidad es mucho mayor. | ||
| + | |||
| + | |||
| + | Teniendo todo esto en cuenta, la ecuación de Navier-Stokes queda de la siguiente manera: | ||
| + | <center><math> \mu\Delta\vec{u} = \vec{0} \Longrightarrow \Delta\vec{u} = \vec{0} </math></center> | ||
| + | |||
| + | === Cálculo del laplaciano vectorial del campo de velocidades === | ||
| + | El cálculo del laplaciano vectorial en coordenadas cartesianas es relativamente sencillo y se describe de la siguiente manera: | ||
| + | <center><math> \Delta\vec{u} = \Delta (u_1\vec{\imath} + u_2\vec{\jmath} + u_3\vec{k}) = \Delta u_1\vec{\imath} + \Delta u_2\vec{\jmath} + \Delta u_3\vec{k} </math></center> | ||
| + | Sin embargo, en este caso nos encontramos en coordenadas cilíndricas, lo cual complica los cálculos. Para calcular el laplaciano vectorial podemos escribir el campo en la base cartesiana pero las componentes se pueden quedar en coordenadas cilíndricas y realizar el laplaciano en dichas coordenadas. Sabemos que: | ||
| + | <center><math> \vec{e}_\theta = -sen\theta\vec{\imath} + cos\theta\vec{\jmath} </math></center> | ||
| + | Por lo que el campo queda de la siguiente manera: | ||
| + | <center><math> \vec{u} = f(\rho)\cdot(-sen\theta\vec{\imath} + cos\theta\vec{\jmath}) \Longrightarrow \vec{u} = -f(\rho)sen\theta\vec{\imath} + f(\rho)cos\theta\vec{\jmath} </math></center> | ||
| + | Aplicamos el laplaciano según la fórmula descrita anteriormente. Para ello debemos calcular el laplaciano de u<sub>1</sub> y u<sub>2</sub> en coordenadas cilíndricas: | ||
| + | <center><math> \Delta u = \frac{1}{\rho}\frac{\partial}{\partial\rho}\left ( \rho\frac{\partial u}{\partial\rho} \right ) + \frac{1}{\rho^2}\frac{\partial ^2 u}{\partial\theta^2} + \frac{\partial ^2 u}{\partial z^2} </math></center> | ||
| + | <center><math> \Delta u_1 = -\frac{sen\theta}{\rho}\frac{\partial}{\partial\rho} \left ( \rho\frac{\partial f(\rho)}{\partial\rho}\right ) + \frac{sen\theta}{\rho^2}f(\rho) </math></center> | ||
| + | <center><math> \Delta u_2 = \frac{cos\theta}{\rho}\frac{\partial}{\partial\rho} \left ( \rho\frac{\partial f(\rho)}{\partial\rho}\right ) -\frac{cos\theta}{\rho^2}f(\rho) </math></center> | ||
| + | Por lo que: | ||
| + | <center><math> \Delta\vec{u} = \left [ -\frac{sen\theta}{\rho}\frac{\partial}{\partial\rho} \left ( \rho\frac{\partial f(\rho)}{\partial\rho}\right ) + \frac{sen\theta}{\rho^2}f(\rho) \right ] \vec{\imath} + \left [ \frac{cos\theta}{\rho}\frac{\partial}{\partial\rho} \left ( \rho\frac{\partial f(\rho)}{\partial\rho}\right ) -\frac{cos\theta}{\rho^2}f(\rho) \right ] \vec{\jmath} = \vec{0} </math></center> | ||
| + | Cambiamos las componentes a coordenadas cilíndricas: | ||
| + | <center><math> \Delta\vec{u} = \frac{1}{\rho} \left [ \frac{\partial}{\partial\rho} \left ( \rho\frac{\partial f(\rho)}{\partial\rho} \right ) -\frac{f(\rho)}{\rho^2}\right ] (-sen\theta\vec{\imath} + cos\theta\vec{\jmath}) \Longrightarrow \Delta\vec{u} = \frac{1}{\rho} \left [ \frac{\partial}{\partial\rho} \left ( \rho\frac{\partial f(\rho)}{\partial\rho} \right ) -\frac{f(\rho)}{\rho^2}\right ] \vec{e}_\theta </math></center> | ||
| + | |||
| + | === Obtención de la ecuación diferencial === | ||
| + | Igualamos cada componente del vector a cero, y simplificamos, obteniendo así una ecuación diferencial: | ||
| + | <center><math> \frac{1}{\rho}\frac{\partial}{\partial\rho} \left ( \rho\frac{\partial f(\rho)}{\partial\rho} \right ) -\frac{f(\rho)}{\rho^2} = 0 \Longrightarrow \frac{\partial}{\partial\rho} \left ( \rho\frac{\partial f(\rho)}{\partial\rho} \right ) -\frac{f(\rho)}{\rho} = 0 </math></center> | ||
| + | |||
| + | === Comprobaciones === | ||
| + | El enunciado exige que comprobemos si la ecuación diferencial satisface ciertas condiciones: | ||
| + | * Comprobar que <math> f(\rho) </math> satisface la siguiente ecuación diferencial: | ||
| + | |||
| + | <center><math> \frac{\partial}{\partial\rho}\left ( \rho\frac{\partial f(\rho)}{\partial\rho}\right ) = \frac{f(\rho)}{\rho} </math></center> | ||
| + | |||
| + | Nos damos cuenta de que esta ecuación es igual a la que hemos obtenido nosotros, por lo que podemos afirmar que satisface la ecuación diferencial. | ||
| + | * Comprobar que <math> f(\rho) </math> es solución, siendo <math> f(\rho) </math>: | ||
| + | <center><math> f(\rho) = a\rho + \frac{b}{\rho} </math></center> | ||
| + | |||
| + | Sustituimos <math> f(\rho) </math> en la ecuación diferencial: | ||
| + | <center><math> \frac{\partial}{\partial\rho} \left ( \rho\frac{\partial \left ( a\rho + \frac{b}{\rho} \right ) }{\partial\rho} \right ) -\frac{a\rho + \frac{b}{\rho}}{\rho} = 0 \Longrightarrow \frac{\partial}{\partial\rho}\left ( a\rho - \frac{b}{\rho}\right ) - a - \frac{b}{\rho^2} = 0 \Longrightarrow a + \frac{b}{\rho^2} - a -\frac{b}{\rho} = 0 </math></center> | ||
| + | Simplificando resulta <math> 0 = 0 </math>, por lo que <math> f(\rho) </math> es solución. | ||
| + | === Determinación de a y b en función de la velocidad === | ||
| + | Se nos pide determinar a y b de manera que la velocidad en la frontera del fluido coincida con la de los cilindros interior y exterior. De esta manera, podemos determinar que: | ||
| + | <center><math> f(1) = 0 \Longrightarrow a + b = 0 </math></center> | ||
| + | <center><math> f(2) = \omega\cdot\rho \Longrightarrow 2a + \frac{b}{2} = 2\omega </math></center> | ||
| + | Resolvemos el sistema, resultando: | ||
| + | <center><math> a = \frac{4\omega}{3} </math></center> | ||
| + | <center><math> b = -\frac{4\omega}{3} </math></center> | ||
| + | === Comprobación de la condición de incompresibilidad === | ||
| + | Se nos pide que comprobemos la condición de incompresibilidad, es decir, que el agua siempre ocupa el mismo volumen, la cual es: | ||
| + | <center><math> \nabla\cdot\vec{u} = 0 </math></center> | ||
| + | La divergencia de un campo vectorial en coordenadas cilíndricas viene dada por la siguiente expresión: | ||
| + | <center><math> \nabla\cdot\vec{u} = \frac{1}{\rho}\left\{\frac{\partial}{\partial\rho}(\rho u_\rho) + \frac{\partial}{\partial\theta}(u_\theta) + \frac{\partial}{\partial z}(\rho u_z)\right\} </math></center> | ||
| + | Operamos: | ||
| + | <center><math> \nabla\cdot\vec{u} = \frac{1}{\rho}\left\{\frac{\partial}{\partial\rho}(0) + \frac{\partial}{\partial\theta}(f(\rho)) + \frac{\partial}{\partial z}(0)\right\} \Longrightarrow \nabla\cdot\vec{u} = \frac{1}{\rho}(0 + 0 + 0) \Longrightarrow \nabla\cdot\vec{u} = 0 </math></center> | ||
| + | Se cumple la condición de incompresibilidad. | ||
| + | |||
| + | == Representación del campo de velocidades == | ||
| + | Suponiendo que, <math> \omega = 1 </math> y <math> \mu = 1 </math>: | ||
| + | <center><math> a = \frac{4}{3} </math> y <math> b = -\frac{4}{3} </math></center> | ||
| + | Sustituimos en la función: | ||
| + | <center><math> f(\rho) = a\rho + \frac{b}{\rho} \Longrightarrow f(\rho) = \frac{4}{3}\left ( \rho - \frac{1}{\rho} \right ) </math></center> | ||
| + | De manera que nuestro campo es: | ||
| + | <center><math> \vec{u} = f(\rho)\vec{e}_\theta \Longrightarrow \vec{u} = \frac{4}{3}\left ( \rho - \frac{1}{\rho} \right )\cdot\vec{e}_\theta </math></center> | ||
| + | Representamos: | ||
| + | |||
| + | [[Archivo:Gráfica3bien.png|400px|miniaturadeimagen|centro|Campo vectorial de las velocidades]] | ||
| + | |||
| + | {{matlab|codigo= | ||
| + | n=30; % Longitud de los intervalos | ||
| + | u=linspace(1,2,n); % Definición del parámetro u (rho) | ||
| + | v=linspace(0,2*pi,n); % Definición del parámetro v (theta) | ||
| + | [U,V] = meshgrid(u,v); % Matriz de los parámetros | ||
| + | x = U.*cos(V); % Coordenada x (cartesiana) | ||
| + | y = U.*sin(V); % Coordenada y (cartesiana) | ||
| + | fx = -sin(V)* (4/3*(U-1./U)); % Campo vectorial en la dirección de x | ||
| + | fy = cos(V)*(4/3*(U-1./U)); % Campo vectorial en la dirección de y | ||
| + | quiver(x,y,fx,fy); % Dibujo del campo vectorial | ||
| + | }} | ||
| + | |||
| + | == Representación de las líneas de corriente del campo == | ||
| + | Para ello, necesitamos calcular el campo <math> \vec{v} </math> que en cada punto es ortogonal a <math> \vec{u} </math>. | ||
| + | <center><math> \vec{v} = \vec{k}\times\vec{u} \Longrightarrow \vec{v} = \frac{4}{3}\left ( \rho - \frac{1}{\rho} \right ) (\vec{e}_z\times\vec{e}_\theta) \Longrightarrow \vec{v} = \frac{4}{3}\left ( \rho - \frac{1}{\rho} \right ) (-\vec{e}_\rho) \Longrightarrow \vec{v} = -\frac{4}{3}\left ( \rho - \frac{1}{\rho} \right )\cdot\vec{e}_\rho </math></center> | ||
| + | === Comprobación de irrotacionalidad de <math> \vec{v} </math> === | ||
| + | Comprobamos que, como dice el enunciado, el campo <math> \vec{v} </math> es irrotacional debido a que la divergencia de <math> \vec{u} </math> es nula, cosa que ya hemos calculado con anterioridad. | ||
| + | <center><math> \nabla\times\vec{v} = \begin{vmatrix} \vec{e}_\rho & \rho\vec{e}_\theta & \vec{e}_z \\ \frac{\partial}{\partial\rho} & \frac{\partial}{\partial\theta} & \frac{\partial}{\partial z} \\ -\frac{4}{3}\left ( \rho - \frac{1}{\rho} \right ) & 0 & 0 \end{vmatrix} \Longrightarrow \nabla\times\vec{v} = \vec{0} </math></center> | ||
| + | Se comprueba la irrotacionalidad de <math> \vec{v} </math>. | ||
| + | === Cálculo de <math> \psi </math> === | ||
| + | Conocemos que: | ||
| + | <center><math> \vec{v} = \nabla\psi \Longrightarrow -\frac{4}{3}\left ( \rho - \frac{1}{\rho} \right )\cdot\vec{e}_\rho = \frac{\partial\psi}{\partial\rho}\vec{e}_\rho + \frac{1}{\rho}\frac{\partial\psi}{\partial\theta}\vec{e}_\theta + \frac{\partial\psi}{\partial z}\vec{e}_z </math></center> | ||
| + | Despejamos <math> \psi </math>: | ||
| + | <center><math> \frac{\partial\psi}{\partial\rho} = -\frac{4}{3}\left ( \rho - \frac{1}{\rho} \right ) \Longrightarrow \psi = \int -\frac{4}{3}\left ( \rho - \frac{1}{\rho} \right ) \partial\rho </math></center> | ||
| + | Calculamos la integral: | ||
| + | <center><math> \psi = \frac{4}{3} \left ( ln(\rho) - \frac{\rho^2}{2} \right ) </math></center> | ||
| + | |||
| + | === Representación de las líneas de corriente de <math> \vec{u} </math> === | ||
| + | |||
| + | Se representan las líneas de corriente. | ||
| + | |||
| + | [[Archivo:Gráfica 4.3bien.png|400px|miniaturadeimagen|centro|Líneas de corriente del campo <math> \vec{u} </math>]] | ||
| + | |||
| + | {{matlab|codigo= | ||
| + | |||
| + | h=30; % Definicion del intervalo | ||
| + | u=linspace(1,2,h); % Pertenencia del parametro u [1,2] | ||
| + | v=linspace(0,2*pi,h); % Pertenencia del parametro v [0,2*pi] | ||
| + | [U,V]=meshgrid(u,v); % Matrices de coordenadas de U y V | ||
| + | f = 4/3*(log(U)-(U.^2)./2); % Campo escalar | ||
| + | X=U.*cos(V); % Parametrización | ||
| + | Y=U.*sin(V); | ||
| + | axis([-3,3,-3,3]) % Elección de los ejes | ||
| + | view(2) % Ver la figura desde arriba | ||
| + | contour(X,Y,f,15); % Dibujo de las líneas de nivel | ||
| + | axis([-3,3,-3,3]) % Definición de los ejes del dibujo | ||
| + | colormap(summer) | ||
| + | |||
| + | }} | ||
| + | |||
| + | == Cálculo de la velocidad de fluido máxima == | ||
| + | Para hallar cuándo el módulo de la velocidad del fluido es máximo debemos maximizar el módulo del campo de velocidades. El módulo del campo de velocidades es: | ||
| + | |||
| + | <center><math> |\vec{u}(\rho)| = \left | \left ( \frac{4}{3}\rho - \frac{4}{3\rho} \right ) \vec{e}_\theta \right | = \frac{4}{3} \left ( \rho - \frac{1}{ρ} \right ) </math></center> | ||
| + | |||
| + | Derivamos <math> |\vec{u}(\rho)| </math> e igualamos a 0: | ||
| + | |||
| + | <center><math> \frac{\partial |\vec{u}(\rho)|}{\partial\rho} = \frac{4}{3} \left ( 1 + \frac{1}{\rho^2} \right ) = 0 </math></center> | ||
| + | |||
| + | Observamos que esta función no posee máximos ni mínimos, de manera que procedemos a analizar en el intervalo en el cual se encuentran nuestros radios [1,2]. Observamos además, que es continua en dicho intervalo, por lo que analizamos en los extremos de este: | ||
| + | |||
| + | <center><math> |\vec{u}(1)| = 0 </math></center> | ||
| + | <center><math> |\vec{u}(2)| = 2 </math></center> | ||
| + | |||
| + | Obtenemos que el máximo de dicho intervalo se encuentra en <math> \rho = 2 </math>, lo cuál tiene sentido ya que el módulo de la velocidad será mayor cuanto más cerca nos encontremos del cilindro exterior que se encuentra en movimiento. | ||
| + | |||
| + | |||
| + | [[Archivo:campovel.jpg|400px|miniaturadeimagen|centro|Campo del módulo de la velocidad del fluido]] | ||
| + | |||
| + | {{matlab|codigo= | ||
| + | |||
| + | a=4/3; % Definición del parámetro a en función de la velocidad angular | ||
| + | b=-a; % Definición del parámetro b en función de la velocidad angular | ||
| + | u=1:0.05:2; % Definición del parámetro u (rho) | ||
| + | v=0:0.05:2*pi; % Definición del parámetro v (theta) | ||
| + | [U,V] = meshgrid(u,v); % Matriz de los parámetros | ||
| + | x = U.*cos(V); % Coordenada x (cartesiana) | ||
| + | y = U.*sin(V); % Coordenada y (cartesiana) | ||
| + | f = a*U+b./U; % Módulo de la velocidad es función del radio | ||
| + | surf(x,y,f); % Dibujo del campo escalar | ||
| + | axis([-3,3,-3,3]) % Definición de los ejes | ||
| + | view(2); % Vista en 2D | ||
| + | |||
| + | }} | ||
| + | |||
| + | En el gráfico siguiente observaremos el comportamiento del módulo de la velocidad en función de ρ. | ||
| + | |||
| + | [[Archivo:graficomódulo.jpg|400px|miniaturadeimagen|centro|Gráfico del módulo de la velocidad]] | ||
| + | |||
| + | Para ello, hemos utilizado este programa en MatLab. | ||
| + | |||
| + | {{matlab||codigo = | ||
| + | x=-10:0.1:10; % Definición de la x (rho) | ||
| + | y= ((4.*x)./3) - (4./(3.*x)); % Ecuación en función de x | ||
| + | plot(x,y); % Dibujo gráfica | ||
| + | ax = gca; % Dibujo de los ejes x e y | ||
| + | ax.XAxisLocation = 'origin'; | ||
| + | ax.YAxisLocation = 'origin'; | ||
| + | }} | ||
| + | |||
| + | == Cálculo y dibujo del rotacional de <math> \vec{u} </math> == | ||
| + | |||
| + | === Cálculo de <math> \nabla\times\vec{u} </math> === | ||
| + | El cálculo del rotacional de <math> \vec{u} </math> viene dado por la siguiente expresión: | ||
| + | |||
| + | |||
| + | <center><math> \nabla\times\vec{u} = \frac{1}{\rho}\begin{vmatrix} \vec {e}_\rho & \rho\vec{e}_\theta & \vec{e}_z \\ \frac{\partial}{\partial\rho} & \frac{\partial}{\partial\theta} & \frac{\partial}{\partial z} \\ 0 & \rho f(\rho) & 0 \end{vmatrix} = \frac{1}{\rho} \left [ \vec {e}_z \left ( \frac{\partial \left ( \rho f(\rho) \right ) }{\partial\rho} \right ) \right ] = \frac{1}{\rho} \left [ f(\rho) + \rho\frac{\partial f(\rho)}{\partial\rho} \right ] \vec{e}_z = \left ( \frac{f(\rho)}{\rho} + \frac{\partial f(\rho)}{\partial\rho} \right ) \vec{e}_z </math></center> | ||
| + | |||
| + | |||
| + | Sustituimos la función <math> f(\rho) = \frac{4}{3} \left ( \rho - \frac{1}{\rho} \right ) </math> en la expresión que acabamos de calcular: | ||
| + | |||
| + | |||
| + | <center><math> \left [ \frac{\frac{4}{3}\left ( \rho -\frac{1}{\rho} \right ) }{\rho} + \frac{\partial \left ( \frac{4}{3}\left ( \rho -\frac{1}{\rho}\right ) \right ) }{\partial\rho}\right ] \vec{e}_z = \left [ \frac{4}{3}\left ( 1 - \frac{1}{\rho^2}\right ) + \frac{4}{3}\left ( 1 + \frac{1}{\rho^2}\right ) \right ] \vec {e}_z = \left [ \frac{4}{3} - \frac{4}{3\rho^2} + \frac{4}{3} + \frac{4}{3\rho^2}\right ] \vec {e}_z = \frac{8}{3}\vec{e}_z </math></center> | ||
| + | |||
| + | === Cálculo de <math> |\nabla\times\vec{u}| </math> === | ||
| + | |||
| + | <center><math> \nabla\times\vec{u} = \frac{8}{3}\vec{e}_z \Longrightarrow |\nabla\times\vec{u}| = \left | \left ( \frac{8}{3}\right ) \vec {e}_z\right | = \frac{8}{3} </math></center> | ||
| + | |||
| + | === Representación de <math> |\nabla\times\vec{u}| </math> === | ||
| + | En la siguiente imagen se muestra el campo del rotacional calculado junto con el correspondiente programa hecho en MatLab. | ||
| + | [[Archivo:rotacionalcampo.jpg|400px|miniaturadeimagen|centro|Campo del rotacional]] | ||
| + | |||
| + | {{matlab|codigo = | ||
| + | |||
| + | h=30; % Longitud de los intervalos | ||
| + | x=linspace(1,2,h); % Definición del parámetro x (rho) | ||
| + | y=linspace(0,2*pi,h); % Definición del parámetro y (theta) | ||
| + | [Mx,My] = meshgrid(x,y); % Matriz de los parámetros | ||
| + | x = Mx.*cos(My); % Coordenada x (cartesiana) | ||
| + | y = Mx.*sin(My); % Coordenada y (cartesiana) | ||
| + | z= zeros(h); | ||
| + | W = ones(n).*(8*w/3); % Campo vectorial en la dirección de y | ||
| + | quiver3(x,y,z,zeros(h),zeros(h),W); % Dibujo del campo vectorial | ||
| + | axis([-3,3,-3,3,-3,3]) % Definición ejes del dibujo | ||
| + | }} | ||
| + | |||
| + | === Máximo de <math> |\nabla\times\vec{u}| </math> === | ||
| + | |||
| + | Llegamos a la conclusión de que debido a que el campo del rotacional es constante, el rotacional será el mismo en todos los puntos. | ||
| + | |||
| + | == Representación de la temperatura == | ||
| + | |||
| + | Sabiendo que la temperatura del fluido viene dada por la expresión <math> T(\rho,\theta) = 1 + \rho^2 sin^2 \theta\cdot e^{−\left ( \rho − \frac{3}{2} \right ) ^2} </math> se dibuja el campo de temperaturas y las curvas de nivel: | ||
| + | |||
| + | |||
| + | [[Archivo:temperaturaycurvas.jpg|400px|miniaturadeimagen|centro|Campo de temperaturas (izquierda) y curvas de nivel (derecha)]] | ||
| + | |||
| + | En Matlab hemos utilizado el siguiente programa. | ||
| + | {{matlab|codigo= | ||
| + | |||
| + | x=1:0.05:2; %Definición de la x (rho) | ||
| + | y=0:0.05:2*pi; %Definicón de la y (teta) | ||
| + | [Mx,My]=meshgrid(x,y); %Matriz de los parámetros | ||
| + | Mz= 1+Mx.^2.*(sin(My.*exp((-(Mx-3/2).^2)))).^2; %Matriz de la z | ||
| + | subplot(1,2,1); %Ventanas | ||
| + | surf(Mx,My,Mz); %Dibujo de la superficie | ||
| + | shading flat %Difuminado | ||
| + | subplot(1,2,2) %Ventana 2 | ||
| + | pcolor(Mx,My,Mz); %Proyección en planta | ||
| + | hold on %Mantener ventana | ||
| + | contour(Mx,My,Mz,7,'k') %7 curvas de nivel | ||
| + | hold off | ||
| + | |||
| + | }} | ||
| + | |||
| + | |||
| + | Por último, representamos en una gráfica donde se observa en que punto la temperatura es máxima. | ||
| + | |||
| + | [[Archivo:graftemp1.jpg|400px|miniaturadeimagen|centro|Gráfico de la temperatura]] | ||
| + | |||
| + | En Matlab hemos utilizado el siguiente programa. | ||
| + | |||
| + | {{matlab|codigo= | ||
| + | |||
| + | x=1:0.05:2; %Definición de la x (rho) | ||
| + | y=0:0.05:2*pi; %Definicón de la y (teta) | ||
| + | [Mx,My]=meshgrid(x,y); %Matriz de los parámetros | ||
| + | Mz= 1+Mx.^2.*(sin(My.*exp((-(Mx-3/2).^2)))).^2; %Matriz de la z | ||
| + | plot3(Mx,My,Mz); %Dibujo en líneas del campo | ||
| + | |||
| + | }} | ||
| + | |||
| + | ==Gradiente de la temperatura== | ||
| + | === Cálculo del gradiente de T === | ||
| + | |||
| + | El gradiente de la temperatura se define mediante la siguiente ecuación: | ||
| + | <center><math> \nabla T(\rho,\theta) = \frac{\partial T}{\partial\rho}\vec{e}_\rho + \frac{1}{ρ}\frac{\partial T}{\partial\theta}\vec{e}_\theta + \frac{\partial T}{\partial z}\vec{e}_z </math></center> | ||
| + | |||
| + | Y <math> T(\rho,\theta) </math> es: | ||
| + | <center><math> T(\rho,\theta) = 1 + \rho^2 sin^2 \theta\cdot e^{−\left ( \rho − \frac{3}{2} \right ) ^2} </math></center> | ||
| + | |||
| + | De manera que: | ||
| + | <center><math> \nabla T(\rho,\theta) = \left [ \rho sen^2 \theta\cdot e^{-\left ( \rho - \frac{3}{2}\right ) ^2} \cdot (-2\rho^2 + 3\rho + 2) \right ] \vec{e}_\rho + \left [ \rho sen(2\theta)\cdot e^{-\left ( \rho - \frac{3}{2}\right ) ^2} \right ] \vec{e}_\theta </math></center> | ||
| + | |||
| + | === Representación del gradiente de T === | ||
| + | |||
| + | [[Archivo:gradiente23.jpg|400px|miniaturadeimagen|centro|Representación del gradiente]] | ||
| + | |||
| + | {{matlab|codigo= | ||
| + | x=1:0.1:2; %Definición de la x (rho) | ||
| + | y=0:0.1:2*pi; %Definicón de la y (teta) | ||
| + | [Mx,My]=meshgrid(x,y); %Matriz de los parámetros | ||
| + | Mz= 1+Mx.^2.*(sin(My.*exp((-(Mx-3/2).^2)))).^2; %Matriz de la z | ||
| + | [Dx,Dy] = gradient(Mz,x,y); %Gradiente | ||
| + | figure; | ||
| + | %gradiente | ||
| + | quiver(Mx,My,Dx,Dy); | ||
| + | hold off; | ||
| + | }} | ||
| + | |||
| + | === Comprobación de la ortogonalidad del gradiente === | ||
| + | |||
| + | [[Archivo: curvasdenivel.jpg|400px|miniaturadeimagen|centro|Ortogonalidad gradiente y curvas de nivel]] | ||
| + | |||
| + | {{matlab|codigo= | ||
| + | x=1:0.1:2; %Definición de la x (rho) | ||
| + | y=0:0.1:2*pi; %Definicón de la y (teta) | ||
| + | [Mx,My]=meshgrid(x,y); %Matriz de los parámetros | ||
| + | Mz= 1+Mx.^2.*(sin(My.*exp((-(Mx-3/2).^2)))).^2; %Matriz de la z | ||
| + | [Dx,Dy] = gradient(Mz,x,y); %Gradiente | ||
| + | figure; | ||
| + | %curvas de nivel | ||
| + | contour(Mx,My,Mz) %Curvas de nivel | ||
| + | hold on | ||
| + | %gradiente | ||
| + | quiver(Mx,My,Dx,Dy); %Dibujar gradiente | ||
| + | hold off; | ||
| + | |||
| + | }} | ||
| + | |||
| + | == Caudal que circula por la sección longitudinal == | ||
| + | |||
| + | Conocemos que el caudal que circula por una superficie cumple la siguiente expresión: | ||
| + | |||
| + | <center><math> Caudal = \int_S \vec{F}\cdot\vec{dS} = \int_S \vec{F}\cdot\vec{N} dS </math></center> | ||
| + | |||
| + | Además conocemos: | ||
| + | |||
| + | <center><math> \vec{F} = \vec{u} = f(\rho)\vec{e}_\theta = \frac{4}{3}\left ( \rho - \frac{1}{\rho}\right ) \vec{e}_\theta </math></center> | ||
| + | <center><math> \vec{N} = \vec{e}_\theta </math></center> | ||
| + | |||
| + | La sección longitudinal corresponde con el plano x=0 que parametrizada en coordenadas cilíndricas es: | ||
| + | <center><math>\rho= u </math></center> | ||
| + | <center><math>\theta=\frac{π}{2} </math></center> | ||
| + | <center><math>z = v </math></center> | ||
| + | <math> u \in[1,2] v \in[0,1] </math> | ||
| + | Sustituyendo en la fórmula: | ||
| + | <math> \int_S(\frac{4}{3}\left ( \rho - \frac{1}{\rho}\right ) \vec{e}_\theta)\cdot( \vec{e}_\theta)dS = \int_S(\frac{4}{3}\left ( \rho - \frac{1}{\rho}\right )dS = \frac{4}{3} \int_v \int_u (u-\frac{1}{u}) dudv = \frac{4}{3} \int_0^1 dv \int_1^2(u-\frac{1}{u})du= \frac{4}{3}[(2-ln(2))-\frac{1}{2}]= 2-\frac{4}{3}ln(2) </math> | ||
Revisión actual del 19:07 8 dic 2022
Flujo de Couette entre dos tubos concéntricos. Vamos a considerar el flujo de un fluido incompresible a través de dos cilindros concéntricos de manera que el exterior se mueve con velocidad angular constante en sentido antihorario mientras que el interior está fijo. Si suponemos que ambos cilindros tienen su eje OX3 y pintamos la sección transversal (x3 = 0) el cilindro exterior queda proyectado sobre la circunferencia [math] \rho = 2 [/math] y el interior sobre la circunferencia [math] \rho = 1 [/math]. La velocidad angular del cilindro exterior es [math] \omega \gt 0 [/math].
Contenido
- 1 Representación de la sección transversal
- 2 Cálculo de Velocidades
- 3 Representación del campo de velocidades
- 4 Representación de las líneas de corriente del campo
- 5 Cálculo de la velocidad de fluido máxima
- 6 Cálculo y dibujo del rotacional de [math] \vec{u} [/math]
- 7 Representación de la temperatura
- 8 Gradiente de la temperatura
- 9 Caudal que circula por la sección longitudinal
1 Representación de la sección transversal
Al cortar los cilindros por el plano [math]x_3=0[/math], se dibuja la siguiente sección:
h=0.05; % intervalo
u=1:h:2; % definir u [1,2]
v=0:h:2*pi; % definir v [0,2*pi]
[uu,vv]=meshgrid(u,v); % matrices de u y v
figure(1)
xx=uu.*cos(vv); % parametrización
yy=uu.*sin(vv);
mesh(xx,yy,0*xx) % dibujar el mallado
axis([-3,3,-3,3]) % ejes del dibujo
view(2) % ver figura
2 Cálculo de Velocidades
La velocidad de las partículas del fluido viene dada por [math] \vec{u}(\rho,\theta) = f(\rho)\vec{e}_\theta [/math] y su presión p es constante. Sabemos que [math] (\vec{u},p) [/math] satisface la ecuación de Navier-Stokes estacionaria.
2.1 Interpretación física del problema
La ecuación de Navier-Stokes que satisface nuestro fluido es la siguiente:
Donde p es la presión y [math] \mu [/math] es la viscosidad del fluido.
Ahora bien, conocemos lo siguiente:
- Que es estacionario, por lo cual el diferencial de densidad en función del tiempo es igual a cero.
- Que su presión es constante, por lo que el campo de presiones, [math] \nabla p [/math], es cero.
- Que debemos despreciar el segundo término, [math] (\vec{u}\cdot\nabla)\vec{u} [/math], que es la parte convectiva, por lo que podemos suponer que la viscosidad es mucho mayor.
Teniendo todo esto en cuenta, la ecuación de Navier-Stokes queda de la siguiente manera:
2.2 Cálculo del laplaciano vectorial del campo de velocidades
El cálculo del laplaciano vectorial en coordenadas cartesianas es relativamente sencillo y se describe de la siguiente manera:
Sin embargo, en este caso nos encontramos en coordenadas cilíndricas, lo cual complica los cálculos. Para calcular el laplaciano vectorial podemos escribir el campo en la base cartesiana pero las componentes se pueden quedar en coordenadas cilíndricas y realizar el laplaciano en dichas coordenadas. Sabemos que:
Por lo que el campo queda de la siguiente manera:
Aplicamos el laplaciano según la fórmula descrita anteriormente. Para ello debemos calcular el laplaciano de u1 y u2 en coordenadas cilíndricas:
Por lo que:
Cambiamos las componentes a coordenadas cilíndricas:
2.3 Obtención de la ecuación diferencial
Igualamos cada componente del vector a cero, y simplificamos, obteniendo así una ecuación diferencial:
2.4 Comprobaciones
El enunciado exige que comprobemos si la ecuación diferencial satisface ciertas condiciones:
- Comprobar que [math] f(\rho) [/math] satisface la siguiente ecuación diferencial:
Nos damos cuenta de que esta ecuación es igual a la que hemos obtenido nosotros, por lo que podemos afirmar que satisface la ecuación diferencial.
- Comprobar que [math] f(\rho) [/math] es solución, siendo [math] f(\rho) [/math]:
Sustituimos [math] f(\rho) [/math] en la ecuación diferencial:
Simplificando resulta [math] 0 = 0 [/math], por lo que [math] f(\rho) [/math] es solución.
2.5 Determinación de a y b en función de la velocidad
Se nos pide determinar a y b de manera que la velocidad en la frontera del fluido coincida con la de los cilindros interior y exterior. De esta manera, podemos determinar que:
Resolvemos el sistema, resultando:
2.6 Comprobación de la condición de incompresibilidad
Se nos pide que comprobemos la condición de incompresibilidad, es decir, que el agua siempre ocupa el mismo volumen, la cual es:
La divergencia de un campo vectorial en coordenadas cilíndricas viene dada por la siguiente expresión:
Operamos:
Se cumple la condición de incompresibilidad.
3 Representación del campo de velocidades
Suponiendo que, [math] \omega = 1 [/math] y [math] \mu = 1 [/math]:
Sustituimos en la función:
De manera que nuestro campo es:
Representamos:
n=30; % Longitud de los intervalos
u=linspace(1,2,n); % Definición del parámetro u (rho)
v=linspace(0,2*pi,n); % Definición del parámetro v (theta)
[U,V] = meshgrid(u,v); % Matriz de los parámetros
x = U.*cos(V); % Coordenada x (cartesiana)
y = U.*sin(V); % Coordenada y (cartesiana)
fx = -sin(V)* (4/3*(U-1./U)); % Campo vectorial en la dirección de x
fy = cos(V)*(4/3*(U-1./U)); % Campo vectorial en la dirección de y
quiver(x,y,fx,fy); % Dibujo del campo vectorial
4 Representación de las líneas de corriente del campo
Para ello, necesitamos calcular el campo [math] \vec{v} [/math] que en cada punto es ortogonal a [math] \vec{u} [/math].
4.1 Comprobación de irrotacionalidad de [math] \vec{v} [/math]
Comprobamos que, como dice el enunciado, el campo [math] \vec{v} [/math] es irrotacional debido a que la divergencia de [math] \vec{u} [/math] es nula, cosa que ya hemos calculado con anterioridad.
Se comprueba la irrotacionalidad de [math] \vec{v} [/math].
4.2 Cálculo de [math] \psi [/math]
Conocemos que:
Despejamos [math] \psi [/math]:
Calculamos la integral:
4.3 Representación de las líneas de corriente de [math] \vec{u} [/math]
Se representan las líneas de corriente.
h=30; % Definicion del intervalo
u=linspace(1,2,h); % Pertenencia del parametro u [1,2]
v=linspace(0,2*pi,h); % Pertenencia del parametro v [0,2*pi]
[U,V]=meshgrid(u,v); % Matrices de coordenadas de U y V
f = 4/3*(log(U)-(U.^2)./2); % Campo escalar
X=U.*cos(V); % Parametrización
Y=U.*sin(V);
axis([-3,3,-3,3]) % Elección de los ejes
view(2) % Ver la figura desde arriba
contour(X,Y,f,15); % Dibujo de las líneas de nivel
axis([-3,3,-3,3]) % Definición de los ejes del dibujo
colormap(summer)
5 Cálculo de la velocidad de fluido máxima
Para hallar cuándo el módulo de la velocidad del fluido es máximo debemos maximizar el módulo del campo de velocidades. El módulo del campo de velocidades es:
Derivamos [math] |\vec{u}(\rho)| [/math] e igualamos a 0:
Observamos que esta función no posee máximos ni mínimos, de manera que procedemos a analizar en el intervalo en el cual se encuentran nuestros radios [1,2]. Observamos además, que es continua en dicho intervalo, por lo que analizamos en los extremos de este:
Obtenemos que el máximo de dicho intervalo se encuentra en [math] \rho = 2 [/math], lo cuál tiene sentido ya que el módulo de la velocidad será mayor cuanto más cerca nos encontremos del cilindro exterior que se encuentra en movimiento.
a=4/3; % Definición del parámetro a en función de la velocidad angular
b=-a; % Definición del parámetro b en función de la velocidad angular
u=1:0.05:2; % Definición del parámetro u (rho)
v=0:0.05:2*pi; % Definición del parámetro v (theta)
[U,V] = meshgrid(u,v); % Matriz de los parámetros
x = U.*cos(V); % Coordenada x (cartesiana)
y = U.*sin(V); % Coordenada y (cartesiana)
f = a*U+b./U; % Módulo de la velocidad es función del radio
surf(x,y,f); % Dibujo del campo escalar
axis([-3,3,-3,3]) % Definición de los ejes
view(2); % Vista en 2D
En el gráfico siguiente observaremos el comportamiento del módulo de la velocidad en función de ρ.
Para ello, hemos utilizado este programa en MatLab.
x=-10:0.1:10; % Definición de la x (rho)
y= ((4.*x)./3) - (4./(3.*x)); % Ecuación en función de x
plot(x,y); % Dibujo gráfica
ax = gca; % Dibujo de los ejes x e y
ax.XAxisLocation = 'origin';
ax.YAxisLocation = 'origin';
6 Cálculo y dibujo del rotacional de [math] \vec{u} [/math]
6.1 Cálculo de [math] \nabla\times\vec{u} [/math]
El cálculo del rotacional de [math] \vec{u} [/math] viene dado por la siguiente expresión:
Sustituimos la función [math] f(\rho) = \frac{4}{3} \left ( \rho - \frac{1}{\rho} \right ) [/math] en la expresión que acabamos de calcular:
6.2 Cálculo de [math] |\nabla\times\vec{u}| [/math]
6.3 Representación de [math] |\nabla\times\vec{u}| [/math]
En la siguiente imagen se muestra el campo del rotacional calculado junto con el correspondiente programa hecho en MatLab.
h=30; % Longitud de los intervalos
x=linspace(1,2,h); % Definición del parámetro x (rho)
y=linspace(0,2*pi,h); % Definición del parámetro y (theta)
[Mx,My] = meshgrid(x,y); % Matriz de los parámetros
x = Mx.*cos(My); % Coordenada x (cartesiana)
y = Mx.*sin(My); % Coordenada y (cartesiana)
z= zeros(h);
W = ones(n).*(8*w/3); % Campo vectorial en la dirección de y
quiver3(x,y,z,zeros(h),zeros(h),W); % Dibujo del campo vectorial
axis([-3,3,-3,3,-3,3]) % Definición ejes del dibujo
6.4 Máximo de [math] |\nabla\times\vec{u}| [/math]
Llegamos a la conclusión de que debido a que el campo del rotacional es constante, el rotacional será el mismo en todos los puntos.
7 Representación de la temperatura
Sabiendo que la temperatura del fluido viene dada por la expresión [math] T(\rho,\theta) = 1 + \rho^2 sin^2 \theta\cdot e^{−\left ( \rho − \frac{3}{2} \right ) ^2} [/math] se dibuja el campo de temperaturas y las curvas de nivel:
En Matlab hemos utilizado el siguiente programa.
x=1:0.05:2; %Definición de la x (rho)
y=0:0.05:2*pi; %Definicón de la y (teta)
[Mx,My]=meshgrid(x,y); %Matriz de los parámetros
Mz= 1+Mx.^2.*(sin(My.*exp((-(Mx-3/2).^2)))).^2; %Matriz de la z
subplot(1,2,1); %Ventanas
surf(Mx,My,Mz); %Dibujo de la superficie
shading flat %Difuminado
subplot(1,2,2) %Ventana 2
pcolor(Mx,My,Mz); %Proyección en planta
hold on %Mantener ventana
contour(Mx,My,Mz,7,'k') %7 curvas de nivel
hold off
Por último, representamos en una gráfica donde se observa en que punto la temperatura es máxima.
En Matlab hemos utilizado el siguiente programa.
x=1:0.05:2; %Definición de la x (rho)
y=0:0.05:2*pi; %Definicón de la y (teta)
[Mx,My]=meshgrid(x,y); %Matriz de los parámetros
Mz= 1+Mx.^2.*(sin(My.*exp((-(Mx-3/2).^2)))).^2; %Matriz de la z
plot3(Mx,My,Mz); %Dibujo en líneas del campo
8 Gradiente de la temperatura
8.1 Cálculo del gradiente de T
El gradiente de la temperatura se define mediante la siguiente ecuación:
Y [math] T(\rho,\theta) [/math] es:
De manera que:
8.2 Representación del gradiente de T
x=1:0.1:2; %Definición de la x (rho)
y=0:0.1:2*pi; %Definicón de la y (teta)
[Mx,My]=meshgrid(x,y); %Matriz de los parámetros
Mz= 1+Mx.^2.*(sin(My.*exp((-(Mx-3/2).^2)))).^2; %Matriz de la z
[Dx,Dy] = gradient(Mz,x,y); %Gradiente
figure;
%gradiente
quiver(Mx,My,Dx,Dy);
hold off;
8.3 Comprobación de la ortogonalidad del gradiente
x=1:0.1:2; %Definición de la x (rho)
y=0:0.1:2*pi; %Definicón de la y (teta)
[Mx,My]=meshgrid(x,y); %Matriz de los parámetros
Mz= 1+Mx.^2.*(sin(My.*exp((-(Mx-3/2).^2)))).^2; %Matriz de la z
[Dx,Dy] = gradient(Mz,x,y); %Gradiente
figure;
%curvas de nivel
contour(Mx,My,Mz) %Curvas de nivel
hold on
%gradiente
quiver(Mx,My,Dx,Dy); %Dibujar gradiente
hold off;
9 Caudal que circula por la sección longitudinal
Conocemos que el caudal que circula por una superficie cumple la siguiente expresión:
Además conocemos:
La sección longitudinal corresponde con el plano x=0 que parametrizada en coordenadas cilíndricas es:
[math] u \in[1,2] v \in[0,1] [/math] Sustituyendo en la fórmula: [math] \int_S(\frac{4}{3}\left ( \rho - \frac{1}{\rho}\right ) \vec{e}_\theta)\cdot( \vec{e}_\theta)dS = \int_S(\frac{4}{3}\left ( \rho - \frac{1}{\rho}\right )dS = \frac{4}{3} \int_v \int_u (u-\frac{1}{u}) dudv = \frac{4}{3} \int_0^1 dv \int_1^2(u-\frac{1}{u})du= \frac{4}{3}[(2-ln(2))-\frac{1}{2}]= 2-\frac{4}{3}ln(2) [/math]