Documentation of clim_nmc


Global Index (short | long) | Local contents | Local Index (short | long)


Help text

  Note that December corresponds to month 1, and a new year.

Listing of script clim_nmc


clear
wyrs = [1983 1988 1992 1995 1998];
cyrs = [1984 1985 1989 1996 1997];
cd /home/disk/tao/data/olr
filin = 'olr.monthly.7498.nc';
nc = netcdf(filin, 'nowrite');
  lat = nc{'lat'}(:);
  lon = nc{'lon'}(:);
  time = nc{'time'}(96:290);
  olr = nc{'data'}(96:290,:,:);
nc = close(nc);

yr = floor(((time-time(1))+(365+366))/365.25)+1980;
mo = round(((time-time(1)+365+366)/365.25+1980-yr)*12+1);
wyrk = intersect(find(ismember(yr, wyrs)),find(mo == 1));
cyrk = intersect(find(ismember(yr, cyrs)),find(mo == 1));

for i = 1:3
  olr_djf(i,:,:) = mean(olr(1:12:193+i-1,:,:));
  olr_warm(i,:,:) = mean(olr(wyrk+i-1,:,:));
  olr_cold(i,:,:) = mean(olr(cyrk+i-1,:,:));
end

cd /home/disk/tao/dvimont/matlab/CCM/NMC_dat
save olr_clim.mat olr_djf olr_warm olr_cold lat lon
clear olr olr_djf olr_cold lat lon

%  Get UWND climatologies

cd /home/disk/tao/data/nmc.reanalysis/monthly

filin = 'uwnd.mon.mean.nc';
nc = netcdf(filin, 'nowrite');
  lat = nc{'lat'}(:);
  lon = nc{'lon'}(:);
  time = nc{'time'}(288:482);
  u200 = squeeze(nc{'uwnd'}(288:482,8,:,:));
  u500 = squeeze(nc{'uwnd'}(288:482,12,:,:));
  u700 = squeeze(nc{'uwnd'}(288:482,14,:,:));
  u1000 = squeeze(nc{'uwnd'}(288:482,17,:,:));
nc = close(nc);

for i = 1:3
  u200_djf(i,:,:) = mean(u200(1:12:193+i-1,:,:));
  u500_djf(i,:,:) = mean(u500(1:12:193+i-1,:,:));
  u700_djf(i,:,:) = mean(u700(1:12:193+i-1,:,:));
  u1000_djf(i,:,:) = mean(u1000(1:12:193+i-1,:,:));
  u200_warm(i,:,:) = mean(u200(wyrk+i-1,:,:));
  u500_warm(i,:,:) = mean(u500(wyrk+i-1,:,:));
  u700_warm(i,:,:) = mean(u700(wyrk+i-1,:,:));
  u1000_warm(i,:,:) = mean(u1000(wyrk+i-1,:,:));
  u200_cold(i,:,:) = mean(u200(cyrk+i-1,:,:));
  u500_cold(i,:,:) = mean(u500(cyrk+i-1,:,:));
  u700_cold(i,:,:) = mean(u700(cyrk+i-1,:,:));
  u1000_cold(i,:,:) = mean(u1000(cyrk+i-1,:,:));
end;

cd /home/disk/tao/dvimont/matlab/CCM/NMC_dat
save u200_clim.mat u200_djf u200_warm u200_cold lat lon
save u500_clim.mat u500_djf u500_warm u500_cold lat lon
save u700_clim.mat u700_djf u700_warm u700_cold lat lon
save u1000_clim.mat u1000_djf u1000_warm u1000_cold lat lon

clear u200_djf u200_warm u200_cold u200
clear u500_djf u500_warm u500_cold u500
clear u700_djf u700_warm u700_cold u700
clear u1000_djf u1000_warm u1000_cold u1000

%  Get VWND climatologies

cd /home/disk/tao/data/nmc.reanalysis/monthly

filin = 'vwnd.mon.mean.nc';
nc = netcdf(filin, 'nowrite');
  lat = nc{'lat'}(:);
  lon = nc{'lon'}(:);
  time = nc{'time'}(288:482);
  u200 = squeeze(nc{'vwnd'}(288:482,8,:,:));
  u500 = squeeze(nc{'vwnd'}(288:482,12,:,:));
  u700 = squeeze(nc{'vwnd'}(288:482,14,:,:));
  u1000 = squeeze(nc{'vwnd'}(288:482,17,:,:));
nc = close(nc);

for i = 1:3
  v200_djf(i,:,:) = mean(u200(1:12:193+i-1,:,:));
  v500_djf(i,:,:) = mean(u500(1:12:193+i-1,:,:));
  v700_djf(i,:,:) = mean(u700(1:12:193+i-1,:,:));
  v1000_djf(i,:,:) = mean(u1000(1:12:193+i-1,:,:));
  v200_warm(i,:,:) = mean(u200(wyrk+i-1,:,:));
  v500_warm(i,:,:) = mean(u500(wyrk+i-1,:,:));
  v700_warm(i,:,:) = mean(u700(wyrk+i-1,:,:));
  v1000_warm(i,:,:) = mean(u1000(wyrk+i-1,:,:));
  v200_cold(i,:,:) = mean(u200(cyrk+i-1,:,:));
  v500_cold(i,:,:) = mean(u500(cyrk+i-1,:,:));
  v700_cold(i,:,:) = mean(u700(cyrk+i-1,:,:));
  v1000_cold(i,:,:) = mean(u1000(cyrk+i-1,:,:));
end;

cd /home/disk/tao/dvimont/matlab/CCM/NMC_dat
save v200_clim.mat v200_djf v200_warm v200_cold lat lon
save v500_clim.mat v500_djf v500_warm v500_cold lat lon
save v700_clim.mat v700_djf v700_warm v700_cold lat lon
save v1000_clim.mat v1000_djf v1000_warm v1000_cold lat lon

clear v200_djf v200_warm v200_cold u200
clear v500_djf v500_warm v500_cold u500
clear v700_djf v700_warm v700_cold u700
clear v1000_djf v1000_warm v1000_cold u1000

%  Get HGT climatologies

cd /home/disk/tao/data/nmc.reanalysis/monthly

filin = 'hgt.mon.mean.nc';
nc = netcdf(filin, 'nowrite');
  lat = nc{'lat'}(:);
  lon = nc{'lon'}(:);
  time = nc{'time'}(288:482);
  u200 = squeeze(nc{'hgt'}(288:482,8,:,:));
  u500 = squeeze(nc{'hgt'}(288:482,12,:,:));
  u700 = squeeze(nc{'hgt'}(288:482,14,:,:));
  u1000 = squeeze(nc{'hgt'}(288:482,17,:,:));
nc = close(nc);

for i = 1:3
  h200_djf(i,:,:) = mean(u200(1:12:193+i-1,:,:));
  h500_djf(i,:,:) = mean(u500(1:12:193+i-1,:,:));
  h700_djf(i,:,:) = mean(u700(1:12:193+i-1,:,:));
  h1000_djf(i,:,:) = mean(u1000(1:12:193+i-1,:,:));
  h200_warm(i,:,:) = mean(u200(wyrk+i-1,:,:));
  h500_warm(i,:,:) = mean(u500(wyrk+i-1,:,:));
  h700_warm(i,:,:) = mean(u700(wyrk+i-1,:,:));
  h1000_warm(i,:,:) = mean(u1000(wyrk+i-1,:,:));
  h200_cold(i,:,:) = mean(u200(cyrk+i-1,:,:));
  h500_cold(i,:,:) = mean(u500(cyrk+i-1,:,:));
  h700_cold(i,:,:) = mean(u700(cyrk+i-1,:,:));
  h1000_cold(i,:,:) = mean(u1000(cyrk+i-1,:,:));
end;

cd /home/disk/tao/dvimont/matlab/CCM/NMC_dat
save hgt200_clim.mat h200_djf h200_warm h200_cold lat lon
save hgt500_clim.mat h500_djf h500_warm h500_cold lat lon
save hgt700_clim.mat h700_djf h700_warm h700_cold lat lon
save hgt1000_clim.mat h1000_djf h1000_warm h1000_cold lat lon

clear h200_djf h200_warm h200_cold u200
clear h500_djf h500_warm h500_cold u500
clear h700_djf h700_warm h700_cold u700
clear h1000_djf h1000_warm h1000_cold u1000

%  Get SLP data

cd /home/disk/tao/data/nmc.reanalysis/monthly

filin = 'slp.mon.mean.nc';
nc = netcdf(filin, 'nowrite');
  lat = nc{'lat'}(:);
  lon = nc{'lon'}(:);
  time = nc{'time'}(288:482);
  slp = nc{'slp'}(288:482,:,:);
nc = close(nc);

for i = 1:3
  slp_djf(i,:,:) = mean(slp(1:12:193+i-1,:,:));
  slp_warm(i,:,:) = mean(slp(wyrk+i-1,:,:));
  slp_cold(i,:,:) = mean(slp(cyrk+i-1,:,:));
end

cd /home/disk/tao/dvimont/matlab/CCM/NMC_dat
save slp_clim.mat slp_djf slp_warm slp_cold lat lon
clear slp_djf slp_warm slp_cold slp