Documentation of ml_run_stats


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


Help text

varn = 'psl'
varn = 'tsu'
varn = 'temp';

Cross-Reference Information

This script calls

Listing of script ml_run_stats


clear
lims = [100 300 -60 60];
varn = 'tax';

cd /home/disk/hayes2/dvimont/csiro/data
nc = netcdf(['s' varn '_qm1_0036-0365.nc'], 'nowrite');
  lat = nc{'latitude'}(:);
  lon = nc{'longitude'}(:);
  [xk, yk] = keep_var(lims, lon, lat);

  sst = nc{varn}(:,:,yk,xk);
  sf = nc{varn}.scale_factor(:);
  ao = nc{varn}.add_offset(:);
nc = close(nc);

sst = sst*sf+ao;
[lat, lon, depth, lm] = getll('temp', lims);

%  Average by season, to make this a bit more manageable

[nyr, nmon, nlat, nlon] = size(sst);
sst2 = repmat(NaN, [nyr*nmon nlat nlon]);

for i = 1:nyr;
  tind = 12*(i-1)+[1:12];
  sst2(tind,:,:) = squeeze(sst(i,:,:,:));
end
sst = sst2;
clear sst2

[sst, clim] = annave(sst);

seas = repmat(NaN, [nyr*4-1 nlat nlon]);

for i = 1:(nyr-1);
  for j = 1:4;
    tind = 12*(i-1)+3*(j-1)+[3:5];
    seas(4*(i-1)+j,:,:) = mean(sst(tind,:,:));
  end
end
i = nyr;
for j = 1:3;
  tind = 12*(i-1)+3*(j-1)+[3:5];
  seas(4*(i-1)+j,:,:) = mean(sst(tind,:,:));
end

%  Remove land points

lm2 = ~isnan(lm);
[ntim, nlat, nlon] = size(seas);
for i = 1:ntim;
  seas(i,:,:) = squeeze(seas(i,:,:)) .* lm2;
end

%  Take EOF:

seas2 = reshape(seas, ntim, nlat*nlon);
seas2 = detrend(seas2);
seas2 = reshape(seas2, ntim, nlat, nlon);

seas2 = cosweight(seas2, lat);
kp = find(~isnan(lm));
seas2 = seas2(:, kp);

[lam, lds, pcs, per] = eof_dan(seas2);

cd /home/disk/hayes2/dvimont/csiro/matlab_data/Heat_Content
%save ML_RAW_detrend_SST_eof.mat lam lds pcs per lims kp lat lon
%save ML_seas_sst.mat seas lat lon
%save ML_seas_slp.mat seas_slp lat lon

%  Do some plots

cd /home/disk/hayes2/dvimont/csiro/matlab_data/Heat_Content
load ML_RAW_detrend_SST_eof.mat
load ML_seas_sst.mat 
load ML_seas_slp.mat 
 
[lat, lon, depth, lm] = getll('temp', lims);

reg1 = regress_eof(seas, pcs, 0);
reg2 = regress_eof(seas, pcs(:,2), 0);
reg3 = regress_eof(seas, pcs(:,3), 0);
reg4 = regress_eof(seas, pcs(:,4), 0);

default_global;

figure(1); fo;
subplot(2,2,1);
  gcont(reg1, .1);
  dc2(lm);
subplot(2,2,2);
  gcont(reg2, .1);
  dc2(lm);
subplot(2,2,3);
  gcont(reg3, .1);
  dc2(lm);
subplot(2,2,4);
  gcont(reg4, .1);
  dc2(lm);

reg1 = regress_eof(seas_slp, pcs, 0);
reg2 = regress_eof(seas_slp, pcs(:,2), 0);
reg3 = regress_eof(seas_slp, pcs(:,3), 0);
reg4 = regress_eof(seas_slp, pcs(:,4), 0);

default_global;

figure(2); fo(1);
subplot(2,2,1);
  gcont(reg1, .2);
  dc2(lm);
subplot(2,2,2);
  gcont(reg2, .2);
  dc2(lm);
subplot(2,2,3);
  gcont(reg3, .2);
  dc2(lm);
subplot(2,2,4);
  gcont(reg4, .2);
  dc2(lm);