% define desired region region_name='Chile'; minlat=-35; maxlat=0; minlon=-90; maxlon=-70; % extract indices for desired region nx=2160; prec='real*4'; gdir='~dmenemen/llc_2160/grid/'; fnam=[gdir 'Depth.data']; [fld fc ix jx] = ... quikread_llc(fnam,nx,1,prec,gdir,minlat,maxlat,minlon,maxlon); quikpcolor(fld') close all % get and save regional fields pn='~dmenemen/llc_2160/MITgcm/run'; pout=['~dmenemen/llc_2160/regions/' region_name '/']; kx=1:90; for fnm={'Salt','Theta','U','V','W'} eval(['mkdir ' pout fnm{1}]) eval(['cd ' pout fnm{1}]) for ts=92160:80:1586400; disp(ts) if (ts<1198080) pin=[pn '_day49_624/']; else pin=[pn '/']; end switch fnm{1} case 'U' fin=[pin 'V.' myint2str(ts,10) '.data']; case 'V' fin=[pin 'U.' myint2str(ts,10) '.data']; otherwise fin=[pin fnm{1} '.' myint2str(ts,10) '.data']; end dy=ts2dte(ts,45,2011,1,17,30); fout=[fnm{1} '_' int2str(length(ix)) 'x' int2str(length(jx)) ... 'x' int2str(length(kx)) '.' dy]; for k=1:length(kx); mydisp(k) if strcmp(fnm{1},'V') fld=-read_llc_fkij(fin,nx,fc,kx(k),ix,jx-1); else fld=read_llc_fkij(fin,nx,fc,kx(k),ix,jx); end writebin(fout,fld,1,'real*4',k-1); end end end % daily averages for fnm={'Salt','Theta','U','V','W'} eval(['mkdir ' pout fnm{1} '_daily']) eval(['cd ' pout fnm{1} '_daily']) for ts=92160:(80*24):1586400 dy=ts2dte(ts,45,2011,1,17,29); disp(dy); fout=[fnm{1} '_' int2str(length(ix)) 'x' int2str(length(jx)) ... 'x' int2str(length(kx)) '.' dy]; fld=0; n=0; for h=0:23, mydisp(h) dy=ts2dte(ts+h*80,45,2011,1,17,30); fin=[pout fnm{1} '/' fnm{1} '_' int2str(length(ix)) 'x' ... int2str(length(jx)) 'x' int2str(length(kx)) '.' dy]; if exist(fin) fld=fld+readbin(fin,[length(ix) length(jx) length(kx)]); n=n+1; else break end end if n==24 writebin(fout,fld/n); else break end end end