Documentation of delayed_oscillator


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


Help text

  ctlim = [115 285 -30 30];

Cross-Reference Information

This script calls

Listing of script delayed_oscillator


clear
cd /home/disk/hayes2/dvimont/csiro/data
tim = round(12*[101:1/12:(300+11/12)]+1);
filin = 'temp_M_L1_1000_years_new.nc';
nc = netcdf(filin, 'nowrite');
  lat = nc{'latitude'}(:);
  lon = nc{'longitude'}(:);
  ctlim = [180 230 -5 5];
  [xk, yk] = keep_var(ctlim, lon, lat);

  temp = nc{'temp'}(tim,1,yk,xk);
  mv = nc{'temp'}.missing_value(:);
nc = close(nc);
ct = squeeze(mean2(mean2(shiftdim(temp, 1))));
[ct, tem] = annave(ct);

filin = 'temp_M_L1_1000_years_new.nc';
nc = netcdf(filin, 'nowrite');
  lat = nc{'latitude'}(:);
  lon = nc{'longitude'}(:);

  ctlim = [110 300 -45 45];
%  ctlim = [115 285 -30 30];
  [xk, yk] = keep_var(ctlim, lon, lat);

  temp = nc{'temp'}(tim,1,yk,xk);
  mv = nc{'temp'}.missing_value(:);
nc = close(nc);
temp = squeeze(temp);
[ntim, nlat, nlon] = size(temp);

temp(find(temp == mv)) = NaN * ones(size(find(temp == mv)));
lat = lat(yk); lon = lon(xk);
[temp, clim] = annave(temp);
temp = reshape(temp, ntim, nlat*nlon);

[b, a] = butter(6, 2/(12*8));
ct = ct - filtfilt(b, a, ct);
temp = temp - filtfilt(b, a, temp);

stdct = std(ct);
ct = (ct - mean(ct)) ./ std(ct);

default_global;

%  Regression maps:

cint = .05; clev = [-.4:cint:.4];

figure(2); clf; figure_orient;
for i = 1:8;
  lag = 6*i - 18;
  if lag < 0;
    pat = ct((-1*lag+1):ntim)' * temp(1:(ntim+lag),:) ./ (ntim + lag);
  else
    pat = ct(1:(ntim-lag))' * temp((lag+1):ntim,:) ./ (ntim - lag);
  end

  pat = reshape(pat, nlat, nlon);

  tit = ['Lag = ' num2str(lag)];
  subplot(4,2,i);
    gcont(pat, clev);
    dc
    title([ tit ' Months']);
    if i > 6
      xlabel(['Contour Interval:  ' num2str(cint) ' K std^-^1']);
    end
end
subplot(4,2,3);
  ylabel(['Lagged covariance of L5 Temp. with 10yr LP CT2; years 551-750'])

subplot(4,1,4);
  plot((tim-1)/12, rave(ct, 5), 'k');
  axis([550 750 -4 4]); grid on;
  xlabel(['LPCT2 Time Series:  Surface Temp. averaged between 180-150E, 5S-5N']);
  ylabel(['1 STD = ' num2str(round(stdct*100)/100) ' K']);

cd /home/disk/tao/dvimont/matlab/CSIRO/Plots5