Global Index (short | long) | Local contents | Local Index (short | long)
Get windstress if necessary
| This script calls | |
|---|---|
clear
cd /home/disk/tao/dvimont/matlab/CSIRO/Thesis/Data
load HP10_detrend_L1-7_EOF_yr101-1000.mat
load HP10_hctend_ALL.mat;
load HP10_hflx_terms.mat;
order = ['ubtp'; 'uptb'; 'vbtp'; 'vptb'; 'wbtp'; 'wptb'];
levind = ['13'; '47'];
lims2 = [180 270 -3 3]; tit = 'EQ'; % Equatorial index
lims2 = [135 165 3 10]; tit = 'WSTP'; % WSTP index
lims2 = [120 180 3 10]; tit = 'WSTP'; % WSTP index
lims2 = [180 200 22.5 35]; tit = 'ML COLD'; % WSTP index
lims2 = [145 180 37.5 52.5]; tit = 'ML COLD'; % WSTP index
for j = 1:2;
[lat, lon] = getll('u', lims);
[xk, yk] = keep_var(lims2, lon, lat);
for i = 1:4;
eval(['tem = ' order(i,:) levind(j,:) '(:,yk,xk);']);
if ~iselement(size(tem), 1);
tem = squeeze(mean2(mean2(shiftdim(tem, 1))));
else
tem = squeeze(mean2(squeeze(shiftdim(tem, 1))))';
end
eval([order(i,:) '_' levind(j,:) ' = tem;']);
end
[lat, lon] = getll('wl', lims);
[xk, yk] = keep_var(lims2, lon, lat);
for i = 5:6
eval(['tem = ' order(i,:) levind(j,:) '(:,yk,xk);']);
if ~iselement(size(tem), 1);
tem = squeeze(mean2(mean2(shiftdim(tem, 1))));
else
tem = squeeze(mean2(squeeze(shiftdim(tem, 1))));
end
eval([order(i,:) '_' levind(j,:) ' = tem;']);
end
[lat, lon] = getll('temp', lims);
[xk, yk] = keep_var(lims2, lon, lat);
eval(['tem = dhcdt' levind(j,:) '(:,yk,xk);']);
tem = squeeze(mean2(mean2(shiftdim(tem, 1))));
eval(['dhcdt_' levind(j,:) ' = tem;']);
end
[lat, lon] = getll('temp', lims);
[xk, yk] = keep_var(lims2, lon, lat);
hflx = squeeze(mean2(mean2(shiftdim(hflx_reg(:,yk,xk), 1))));
res_13 = -dhcdt_13 - (ubtp_13+vbtp_13+wbtp_13+uptb_13+vptb_13+wptb_13-hflx);
res_47 = -dhcdt_47 - (ubtp_47+vbtp_47+wbtp_47+uptb_47+vptb_47+wptb_47);
order = ['evp'; 'sgn'; 'hfl'; 'rgn'];
[lat, lon, tem, lm] = getll('temp', lims);
[xk, yk] = keep_var(lims2, lon, lat);
for j = 1:4;
for i = 1:length(lags);
eval([order(j,:) '_reg(i,find(isnan(lm))) = NaN;']);
end
end
for i = 1:4;
eval([order(i,:) ' = squeeze(mean2(mean2(shiftdim(' order(i,:) ...
'_reg(:,yk,xk), 1))));']);
end
hc13 = getheat(lims2, 1:3, tim);
hc47 = getheat(lims2, 4:7, tim);
hc_13 = regress_eof(hc13, pcs, nfrm);
hc_47 = regress_eof(hc47, pcs, nfrm);
hc_13 = squeeze(mean2(mean2(shiftdim(hc_13, 1))));
hc_47 = squeeze(mean2(mean2(shiftdim(hc_47, 1))));
taux = getnc('taux', [150 210 -6 6], 1, tim);
taux = regress_eof(taux, pcs, nfrm);
taux = squeeze(mean2(mean2(shiftdim(taux, 1))));
% Get windstress curl if necessary
[taux, tauy] = getnc('taux', 'tauy', lims2, 1, tim);
[lat, lon] = getll('taux', lims2);
global OMEGA RADIAN; f = 2*OMEGA*cos(RADIAN*lat)*ones(1, length(lon));
taux = regress_eof(taux, pcs, nfrm);
tauy = regress_eof(tauy, pcs, nfrm);
for i = 1:length(nfrm);
tx = squeeze(taux(i,:,:))./f;
ty = squeeze(tauy(i,:,:))./f;
curl(i,:,:) = sph_curl1(tx, ty, lat, lon, 0);
end
curl2 = squeeze(mean2(mean2(shiftdim(curl, 1))))';
%
Plot all the terms
figure(2); figure_landscape(1);
subplot(1,1,1);
h1 = plot(...
nfrm, dhcdt_13, 'd-.k', ...
nfrm, 1e-8*hc_13, '-k', ...
nfrm, hflx, '>-.k', ...
nfrm, -evp, '.-.k', ...
nfrm, -hfl, 'o-.k', ...
nfrm, -rgn, '^-.k', ...
nfrm, -sgn, 'v-.k');
set(h1(2), 'linewidth', 2);
grid on
xlabel('Lag (in years)');
ylabel('W m^-^2');
title(['HP10: ' tit ' 0-270m Integrated Heat Content Tendency Terms']);
axis([-5 5 -3 3]);
set(gca, 'XTick', -20:2:20);
legend(h1, 'dhcdt', 'hc', 'Net', 'latent', 'sensible', 'LW', 'SW');
cd /home/disk/tao/dvimont/matlab/CSIRO/Thesis/Chap2/Plots
figure(3); figure_landscape(1);
subplot(1,1,1);
h1 = plot(...
nfrm, -ubtp_47, 'x-k', ...
nfrm, -vbtp_47, 'o-k', ...
nfrm, -wbtp_47, 'v-k', ...;
nfrm, -uptb_47, '*--k', ...
nfrm, -vptb_47, 's--k', ...
nfrm, -wptb_47, '^--k', ...
nfrm, -res_47, '.:k', ...
nfrm, hflx, '>-.k', ...
nfrm, dhcdt_47, 'd-.k', ...
nfrm, 1e-8*hc_47, '-k', ...
nfrm, -1e4*curl2, 'x--k')
set(h1([10:11]), 'linewidth', 2);
grid on
xlabel('Lag (in years)');
ylabel('W m^-^2');
title(['HP10: ' tit ' 80-270m Integrated Heat Content Tendency Terms']);
axis([-5 5 -3 3]);
set(gca, 'XTick', -20:2:20);
legend(h1, 'Ubar dHC''/dx', 'Vbar dHC''/dy', 'Wbar dHC''dz',...
'U'' dHCbar/dx', 'V'' dHCbardy', 'W'' dHCbardz',...
'Residual', 'HFLX', 'dHC''/dt', 'HC (scaled)', ...
'TAUX (scaled)');
cd /home/disk/tao/dvimont/matlab/CSIRO/Thesis/Chap2/Plots
%17 47 13
% Plot specific terms:
figure(1); figure_orient(1);
spthes(1);
h1 = plot(...
nfrm, dhcdt_13, 'd-.k', ...
nfrm, -wbtp_13, 'v-k', ...
nfrm, -uptb_13, '*--k', ...
nfrm, -wptb_13, '^--k', ...
nfrm, hflx, '>-.k', ...
nfrm, -res_13, '.:k', ...
nfrm, 1e-8*hc_13, '-k', ...
nfrm, 35*taux, 'x--k');
set(h1(6:8), 'linewidth', 2);
grid on
xlabel('Lag (in years)');
ylabel('W m^-^2');
title(['HP10: 0-80m Integrated Equatorial Heat Content Tendency Terms']);
title(['
axis([-5 5 -2.5 2]);
set(gca, 'XTick', -20:20);
% legend(h1, 'dHC''/dt', 'Wbar dHC''dz', 'U'' dHCbar/dx', 'W'' dHCbardz', ...
% 'Net Heat Flux', 'Residual', 'HC (scaled)', 'TAUX (scaled)');
spthes(2);
h1 = plot(...
nfrm, dhcdt_47, 'd-.k', ...
nfrm, -ubtp_47, 'x-k', ...
nfrm, -wbtp_47, 'v-k', ...
nfrm, -uptb_47, '*--k', ...
nfrm, -wptb_47, '^--k', ...
nfrm, -res_47, '.:k', ...
nfrm, 1e-8*hc_47, '-k');
set(h1(6:7), 'linewidth', 2);
grid on
xlabel('Lag (in years)');
ylabel('W m^-^2');
title(['HP10: 80-270m Integrated Equatorial Heat Content Tendency Terms']);
axis([-5 5 -3.5 3.5]);
set(gca, 'XTick', -20:20);
% legend(h1, 'dHC''/dt', 'Ubar dHC''dx', 'Wbar dHC''dz', ...
% 'U'' dHCbar/dx', 'W'' dHCbardz', ...
% 'Residual', 'HC (scaled)');
figure(1); figure_orient(1);
clf
spthes(1);
h1 = plot(...
nfrm, dhcdt_47, 'd-.k', ...
nfrm, -wptb_47, '^--k', ...
nfrm, -res_47, '.:k', ...
nfrm, 1e-8*hc_47, '-k', ...
nfrm, -2e4*curl2, 's--k');
set(h1(3:5), 'linewidth', 2);
grid on
xlabel('Lag (in years)');
ylabel('W m^-^2');
title(['HP10: 80-270m Integrated WSTP Heat Content Tendency Terms']);
axis([-5 5 -3.5 3.5]);
set(gca, 'XTick', -20:20);
% legend(h1, 'dHC''/dt', 'W'' dHCbardz', ...
% 'Residual', 'HC (scaled)', '-1 x CURL(TAU) (scaled)');
cd /home/disk/tao/dvimont/Thesis/Chap3