Documentation of eq_tend_terms2


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


Help text

  Load PCS:

Cross-Reference Information

This script calls

Listing of script eq_tend_terms2


clear

cd /home/disk/hayes2/dvimont/csiro/matlab_data/Heat_Content
load LP10_detrend_L1-7_yr101-1000.mat
pcs = -1*pcs;

lev = 1:3;
lims = [178 272 -3 3]; 
nfrm = -15:15;
tim = 101:1000;

cd ~/matlab/CSIRO/Heat/Old_routines
   [utem, vtem, lat_out, lon_out, depth_out] = ...
           get_ubar_gradtprime(pcs, lims, nfrm, tim, lev);
   ubtp13 = squeeze(mean(utem));
   vbtp13 = squeeze(mean(vtem));

   [utem, vtem, lat_out, lon_out, depth_out] = ...
           get_uprime_gradtbar(pcs, lims, nfrm, tim, lev);
   uptb13 = squeeze(mean(utem));
   vptb13 = squeeze(mean(vtem));

   [wtem, lat_out, lon_out] = ...
           get_wbar_dtprimedz(pcs, lims, nfrm, tim, lev);
   wbtp13 = squeeze(mean2(mean2(shiftdim(wtem, 1))))';

   [wtem, lat_out, lon_out] = ...
           get_wprime_dtbardz(pcs, lims, nfrm, tim, lev);
   wptb13 = squeeze(mean2(mean2(shiftdim(wtem, 1))))';

   tim2 = 100:1000; ntim = length(tim2);
   hc13 = getheat(lev, tim2, lims);
   dhc13dt = (hc13(3:ntim,:,:) - hc13(1:(ntim-2),:,:)) / (2*3600*24*365);
   hc13 = hc13(2:ntim,:,:); ntim = length(tim);
   hc13 = regress_eof(hc13, pcs, nfrm);
   dhc13dt = regress_eof(dhc13dt, pcs(1:(ntim-1), :), nfrm);
   hc13 = squeeze(mean2(mean2(shiftdim(hc13, 1))))';
   dhc13dt = squeeze(mean2(mean2(shiftdim(dhc13dt, 1))))';

   hflx = getnc('heat', lims, 1, tim);
   hflx = regress_eof(hflx, pcs, nfrm);
   hflx = squeeze(mean2(mean2(shiftdim(hflx, 1))))';

%  Plot the data;

ubtp = 1*(ubtp13 + vbtp13 + wbtp13);
uptb = 1*(uptb13 + vptb13 + wptb13);

figure(1);
subplot(2,1,1);
  h1 = plot(...
       nfrm, ubtp, '*-k', ...
       nfrm, uptb, 'o-k', ...
       nfrm, -hflx, 'v-k', ...
       nfrm, -dhc13dt, 'd--k', ...
       nfrm, -1.5e-8*hc13, '-k', ...
       nfrm, -0.4e2*taux, 'x--k');
  axis([-12 12 -2 1.5]);
  set(h1(5:6), 'linewidth', 2)
  grid on
  xlabel('Lag (in years)');
  ylabel('W m^-^2');
  title('0-80m Integrated Heat Content Anomaly Tendency Terms');
  set(gca, 'XTick', -20:2:20);
  legend(h1, 'Ubar Grad(T'')', 'U'' Grad(Tbar)', 'Net Heat Flux',...
             'dHC/dt', 'HC (scaled)', 'Zonal Wind Stress');

%  Get lower layer

cd ~/matlab/CSIRO/Heat/Old_routines

lev = 1:7;
   [utem, vtem, lat_out, lon_out, depth_out] = ...
           get_ubar_gradtprime(pcs, lims, nfrm, tim, lev);
   ubtp17 = squeeze(mean(utem));
   vbtp17 = squeeze(mean(vtem));

   [utem, vtem, lat_out, lon_out, depth_out] = ...
           get_uprime_gradtbar(pcs, lims, nfrm, tim, lev);
   uptb17 = squeeze(mean(utem));
   vptb17 = squeeze(mean(vtem));

   [wtem, lat_out, lon_out] = ...
           get_wbar_dtprimedz(pcs, lims, nfrm, tim, lev);
   wbtp17 = squeeze(mean2(mean2(shiftdim(wtem, 1))))';

   [wtem, lat_out, lon_out] = ...
           get_wprime_dtbardz(pcs, lims, nfrm, tim, lev);
   wptb17 = squeeze(mean2(mean2(shiftdim(wtem, 1))))';

   tim2 = 100:1000; ntim = length(tim2);
   hc17 = getheat(lev, tim2, lims);
   dhc17dt = (hc17(3:ntim,:,:) - hc17(1:(ntim-2),:,:)) / (2*3600*24*365);
   hc17 = hc17(2:ntim,:,:); ntim = length(tim);
   hc17 = regress_eof(hc17, pcs, nfrm);
   dhc17dt = regress_eof(dhc17dt, pcs(1:(ntim-1), :), nfrm);
   hc17 = squeeze(mean2(mean2(shiftdim(hc17, 1))))';
   dhc17dt = squeeze(mean2(mean2(shiftdim(dhc17dt, 1))))';


lev = 1:4
   [utem, vtem, lat_out, lon_out, depth_out] = ...
           get_ubar_gradtprime(pcs, lims, nfrm, tim, lev);
   ubtp14 = squeeze(mean(utem));
   vbtp14 = squeeze(mean(vtem));

   [utem, vtem, lat_out, lon_out, depth_out] = ...
           get_uprime_gradtbar(pcs, lims, nfrm, tim, lev);
   uptb14 = squeeze(mean(utem));
   vptb14 = squeeze(mean(vtem));

   [wtem, lat_out, lon_out] = ...
           get_wbar_dtprimedz(pcs, lims, nfrm, tim, lev);
   wbtp14 = squeeze(mean2(mean2(shiftdim(wtem, 1))))';

   [wtem, lat_out, lon_out] = ...
           get_wprime_dtbardz(pcs, lims, nfrm, tim, lev);
   wptb14 = squeeze(mean2(mean2(shiftdim(wtem, 1))))';

   tim2 = 100:1000; ntim = length(tim2);
   hc14 = getheat(lev, tim2, lims);
   dhc14dt = (hc14(3:ntim,:,:) - hc14(1:(ntim-2),:,:)) / (2*3600*24*365);
   hc14 = hc14(2:ntim,:,:); ntim = length(tim);
   hc14 = regress_eof(hc14, pcs, nfrm);
   dhc14dt = regress_eof(dhc14dt, pcs(1:(ntim-1), :), nfrm);
   hc14 = squeeze(mean2(mean2(shiftdim(hc14, 1))))';
   dhc14dt = squeeze(mean2(mean2(shiftdim(dhc14dt, 1))))';

   taux = getnc('taux', [165 210 -3 3], 1, tim);
   taux = regress_eof(taux, pcs, nfrm);
   taux = squeeze(mean2(taux'));

%  Plot lower level

ubtp47 = 1*(ubtp17 + vbtp17 + wbtp17) - 1*(ubtp13 + vbtp13 + wbtp13);
uptb47 = 1*(uptb17 + vptb17 + wptb17) - 1*(uptb13 + vptb13 + wptb13);
hc47 = hc17 - hc13;
dhc47dt = dhc17dt - dhc13dt;

subplot(2,1,2);
  h1 = plot(...
       nfrm, ubtp47, '*-k', ...
       nfrm, uptb47, 'o-k', ...
       nfrm, -dhc47dt, 'd--k', ...
       nfrm, -1.5e-8*hc47, '-k', ...
       nfrm, -0.5e2*taux, 'x--k');
  axis([-12 12 -1.5 2]);
  set(h1(4:5), 'linewidth', 2);
  grid on
  xlabel('Lag (in years)');
  ylabel('W m^-^2');
  title('80-270m Integrated Heat Content Anomaly Tendency Terms');
  set(gca, 'XTick', -20:2:20);
  legend(h1, 'Ubar Grad(T'')', 'U'' Grad(Tbar)',...
             'dHC/dt', 'HC (scaled)', 'Zonal Wind Stress');

cd /home/disk/tao/dvimont/matlab/CSIRO/Heat/GRL_Figs



%  Plot all the terms

clear
cd ~/matlab/CSIRO/Thesis/Data
load LP10_eq_terms.mat

ubtp47 = ubtp17 - ubtp13;
vbtp47 = ubtp17 - vbtp13;
wbtp47 = ubtp17 - wbtp13;
uptb47 = uptb17 - uptb13;
vptb47 = vptb17 - vptb13;
wptb47 = wptb17 - wptb13;
hc47 = hc17 - hc13;
dhc47dt = dhc17dt - dhc13dt;

figure(1); figure_landscape(1);

subplot(1,1,1);
  h1 = plot(...
    nfrm, ubtp13, 'x-k', ...       
    nfrm, vbtp13, 'o-k', ...
    nfrm, wbtp13, 'v-k', ...;
    nfrm, uptb13, '*--k', ...
    nfrm, vptb13, 's--k', ...
    nfrm, wptb13, '^--k', ...
    nfrm,  -hflx, '>-.k', ...
    nfrm, -dhc13dt, 'd-.k', ...
    nfrm, -1e-8*hc13, '-k', ...
    nfrm, -35*taux, '--k');
  set(h1(9:10), 'linewidth', 2);
  grid on
  xlabel('Lag (in years)');
  ylabel('W m^-^2');
  title('0-80m Integrated Anomalous Heat Content Tendency Terms');
  axis([-10 10 -2 1.5]);
  legend(h1, 'Ubar dHC''/dx', 'Vbar dHC''/dy', 'Wbar dHC''dz',...
             'U'' dHCbar/dx', 'V'' dHCbardy', 'W'' dHCbardz',...
             'Net Heat Flux', 'dHC''/dt', 'HC (scaled)', 'TAUX (scaled)');

cd /home/disk/tao/dvimont/matlab/CSIRO/Heat/GRL_Figs

figure(2); figure_landscape(1);
  h1 = plot(...
    nfrm, -ubtp47, 'x-k', ...       
    nfrm, -vbtp47, 'o-k', ...
    nfrm, -wbtp47, 'v-k', ...;
    nfrm, -uptb47, '*--k', ...
    nfrm, -vptb47, 's--k', ...
    nfrm, -wptb47, '^--k', ...
    nfrm, dhc47dt, 'd-.k', ...
    nfrm,    1e-8*hc47, '-k', ...;
    nfrm,    35*taux, '--k')
  set(h1(8:9), 'linewidth', 2);
  grid on
  xlabel('Lag (in years)');
  ylabel('W m^-^2');
  title('80-270m Integrated Anomalous Heat Content Tendency Terms');
  axis([-10 10 -1 2]);
  legend(h1, 'Ubar dHC''/dx', 'Vbar dHC''/dy', 'Wbar dHC''dz',...
             'U'' dHCbar/dx', 'V'' dHCbardy', 'W'' dHCbardz',...
             'dHC''/dt', 'HC (scaled)', 'TAUX (scaled)');

cd /home/disk/tao/dvimont/matlab/CSIRO/Heat/GRL_Figs


%  Look at heat content and wind stress only

clear

%  Load PCS:

cd /home/disk/hayes2/dvimont/csiro/matlab_data/Heat_Content
load LP10_detrend_L1-7_yr101-1000.mat
load RAW_detrend_L1-7_EOF_yr101-1000.mat
pcs = -1*pcs;

lev = 1:3;
lims = [178 272 -3 3]; 
nfrm = -25:25;
tim = 101:1000;

hc13 = getheat(1:3, tim, lims);
hc46 = getheat(4:6, tim, lims);
hc79 = getheat(7:9, tim, lims);
sst = getnc('temp', lims, 1, tim);
taux = getnc('taux', [165 210 -3 3], 1, tim);
[lat, lon, depthw] = getll('wl', lims);

[tem, hc13] = regress_eof(hc13, pcs, nfrm);
[tem, hc46] = regress_eof(hc46, pcs, nfrm);
[tem, hc79] = regress_eof(hc79, pcs, nfrm);
[tem, sst] = regress_eof(sst, pcs, nfrm);
[tem, taux] = regress_eof(taux, pcs, nfrm);

hc13 = squeeze(mean(mean(shiftdim(hc13, 1))));
hc46 = squeeze(mean(mean(shiftdim(hc46, 1))));
hc79 = squeeze(mean(mean(shiftdim(hc79, 1))));
sst = squeeze(mean(mean(shiftdim(sst, 1))));
taux = squeeze(mean(taux, 2));

taux2 = 1.8 * taux2 / max(taux2);
sst2 = 1.6 * sst2 / max(sst2);
h13 = 1.4 * h13 / max(h13);
h46 = 1.2 * h46 / max(h46);
h79 = 1.0 * h79 / max(h79);


figure(1); figure_landscape;
h1 = plot(...
   nfrm, hc79, ':k',  ...
   nfrm, hc46, '--k', ...
   nfrm, hc13, '-.k', ...
   nfrm, sst, 'o-k', ...
   nfrm, taux, 'x-k');
axis([-15 15 -1 2])
set(gca, 'XTick', [-20:2:20]);
grid on
title(['Lagged Regression (scaled) of Various Equatorial Indices on PC1 ' ...
       'of 0-270m Heat Content']); 
xlabel('Lag in Years');
ylabel('Scaled Regression Coefficient');
legend(h1, '210-470m Heat Content', '80-210m Heat Content', ...
           '0-80m Heat Content', '12.5m Temperature', ...
           'Zonal Wind Stress')

cd /home/disk/tao/dvimont/matlab/CSIRO/Heat/GRL_Figs



%  Look at each level individually

clear

lev = 1:3;
lims = [178 272 -3 3]; 
nfrm = -25:25;
tim = 101:1000;

%  Get CT index

ct = getnc('temp', [178 272 -6 6], 1, tim);
ct = getheat(1:7, tim, [178 272 -6 6]);
ct = squeeze(mean(mean(ct, 2), 3));
ct = detrend(ct);
[b, a] = butter(6, 2/10);
ct = filtfilt(b, a, ct);
pcs = ct./std(ct);

%  Load PCS:

cd /home/disk/hayes2/dvimont/csiro/matlab_data/Heat_Content
load LP10_detrend_L1-7_yr101-1000.mat
load RAW_detrend_L1-7_EOF_yr101-1000.mat
pcs = -1*pcs;

[lat, lon, depth] = getll('temp', lims);
temp = getnc('temp', lims, 1:10, tim);
temp = squeeze(mean(mean(temp, 3),4));
taux = getnc('taux', [165 210 -3 3], 1, tim);
taux = squeeze(mean(taux, 2));

[b, a] = butter(6, 2/10);
temp = filtfilt(b, a, detrend(temp));
taux = filtfilt(b, a, detrend(taux));

[tem, tcoef] = regress_eof(temp, pcs, nfrm);
[tem, xcoef] = regress_eof(taux, pcs, nfrm);

figure(1); figure_landscape(1);
subplot(1,1,1);
h1 = plot(...
  nfrm, tcoef(:,8), 'v-k', ...
  nfrm, tcoef(:,7), '*-k', ...
  nfrm, tcoef(:,6), '^-k', ...
  nfrm, tcoef(:,5), '<-k', ...
  nfrm, tcoef(:,3), 's-k', ...
  nfrm, tcoef(:,1), 'o-k', ...
  nfrm, xcoef, 'x-k');
set(h1(7), 'linewidth', 2);
axis([-9 7 -.5 1.1]);
grid on
set(gca, 'XTick', [-20:2:20], 'YTick', [-0.5:.25:1]);
title(['Lagged Correlation between EQ Temp at various depths, and PC1 ' ...
       'of 0-270m Heat Content']); 
xlabel('Lag in Years');
ylabel('Correlation Coefficient');
legend(h1, '310m Temp', '240m Temp', '185m Temp', '138m Temp', ...
           '65m Temp', '12.5m Temp', 'Zonal Wind Stress');


cd /home/disk/tao/dvimont/matlab/CSIRO/Heat/GRL_Figs


  nfrm, tcoef(:,9), 'v-k', ...
  nfrm, tcoef(:,2), '<-k', ...
  nfrm, tcoef(:,1), 'o-k', ...