Diferencia entre revisiones de «Visualización de campos en fluidos (Grupo C12)»
| Línea 89: | Línea 89: | ||
}} | }} | ||
| − | |||
==== Puntos de velocidad nula y velocidad máxima ==== | ==== Puntos de velocidad nula y velocidad máxima ==== | ||
| Línea 146: | Línea 145: | ||
== Campo de temperatura == | == Campo de temperatura == | ||
| − | + | {{matlab|codigo= | |
| − | + | f=inline('((x-1).^2)-y.^2','x','y'); %Campo escalar de temperatura | |
| + | fx=inline('2.*(x-1)','x','y'); %derivadas parciales del campo | ||
| + | fy=inline('2.*y','x','y'); | ||
| + | x=0:0.1:4; | ||
| + | y=0:0.1:1; | ||
| + | [X,Y]=meshgrid(x,y); %hacemos el mallado | ||
| + | Z=f(X,Y); | ||
| + | contour(X,Y,Z,20,'k'); %Curvas de nivel | ||
| + | hold on | ||
| + | xx=0:0.25:4; | ||
| + | yy=0:0.1:1; | ||
| + | [XX,YY]=meshgrid(xx,yy) %Representación de las flechas | ||
| + | U=fx(XX,YY); | ||
| + | V=fy(XX,YY); | ||
| + | quiver(XX,YY,U,V) | ||
| + | axis equal | ||
| + | }} | ||
{{ Beta }} | {{ Beta }} | ||
[[Categoría:Teoría de Campos]] | [[Categoría:Teoría de Campos]] | ||
[[Categoría:Trabajos 2013-14]] | [[Categoría:Trabajos 2013-14]] | ||
Revisión del 18:17 9 dic 2013
Contenido
Las ecuaciones de Navier-Stokes son un conjunto de ecuaciones que describen el movimiento de fluidos. Con ellas se pueden analizar corrientes oceánicas, flujo alrededor de aviones o vehículos o cualquier otro fluido newtoniano presente en la atmósfera de la Tierra. Estas ecuaciones son en derivadas parciales no lineales, y por ello no se tiene solución para las mismas. La mayoría de las veces no se pueden usar analíticamente, salvo ciertos tipos de flujo y situaciones muy concretas, y se tiene que llevar a cabo un análisis numérico para obtener una solución aproximada.
Las ecuaciones de Navier-Stokes para un fluido son la estacionaria y la condición de incompresibilidad, que se comprueban a continuación
Siendo $\vec{u}$ la velocidad del fluido y p la presión del mismo.
Sea un fluido con velocidad $\vec{u}$(x,y)=u_1(x,y)$\vec{i}$+u_2(x,y)$\vec{j}$=y*(1-y)\frac{p_1-p_2}{2μ}
1.1 Ecuación estacionaria
Veamos el fluido satisface la ecuación de Navier-Stokes estacionaria
Para poder operar analíticamente pasamos la expresión a lenguaje indicial:
OBSERVACIÓN: Al trabajar en coordenadas cartesianas las componentes contravariantes y covariantes coinciden. Ahora pasamos la expresión a matrices:
1.2 Condición de incompresibilidad
Continuemos la comprobación de las ecuaciones de Navier-Stokes viendo que se trata de un fluido incompresible, es decir, que ni se expande ni se contrae. Para ello debemos comprobar, como ya antes se ha mencionado:
La divergencia de $\vec{u}$ se define como:
2 Campo de presiones y campo de velocidades
Para el estudio de los campos de presiones y velocidades, consideramos el flujo del fluido a través de un canal con paredes rectas de dimensiones 1mx4m.
Trabajaremos en el plano con coordenadas cartesianas. Empezamos definiendo un mallado de ejes [0,4]x[-1,2] y dentro de ellos el fluido que ocupa el rectángulo [0,4]x[0,1], simulando el canal. El codigo matlab para realizarlo es el siguiente
x=0:0.1:4; %Mallado en el intervalo [0,4]x[0,1] con longitud de paso de 0,1
y=0:0.1:1;
[xx,yy]=meshgrid(x,y); %Hacemos el mallado
mesh(xx,yy,xx*0)
axis([0,4,-1,2]) %Definimos los ejes
2.1 Campo de presiones
Veamos el campo de presiones del fluido:
Tomando [math] p_{1}=2[/math], [math] p_{2}=1[/math] y [math] \mu=1[/math] los campos de presiones y velocidades que resultan:
%Dibujo del campo
x=0:0.1:4; %Mallado en el intervalo [0,4]x[0,1] con longitud de paso de 0,1
y=0:0.1:1;
[xx,yy]=meshgrid(x,y);
%Sólido antes de desplazarse
figure(1);
subplot(1,2,1)
p= 3 - xx;
surf(xx,yy,p)
%axis([0,4,-1,2])
figure(2)
subplot(1,2,1)
p=3-xx;
surf(xx,yy,p)
axis([0,4,-1,2])El campo de presiones viene representado por una ecuación, la cual sólo depende de la variable x, lo que nos conduce a afirmar que para todo valor de y arbitrario, la presión depende de x exclusivamente. Esto explica y da sentido a nuestras gráficas ya que la zona de color rojo nos indica altas presiones al ser los valores de x próximos a cero, y alcanzar la función máximos valores para cualquier valor de y. A medida que aumentamos los valores de x la presión disminuye y alcanza ese tono azul.
Para obtener la gráfica en 2D simplemente proyectamos.
2.2 Campo de velocidades
%visualización del campo de velocidades
x=0:0.5:4; %Mallado en x
y=0:0.1:1; %Mallado en y
[xx,yy]=meshgrid (x,y);
ux=1/2.*(yy-yy.^2);
uy=0.*xx
figure(1)
quiver(xx,yy,ux,uy)
2.2.1 Puntos de velocidad nula y velocidad máxima
%Dibujo del campo
x=0:0.1:4; %Mallado en el intervalo [0,4]x[0,1] con longitud de paso de 0,1
y=0:0.1:1;
[xx,yy]=meshgrid(x,y);
%Sólido antes de desplazarse
figure(1);
subplot(1,2,1)
mesh(xx,yy,0*xx)
axis([0,4,-1,2])
%Sólido después de desplazarse
subplot(1,2,2)
ux=(1/2)*(yy.*(1-yy));
uy=0*xx;
mesh(xx+ux,yy+uy,0*xx)
axis([0,4,-1,2])
2.2.2 Líneas de corriente
Siendo $\vec{u}$ un campo con potencial escalar Ψ, el campo es ortogonal a las superficies equipotenciales en cada punto, es decir, el campo es ortogonal al plano tangente a las superficies equipotenciales. En el caso tratado, al estar en $\mathbb{R^2}$ , las superficies equipotenciales pasarán a ser líneas equipotenciales y se definirán como la intersección entre la superficie equipotencial y el plano en el que se trabaja. Las líneas de corriente $\vec{v}$, que son tangentes al campo $\vec{u}$, se pueden definir como las líneas equipotenciales de un campo ortogonal al mismo
[math] \vec{v}=\vec{k}\times \vec{u} = \displaystyle\frac{y(1-y)(p_1-p_2)}{n}\vec{j}[/math]
Considerando
[math]\vec{v}: Ω\subset\mathbb{R^2}\longrightarrow\mathbb{R^2}[/math]
[math](x,y)\longrightarrow\vec{v}(x,y)=\displaystyle\frac{y(1-y)(p_1-p_2)}{n}\vec{j}[/math]
[math]\existsΨ: \mathbb{R^2}\longrightarrow\mathbb{R}[/math]
[math]\nablaΨ\longrightarrow\vec{v}(x,y)[/math]
[math]
\left .
\begin{matrix}
\frac{\partial Ψ}{\partial x}=u_1(x,y) \\
\frac{\partial Ψ}{\partial y}=u_2(x,y)
\end{matrix}
\right \}[/math]
Del sistema de ecuaciones diferenciales se deduce el potencial Ψ
[math]Ψ=(1-x)(y-y^2)\frac{p_1-p_2}{2μ}+C[/math]
2.2.3 Rotacional
3 Campo de temperatura
f=inline('((x-1).^2)-y.^2','x','y'); %Campo escalar de temperatura
fx=inline('2.*(x-1)','x','y'); %derivadas parciales del campo
fy=inline('2.*y','x','y');
x=0:0.1:4;
y=0:0.1:1;
[X,Y]=meshgrid(x,y); %hacemos el mallado
Z=f(X,Y);
contour(X,Y,Z,20,'k'); %Curvas de nivel
hold on
xx=0:0.25:4;
yy=0:0.1:1;
[XX,YY]=meshgrid(xx,yy) %Representación de las flechas
U=fx(XX,YY);
V=fy(XX,YY);
quiver(XX,YY,U,V)
axis equal| |