Visualización de campos escalares y vectoriales en fluidos. Grupo 11-A

De MateWiki
Saltar a: navegación, buscar

1 INTRODUCCIÓN

Consideramos el flujo de un fluido incompresible a través de una canal con paredes rectas. Para representarlo, usaremos las coordenadas cartesianas. Dibujamos el mallado que representa los puntos interiores del rectangulo [0, 4] × [0, 1] ocupado por un fluido. Fijamos los ejes en la región [0, 4] × [−1, 2].

Para realizar el mallado hemos introducido los siguientes comandos en Octave:

Mallado

x=0:0.5:4;

y=0:0.5:1;

[xx,yy]=meshgrid(x,y);

figure(1)

mesh(xx,yy,0*xx)

axis([0,4,-1,2])

view(2)

2 VISUALIZACIÓN DE CAMPOS DE PRESIONES Y DE VELOCIDADES

2.1 Ecuación de Navier-Stokes y condición de incompresibilidad.

Tenemos el campo escalar de presiones p(x,y)=p1+(p2−p1)(x−1) y el campo vectorial de la velocidad de las partículas del fluido (x,y)=y(1−y)(p1−p2)/(2μ)i

Para comprobar que es un fluido incompresible, la divergencia debe ser 0.

   Como no hay variable “x” la derivada es trivial.

Como cualquier fluido debe satisfacer la ecuación estacionaria de Navier-Stokes.

centro

2.2 Velocidad nula en las paredes.

Por último comprobamos que la velocidad del fluido es nula en las paredes. La velocidad viene dada por:

centro

2.3 Representación de los campos de velocidades y presiones.

Una vez que hemos confirmado que es un fluido incompresible, que verifica la ecuación de Navier y que la velocidad de fluido en las paredes es nula, nos disponemos a representar gráficamente los campos de velocidades y de presiones para p1=2, p2=1 y .


centro

Campo de presiones

Campo de velocidades

x=0:0.1:4;

y=0:0.1:1

[xx,yy]=meshgrid(x,y);

figure (1) f=3-xx

surf(xx,yy,f)

view(2)

Campo de velocidades

Campo de presiones

x=0:0.1:4;

y=0:0.1:1; [xx,yy]=meshgrid(x,y);

figure (2)

fx=(1/2).*(yy-(yy.^2));

fy=0.*xx;

quiver(xx,yy,fx,fy)

axis([0,4,-1,2])

view(2)

3 LÍNEAS DE CORRIENTE

Llegados a este punto, dibujaremos las líneas de corriente del campo  , para ello calculamos el campo   que es ortogonal a   ayudándonos del vector   y utilizando el producto vectorial hallamos el susodicho campo.
centro

Dibujamos las líneas de nivel de la función potencial, que representan las líneas de corriente.

líneas de corriente

x=0:0.1:4

y=0:0.1:1;

[xx,yy]=meshgrid(x,y);

potencial= (1/2).* ((yy.^2/2)-(yy.^3/3) );

contour(xx,yy,potencial)

view(2)

Superponiendo las líneas de corriente con el campo vectorial de la velocidad observamos que se corresponden:

F10.PNG

x=0:0.1:4

y=0:0.1:1;

[xx,yy]=meshgrid(x,y);

potencial= (1/2).* ((yy.^2/2)-(yy.^3/3) );

contour(xx,yy,potencial)

view(2)

hold on

fx=(1/2).*(yy-(yy.^2));

fy=0.*xx;

quiver(xx,yy,fx,fy)

4 VELOCIDAD DEL FLUIDO

Para hallar en qué puntos la velocidad del fluido es máxima derivamos   e igualamos a 0.
F11.PNG

Observamos que esto se anula en y=0,5, por lo que en ese punto la velocidad será máxima.

Velocidad máxima

x=0:0.5:4;

y=0:0.5:1;

[xx,yy]=meshgrid(x,y);

figure(1)

fx=0.5.*(yy.*(1-yy));

fy=0*xx;

quiver(xx,yy,fx,fy);

axis([0,4,-1,2])

view(2)

5 ROTACIONAL

F13.PNG
Rotacional
   x=0:0.1:4; 
     
   y=0:0.1:1; 
          
   [xx,yy]=meshgrid(x,y); 
   s=1/2.*(1-2.*yy) ;
   h=abs(s);
   t=pcolour(xx,yy,h);
  axis([0,4,-1,2])
  view (2) 

6 CAMPO DE TEMPERATURAS

A continuación, realizamos el dibujo del campo de temperaturas dado:
Campo de temperaturas

x=0:0.5:4;

y=0:0.5:1;

[xx,yy]=meshgrid(x,y);

figure(1)

f=(xx-1).^2-(yy.^2);

surf(xx,yy,f);

axis([0,4,-1,2])

view(2)

7 GRADIENTE DE TEMPERATURA

Por ultimo, calculamos el gradiente del campo de temperaturas dado.
Gradiente de temperatura

x=0:0.5:4;

y=0:0.5:1;

[xx,yy]=meshgrid(x,y);

figure(1)

fx=2.*xx-2;

fy=-2.*yy;

quiver(xx,yy,fx,fy);

axis([0,4,-1,2])

view(2)

Obteniendo las curvas de nivel del campo escalar de la temperatura y superponiéndolo con su gradiente, observamos que son perpendiculares.

F17.PNG

x=0:0.1:4;

y=0:0.1:1;

[xx,yy]=meshgrid(x,y)

f=(xx-1).^2-(yy.^2);

contour (xx,yy,f);

hold on

fx=2.*xx-2;

fy=-2.*yy;

quiver(xx,yy,fx,fy);

axis([0,4,-1,2])

view(2)