You are on page 1of 2

clear all

close all
L=100;
W=30;
h=5;
Uoo=1;
Q=Uoo*W*h;
q=Q/W;

%
dx=1; nx=L/dx+1;
dy=1; ny=W/dy+1;
alpha=(dx/dy)^2;
Lei=20; ie1=Lei/dx+1;
Lef=22; ie2=Lef/dx+1;

Hei=0; je1=Hei/dy+1;
Hef=8; je2=Hef/dy+1;

% definiendo la geometria
for j=1:ny
for i=1:nx
x(i,j)=(i-1)*dx;
y(i,j)=(j-1)*dy;
end
end

A(1:nx,1:ny,1)=0;

kmax=1000;

for k=1:kmax
for j=2:ny-1
for i=2:nx-1
A(i,j,k+1)=((A(i+1,j,k)+A(i-1,j,k)+alpha*(A(i,j+1,k)+A(i,j-1,k)))/
(2*(1+alpha)));
end
end

% condiciones de frontera

%izquierda y derecha
A(1:nx,ny,k+1)=q;
A(1:nx,1,k+1)=0;
% entrada y salida
for j=1:ny
A(1,j,k+1)=(j-1)*q/(ny-1);
A(nx,j,k+1)=(j-1)*q/(ny-1);
end
% en los espigones
for i=ie1:ie2
for j=je1:je2
A(i,j,k+1)=0;
end
end
end

% calculando las velocidades


u(1:nx,1:ny)=0;
v(1:nx,1:ny)=0;

for j=2:ny
for i=2:nx
u(i,j)=(A(i,j,k)-A(i,j-1,k))/dy;
v(i,j)=-(A(i,j,k)-A(i-1,j,k))/dx;
end
end

for j=2:ny
for i=2:nx
u(i,j)=(A(i,j,k)-A(i,j-1,k))/dy;
v(i,j)=-(A(i,j,k)-A(i-1,j,k))/dx;
end
end

Z(1:nx,1:ny,1)=-h;

for t=1:250
for j=2:ny
for i=2:nx
Z(i-1,j-1,t+1)=Z(i-1,j-1,t)+0.1*(1/h*((u(i,j)*dy*Z(i,j,t)-u(i-
1,j)*dy*Z(i-1,j,t))/dx...
+(v(i,j)*dx*Z(i,j,t)-v(i,j-1)*dx*Z(i,j-1,t))/dy));
end
end
end

figure
contour(x,y,A(:,:,kmax-1),20)
axis equal
hold on
quiver(x,y,u,v,1)

figure
contour3(x,y,Z(:,:,250-1),10)
hold on
surf(x,y,Z)

You might also like