Global Index (short | long) | Local contents | Local Index (short | long)
Look at the point by point correlation maps between SST and different components of the heat flux.
This script calls | |
---|---|
clean % Load data lims = [89 302 -20 62]; tim = 1:636; cd /home/disk/tao/data/nmc.reanalysis/monthly [sst, lat, lon] = getnc2('skt.mon.mean.nc', 'skt', lims, 1, tim); [lht, lat, lon] = getnc2('lhtfl.mon.mean.nc', 'lhtfl', lims, 1, tim); [sht, lat, lon] = getnc2('shtfl.mon.mean.48jul01.nc', 'shtfl', ... lims, 1, tim); [swf, lat, lon] = getnc2('nswrs.mon.mean.48dec00.nc', 'nswrs', ... lims, 1, tim); [lwf, lat, lon] = getnc2('nlwrs.mon.mean.48dec00.nc', 'nlwrs', ... lims, 1, tim); [ntim, nlat, nlon] = size(sst); sst2 = repmat(NaN, [ntim, nlat/2, nlon/3]); lht2 = sst2; sht2 = sst2; swf2 = sst2; lwf2 = sst2; for i = 1:(nlat/2); ind1 = 2*(i-1)+[1:2]; disp(['Latitude: ' num2str(lat(2*i))]) for j = 1:(nlon/3); ind2 = 3*(j-1)+[1:3]; sst2(:,i,j) = mean(mean(shiftdim(sst(:,ind1,ind2), 1))); lht2(:,i,j) = mean(mean(shiftdim(lht(:,ind1,ind2), 1))); sht2(:,i,j) = mean(mean(shiftdim(sht(:,ind1,ind2), 1))); swf2(:,i,j) = mean(mean(shiftdim(swf(:,ind1,ind2), 1))); lwf2(:,i,j) = mean(mean(shiftdim(lwf(:,ind1,ind2), 1))); end end for i = 1:(nlat/2); ind1 = 2*(i-1)+[1:2]; lat2(i) = mean(lat(ind1)); end for j = 1:(nlon/3); ind2 = 3*(j-1)+[1:3]; lon2(j) = mean(lon(ind2)); end % shrink data [sst, clim1] = annave(sst2); [lht, clim2] = annave(lht2); [sht, clim3] = annave(sht2); [swf, clim4] = annave(swf2); [lwf, clim5] = annave(lwf2); % Get dsst dsst = sst(3:636,:,:)-sst(1:634,:,:); % Get correlations [ntim, nlat, nlon] = size(sst); ntim2 = ntim-2; tim1 = sort([10:12:ntim2 11:12:ntim2 12:12:ntim2 13:12:ntim2 ... 14:12:ntim2 15:12:ntim2]); tim2 = tim1+1; %tim1 = 1:634; %tim2 = 2:635; c1pat = repmat(NaN, [4 nlat, nlon]); r1pat = c1pat; for i = 1:nlat; disp(['Latitude: ' num2str(lat2(i))]); for j = 1:nlon; [r1pat(1,i,j), c1pat(1,i,j)] = regress_eof(dsst(tim1,i,j), ... lht(tim2,i,j), 0); [r1pat(2,i,j), c1pat(2,i,j)] = regress_eof(dsst(tim1,i,j), ... sht(tim2,i,j), 0); [r1pat(3,i,j), c1pat(3,i,j)] = regress_eof(dsst(tim1,i,j), ... swf(tim2,i,j), 0); [r1pat(4,i,j), c1pat(4,i,j)] = regress_eof(dsst(tim1,i,j), ... lwf(tim2,i,j), 0); end end % Plot results cd ~/matlab/Wallace; link_toolboxes; figure_tall(1); global_axes(6, 3, .5, .5, 1.5); global_latlon(lat2, lon2, [100 300 -20 60]); sc = 0.5; num = 1; subplot2(1,1); cla map_axis('giso'); [c, h] = map_contour_pn(r1pat(num,:,:), .1); hold on; h2 = map_surface(c1pat(num,:,:), -0.5); hold off; caxis([-1 1]*sc); lm = fill_landmap('over', 0.5*[1 1 1]); set(lm, 'facecolor', 'none'); gridm on; framem; set(gca, 'visible', 'off'); cb = colorbar2('vert'); num = 2; subplot2(1,2); cla map_axis('giso'); [c, h] = map_contour_pn(r1pat(num,:,:), .1); hold on; h2 = map_surface(c1pat(num,:,:), -0.5); hold off; caxis([-1 1]*sc); lm = fill_landmap('over', 0.5*[1 1 1]); set(lm, 'facecolor', 'none'); gridm on; framem; set(gca, 'visible', 'off'); cb = colorbar2('vert'); figure_tall(2); global_axes(6, 3, .5, .5, 1.5); global_latlon(lat2, lon2, [100 300 -20 60]); num = 3; subplot2(1,1); cla map_axis('giso'); [c, h] = map_contour_pn(r1pat(num,:,:), .1); hold on; h2 = map_surface(c1pat(num,:,:), -0.5); hold off; caxis([-1 1]*sc); lm = fill_landmap('over', 0.5*[1 1 1]); set(lm, 'facecolor', 'none'); gridm on; framem; set(gca, 'visible', 'off'); cb = colorbar2('vert'); num = 4; subplot2(1,2); cla map_axis('giso'); [c, h] = map_contour_pn(r1pat(num,:,:), .1); hold on; h2 = map_surface(c1pat(num,:,:), -0.5); hold off; caxis([-1 1]*sc); lm = fill_landmap('over', 0.5*[1 1 1]); set(lm, 'facecolor', 'none'); gridm on; framem; set(gca, 'visible', 'off'); cb = colorbar2('vert');