Documentation of define_sst


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


Cross-Reference Information

This script calls

Listing of script define_sst


cd /home/disk/hayes/dvimont/ccm3.6/data/SR
filin = 'SR_t42x21_sst.nc';
nc = netcdf(filin, 'nowrite');
  lon = nc{'lon'}(:);
  lat = nc{'lat'}(:);
  sst = nc{'SST'}(:);
nc = close(nc);
get_global
define_global
subplot(2,1,1)
     gcont(squeeze(mean(sst)), [-4:2:50]);
     dc
ssta = zeros(64);
clim = 30;
xk = find(lon <= 120);
ssta(:,xk) = (exp(-1*(1/40) * abs(lat)) .* cos(pi/clim * lat)) *...
              exp(-1*((1/4)*(lon(xk)-120)).^2)';
xk = find(lon > 120 & lon < 277.5);
ssta(:,xk) = (exp(-1*(1/40) * abs(lat)) .* cos(pi/clim * lat)) *...
              ones(1, length(xk));
xk = find(lon >= 277.5);
ssta(:,xk) = (exp(-1*(1/40) * abs(lat)) .* cos(pi/clim * lat)) *...
              exp(-1*((1/4)*(lon(xk)-277.5)).^2)';
[ntim, nlat, nlon] = size(sst);
xk = find(lon > 120 & lon < 277.5);
temp1 = reshape(shiftdim(sst(:,:,xk), 2), length(xk), nlat*ntim);
temp2 = sign(cos(pi/clim * lat));
temp2 = ones(ntim,1) * temp2';
temp2 = ones(length(xk), 1) * reshape(temp2, 1, ntim*nlat);
amp = abs(max(temp1 .* temp2));
amp = ones(nlat,1) * amp;
amp = shiftdim(reshape(amp, nlon, ntim, nlat), 1);
amp = reshape(amp - sst, ntim, nlat*nlon);
ssta = amp .* (ones(12, 1) * reshape(abs(ssta), 1, nlat*nlon));
ssta = reshape(ssta, ntim, nlat, nlon);
yk = find(abs(lat) > 60);
ssta(:, yk, :) = zeros(ntim, length(yk), nlon);
sstnew = sst + ssta;
sstnew(find(sst == min(min(min(sst))))) = sst(find(sst == min(min(min(sst)))));
subplot(2,1,2)
     gcont(squeeze(mean(sstnew)), [-4:2:50]);
     dc
subplot(2,1,2)
     gcont(squeeze(mean(sstnew - sst)), [-10:1:10]);
     dc
filin = 'SR_t42x21_sst.nc';
nc = netcdf(filin, 'write');
  nc{'SST'}(:) = sstnew;
nc = close(nc);