function [grd, ctl]=ADVOFF_GetGrid_DataStruct(); load KOE_GRD.mat % Compute grid metrix dx and dy radius=6371*1000; % meters grd.dx=earthdist(grd.lon(1,1), grd.lat(1,1), grd.lon(2,1), grd.lat(2,1), radius); grd.dy=earthdist(grd.lon(1,1), grd.lat(1,1), grd.lon(1,2), grd.lat(1,2), radius); return files79=rnt_getfilenames('/nas/edl/OFES_UV_KOE/nc/1979','uv'); ctl=rnt_timectl(files79, 'time', 'd'); files=rnt_getfilenames('/nas/edl/OFES_UV_KOE/nc','uv'); files=[files79; files]; ctl=rnt_timectl(files, 'time', 'd'); [year,month,day]=dates_datenum(ctl.time); ctl.year=year; ctl.month=month; ctl.day=day; save KOE_GRD.mat -APPEND ctl return %---------------------- OLD reference code to access data from IPRC %% Load GRID: user='theme2'; pass='apdrc_best'; ufile='http://theme2:apdrc_best@apdrc.soest.hawaii.edu:80/dods/iprc_esc/OfES/ncep_0.1_global_3day/uvel'; vfile='http://theme2:apdrc_best@apdrc.soest.hawaii.edu:80/dods/iprc_esc/OfES/ncep_0.1_global_3day/vvel'; nc=netcdf(ufile); lon=nc{'lon'}(:)-360; lat=nc{'lat'}(:); [lat,lon]=meshgrid(lat, lon); xlim=[125 165]-360; ylim=[25 50]; [I,J]=rgrd_FindIJ(lon,lat, xlim, ylim); % Define GRD grd.lon=lon(I,J); grd.lat=lat(I,J); mask=perm(nc{'uvel'}(1,1,J,I)); in=find(mask < -10000); mask(:)=1; mask(in)=nan; grd.mask=mask; % load time and adjust timescale time=nc{'time'}(:) + datenum(1,-1,-1); [year,month, day]=dates_datenum(time); time=datenum(year,month,day); grd.time=time; grd.month=month; grd.year=year; grd.day=day; grd.z=nc{'lev'}(:); grd.cstfile='/dods/matlib/rgrd/rgrd_CoastlineWorld.mat'; % Compute grid metrix dx and dy radius=6371*1000; % meters grd.dx=earthdist(grd.lon(1,1), grd.lat(1,1), grd.lon(2,1), grd.lat(2,1), radius); grd.dy=earthdist(grd.lon(1,1), grd.lat(1,1), grd.lon(1,2), grd.lat(1,2), radius); close(nc); load VEL.mat TIME=grd.time(1:10); TIME(1)=datenum(1978,1,1); %% Load VELOCITY [i,j]=size(grd.lon); t=10; U=zeros(i,j,t); V=zeros(i,j,t); ncu=netcdf(ufile); ncv=netcdf(vfile); for it=1:t U(:,:,it)=perm(ncu{'uvel'}(it,1,J,I)).*grd.mask; V(:,:,it)=perm(ncv{'vvel'}(it,1,J,I)).*grd.mask; disp(['Loaded ', datestr(grd.time(it))]); end close(ncu) close(ncv); % Convert to meters * second U=U/100; V=V/100; U(isnan(U))=0; V(isnan(V))=0; % mfig; % clf;rnc_map(U(:,:,1), grd);