[MITgcm-support] periodic channel

Baylor Fox-Kemper baylor at MIT.EDU
Tue Feb 22 14:21:08 EST 2005


Hi Kelvin and Mike,
   I have a bunch of runs set up like this.  I don't specify anything 
about reentrance, only give a topography file that has depth zero at 
the northernmost gridpoint.  It seems to work fine.
   Cheers,
     -Baylor

Relevant lines from a matlab topography generation program...

%-- Grid: z  These are a number of ways of generating variable vertical 
grid spacing
%dh=[10*ones(1,20), 20, 40, 80, 160, 320, 640];
%dh=[20*ones(1,10), 25, 30, 35, 40, 45, 50, 55, 60, 70, 80, 90, 100, 
120, 140, 160, 180];

dh=5*ones(1,38);  % This gives 5 m resolution at top
for i=21:38
   dh(i)=dh(i-1)*1.1917;   % This stretches out coords toward the bottom
end

zf=-round(cumsum([0 dh])/1)*1;   % Face z points
zf(end)=zf(end)-1; % This makes the last one an even 800 m
dh=-diff(zf);
zc=(zf(1:end-1)+zf(2:end))/2;  % centered z points
nz=length(dh);
H=sum(dh)   %  This ensures that the depth is the sum of the specified 
grid points

% Bathymetry is on Xc, Yc
hh=ones(size(XB));

% Variable Bathymetry  (This gives sloping walls approaching the sides)
hh(:,:)=hh(:,:)-2*max(0,abs(YB/L-1/2)-3/8);

hh(:,end)=0*hh(:,end);


hh=-H*hh;  % This makes the bottom the correct depth

   % This saves to a file that can be opened by the model
fid=fopen('topo_sl.bin','w','b'); fwrite(fid,hh,'real*8'); fclose(fid);


 From the data file, you now need to specify:

# Input datasets
  &PARM05
  bathyFile='topo_sl.bin',
  /

And make sure delR, dx and dy are defined correctly.  This can be done 
with a .bin file or just by specifying delR in the data file, or by 
setting the defaults that are called in ini_parms.F  (I think they are 
dxSpacing and dySpacing )

# Gridding parameters
  &PARM04
  usingCartesianGrid=.TRUE.,
  usingSphericalPolarGrid=.FALSE.,
   delR=  5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     5.0000,
     6.0000,
     7.0000,
     9.0000,
    10.0000,
    12.0000,
    14.0000,
    17.0000,
    20.0000,
    25.0000,
    28.0000,
    35.0000,
    41.0000,
    49.0000,
    58.0000,
    69.0000,
    83.0000,
    99.0000,
   118.0000,
  delXfile='dx_variable.bin',
  delYfile='dy_variable.bin',
  /

For the simple case of a dx, dy cartesian in a specified domain size:
dx=ones(1,nx);                                  % uniform resolution
dx=dx*Lx/sum(dx);
xf=cumsum([0 dx]); % Face x points
xc=(xf(1:end-1)+xf(2:end))/2; % Centered x points

%-- Grid: y
dy_ratio=30; dy_trans=.02; dy_min=100;
yn=(0.5:ny)/ny;
dy=ones(1,ny);                                  % uniform resolution
dy=dy*Ly/sum(dy);
yf=cumsum([0 dy]);  % Face y-points
yc=(yf(1:end-1)+yf(2:end))/2;  %Centered y-points

L=yc(end)-yc(1);	% this takes into account the wall of topography!!!

fid=fopen('dx_variable.bin','w','b'); fwrite(fid,dx,'real*8'); 
fclose(fid);
fid=fopen('dy_variable.bin','w','b'); fwrite(fid,dy,'real*8'); 
fclose(fid);

Cheers,
    -Baylor


On Feb 22, 2005, at 1:48 PM, Mike Spall wrote:

> Hi Kelvin,
>
> My understanding is that if the ocean has nonzero depth at
> i=1 and i=end then the default is periodic boundary
> conditions.  If the ocean depth is zero then it is a closed
> boundary.   You could try a channel calculation with no
> topography on the ends and see if features propagate through.
>
> best regards,
> Mike
>
> -- 
> ==================================================
>
> Michael A. Spall
> Senior Scientist
> Department of Physical Oceanography
> W.H.O.I. MS #21
> 360 Woods Hole Road
> Woods Hole, MA   02543
>
> mspall at whoi.edu
> (508) 289-3342 (office)
> (508) 457-2181 (fax)
>
> =================================================
>
> _______________________________________________
> MITgcm-support mailing list
> MITgcm-support at mitgcm.org
> http://dev.mitgcm.org/mailman/listinfo/mitgcm-support




More information about the MITgcm-support mailing list