65 |
% open boundary conditions; |
% open boundary conditions; |
66 |
u0 = .25; |
u0 = .25; |
67 |
s0 = si+1; |
s0 = si+1; |
68 |
|
w0= 1.e-3; |
69 |
|
|
70 |
% create two time slabs for testing |
% create two time slabs for testing |
71 |
uMerid = cat(3,u0*ones(nx,nz),zeros(nx,nz)); |
uMerid = cat(3,u0*ones(nx,nz),u0*ones(nx,nz)); |
72 |
uZonal = cat(3,u0*ones(ny,nz),zeros(ny,nz)); |
uZonal = cat(3,u0*ones(ny,nz), zeros(ny,nz)); |
73 |
sZonal = cat(3,s0*ones(ny,nz),s0*ones(ny,nz)); |
sZonal = cat(3,s0*ones(ny,nz),s0*ones(ny,nz)); |
74 |
|
|
75 |
fid=fopen('OBmeridU.bin','w',ieee); fwrite(fid,uMerid,prec); fclose(fid); |
%- time varying fraction = 1 % of full velocity |
76 |
fid=fopen('OBzonalU.bin','w',ieee); fwrite(fid,uZonal,prec); fclose(fid); |
du=u0*0.01; |
77 |
fid=fopen('OBzonalS.bin','w',ieee); fwrite(fid,sZonal,prec); fclose(fid); |
uWest = cat(3,(u0+du)*ones(ny,nz),(u0-du)*ones(ny,nz)); |
78 |
|
uEast = cat(3,(u0-du)*ones(ny,nz),(u0+du)*ones(ny,nz)); |
79 |
|
|
80 |
|
% to test Non-Hydrostatic OBCS: |
81 |
|
w1=[0:nz-1]*pi/nz; w1=-w0*sin(w1); |
82 |
|
wZonal = cat (3, ones(ny,1)*w1, zeros(ny,nz)); |
83 |
|
|
84 |
|
fid=fopen('OBmeridU.bin','w',ieee); fwrite(fid,uMerid,prec); fclose(fid); |
85 |
|
%fid=fopen('OBzonalU.bin','w',ieee); fwrite(fid,uZonal,prec); fclose(fid); |
86 |
|
fid=fopen('OB_WestU.bin','w',ieee); fwrite(fid,uWest ,prec); fclose(fid); |
87 |
|
fid=fopen('OB_EastU.bin','w',ieee); fwrite(fid,uEast ,prec); fclose(fid); |
88 |
|
fid=fopen('OBzonalS.bin','w',ieee); fwrite(fid,sZonal,prec); fclose(fid); |
89 |
|
fid=fopen('OBzonalW.bin','w',ieee); fwrite(fid,wZonal,prec); fclose(fid); |
90 |
|
|
91 |
%- rbcs mask & restauring tracer field: |
%- rbcs mask & restauring tracer field: |
92 |
msk=ones(nx,ny,nz); |
msk=ones(nx,ny,nz); |