158 Computational Modelling in Hydraulic and Coastal Engineering
zr1=zr1+Dt/Dd*c1*(zr2-zr1);
zn(i,1)=zr1+a*sin(2*pi*k*Dt/T+(i-1)*phi);
end
% Solution over the flow domain;
for j=2:ny-1
for i=2:nx-1
if h(i,j)> 0.1
al=z(i-1,j);
chk=1000;
end
if chk==1000
if h(i-1,j)< 0.1
al=z(i,j)*rf+(1-rf)*zo(i,j);
end
ar=z(i+1,j);
if h(i+1,j)< 0.1
ar=z(i,j)*rf+(1-rf)*zo(i,j);
end
ao=z(i,j+1);
if h(i,j+1)< 0.1
ao=z(i,j)*rf+(1-rf)*zo(i,j);
end
au=z(i,j-1);
if h(i,j-1)< 0.1
au=z(i,j)*rf+(1-rf)*zo(i,j);
end
hr=(h(i+1,j)+h(i,j))/2;
hl=(h(i-1,j)+h(i,j))/2;
ho=(h(i,j+1)+h(i,j))/2;
hu=(h(i,j)+h(i,j-1))/2;
zn(i,j)=z(i,j)*2-zo(i,j)+(Dt/Dd)^2*g*(hr*
(ar-z(i,j))-hl*(z(i,j)-al)+ho*(ao-z(i,j))-hu*(z(i,j)-au));
zn(i,j)=zn(i,j)+ed(i,j)*Dt/
Dd^2*(z(i+1,j)+z(i-1,j)+z(i,j+1)+z(i,j-1)-4*z(i,j)zo(i+1,j)-zo(i-1,j)-zo(i,j+1)-zo(i,j-1)+4*zo(i,j));
if abs(zn(i,j)) < 0.00001
zn(i,j)=0;
end
end
chk=0;
end
end
% Coastline boundary condition;
for i=2:nx-1
if h(i,ny)> 0.1
zn(i,ny)=z(i,ny)+Dt/Dd*sqrt(g*h(i,ny))*(z(i,ny1)-z (i,ny));
end
end
Précédent

- 171/302

Suivant