/[MITgcm]/MITgcm/verification/exp4/input/gendata.m
ViewVC logotype

Diff of /MITgcm/verification/exp4/input/gendata.m

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.5 by jmc, Wed Oct 7 23:39:38 2009 UTC revision 1.6 by jmc, Tue Apr 6 21:04:45 2010 UTC
# Line 1  Line 1 
1  % This is a matlab script that generates the input data  % This is a matlab script that generates the input data
2    
3    % $Header$
4    % $Name$
5    
6  % Dimensions of grid  % Dimensions of grid
7  nx=80;  nx=80;
8  ny=42;  ny=42;
# Line 22  g=9.81; Line 25  g=9.81;
25  % E.O.S.  % E.O.S.
26  alpha=2.e-4;  alpha=2.e-4;
27    
28  Tz=N^2/(g*alpha)  Tz=N^2/(g*alpha);
29    fprintf(' Tz= %e ;',Tz);
30    
31  dz=H/nz;  dz=H/nz;
32  sprintf('delZ = %d * %7.6g,',nz,dz)  fprintf(' delZ = %d * %7.6g\n',nz,dz);
33    
34  x=(1:nx)*dx;x=x-mean(x);  x=(1:nx)*dx;x=x-mean(x);
35  y=(1:ny)*dx;y=y-mean(y);  y=(1:ny)*dx;y=y-mean(y);
# Line 34  z=-dz/2:-dz:-H; Line 38  z=-dz/2:-dz:-H;
38  [Y,X]=meshgrid(y,x);  [Y,X]=meshgrid(y,x);
39    
40  % Temperature profile  % Temperature profile
41  [sprintf('Tref =') sprintf(' %8.6g,',Tz*z-mean(Tz*z))]  fprintf('Tref ='); fprintf(' %8.6g,',Tz*z-mean(Tz*z)); fprintf('\n');
42    
43  ieee='b';  ieee='b';
44  accuracy='real*8';  prec='real*8';
45    
46  % Gaussian bump  % Gaussian bump
47  h=-H+dh*exp( -(X.^2+Y.^2)/(2*(L^2)) );  h=-H+dh*exp( -(X.^2+Y.^2)/(2*(L^2)) );
48  fid=fopen('topog.bump','w',ieee); fwrite(fid,h,accuracy); fclose(fid);  fid=fopen('topog.bump','w',ieee); fwrite(fid,h,prec); fclose(fid);
49    
50  % $$$ % Side walls + bump  % $$$ % Side walls + bump
51  % $$$ h(:,1)=0;  % $$$ h(:,1)=0;
52  % $$$ h(:,ny)=0;  % $$$ h(:,ny)=0;
53  % $$$ fid=fopen('topog.bumpchannel','w',ieee); fwrite(fid,h,accuracy); fclose(fid);  % $$$ fid=fopen('topog.bumpchannel','w',ieee); fwrite(fid,h,prec); fclose(fid);
54    
55  % $$$ % Simple channel  % $$$ % Simple channel
56  % $$$ h(:,1)=0;  % $$$ h(:,1)=0;
57  % $$$ h(:,2:ny-1)=-H;  % $$$ h(:,2:ny-1)=-H;
58  % $$$ h(:,ny)=0;  % $$$ h(:,ny)=0;
59  % $$$ fid=fopen('topog.channel','w',ieee); fwrite(fid,h,accuracy); fclose(fid);  % $$$ fid=fopen('topog.channel','w',ieee); fwrite(fid,h,prec); fclose(fid);
60    
61  % initial fields for salinity  % initial fields for salinity
62  si = 35;  si = 35;
63  %fid=fopen('S.init','w',ieee); fwrite(fid,si*ones(nx,ny,nz),accuracy); fclose(fid);  %fid=fopen('S.init','w',ieee); fwrite(fid,si*ones(nx,ny,nz),prec); fclose(fid);
64    
65  % open boundary conditions;  % open boundary conditions;
66  u0 = .25;  u0 = .25;
# Line 67  uMerid = cat(3,u0*ones(nx,nz),zeros(nx,n Line 71  uMerid = cat(3,u0*ones(nx,nz),zeros(nx,n
71  uZonal = cat(3,u0*ones(ny,nz),zeros(ny,nz));  uZonal = cat(3,u0*ones(ny,nz),zeros(ny,nz));
72  sZonal = cat(3,s0*ones(ny,nz),s0*ones(ny,nz));  sZonal = cat(3,s0*ones(ny,nz),s0*ones(ny,nz));
73    
74  fid=fopen('OBmeridU.bin','w',ieee); fwrite(fid,uMerid,accuracy); fclose(fid);  fid=fopen('OBmeridU.bin','w',ieee); fwrite(fid,uMerid,prec); fclose(fid);
75  fid=fopen('OBzonalU.bin','w',ieee); fwrite(fid,uZonal,accuracy); fclose(fid);  fid=fopen('OBzonalU.bin','w',ieee); fwrite(fid,uZonal,prec); fclose(fid);
76  fid=fopen('OBzonalS.bin','w',ieee); fwrite(fid,sZonal,accuracy); fclose(fid);  fid=fopen('OBzonalS.bin','w',ieee); fwrite(fid,sZonal,prec); fclose(fid);
77    
78    %- rbcs mask & restauring tracer field:
79    msk=ones(nx,ny,nz);
80    xMx=max(x);
81    shapeX=(x-xMx)/dx;
82    shapeX=exp(shapeX*2/3);
83    
84    [I]=find(shapeX < 5.e-3); fprintf('zero out rbc-mask up to i= %i\n',max(I));
85    shapeX(I)=0.;
86    var=shapeX'*ones(1,ny*nz);
87    fid=fopen('rbcs_mask.bin','w',ieee); fwrite(fid,var,prec); fclose(fid);
88    
89    tr1=(si+s0)/2;
90    var=tr1*ones(nx,ny,nz);
91    fid=fopen('rbcs_Tr1_fld.bin','w',ieee); fwrite(fid,var,prec); fclose(fid);
92    

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.6

  ViewVC Help
Powered by ViewVC 1.1.22