Global Index (short | long) | Local contents | Local Index (short | long)
[pat, clim] = reg_ct(filin, var_nam, lev, endnum);
[pat, clim] = reg_ct(filin, var_nam, lev);
This function calls | This function is called by |
---|---|
function [pat, clim] = reg_ct(filin, var_nam, lev, endnum); curdir = cd; if nargin < 4; endnum = 444; end cd /home/disk/hayes2/dvimont/ccm/ccm3.6/data load ct_gr.mat ctstar = ctstar(37:endnum); %ctstar = ctstar(253:480); cd /home/disk/tao/data/nmc.reanalysis/monthly %cd /home/disk/tao/data/merged_precip %cd /home/disk/tao/data/MSU/monthly %filin = 'prate.mon.mean.nc'; %var_nam = 'prate'; %filin = 'vwnd.mon.mean.nc'; %var_nam = 'vwnd'; %lev = 250; nc = netcdf(filin, 'nowrite'); if lev ~= 0; levs = nc{'level'}(:); lind = find(levs == lev); var = squeeze(nc{var_nam}(37:endnum,lind,:,:)); else var = nc{var_nam}(37:endnum,:,:); % var = nc{var_nam}(1:228,:,:); end lat = nc{'lat'}(:); lon = nc{'lon'}(:); add_offset = nc{var_nam}.add_offset(:); scale_factor = nc{var_nam}.scale_factor(:); nc = close(nc); var = var * scale_factor; var = var + add_offset; get_global; %kp = sort([1:12:228 2:12:228 12:12:228]); kp = sort([12:12:408 1:12:408 2:12:408]); kp = sort([kp 3:12:408 4:12:408 11:12:408]); %kp = sort([1:12:(endnum-36) 2:12:(endnum-36) 12:12:(endnum-36)]); %kp = 1:408; var = var(kp,:,:); [ntimw, nlat, nlon] = size(var); temct = ctstar(kp); i = 0; clear clim for m = 1:3; i = i+1; clim(i,:,:) = mean(var(m:3:ntimw,:,:)); climct(i) = mean(temct(m:3:ntimw)); end x = zeros(ntimw,nlat,nlon); for m = 1:ntimw; l=rem(m-1,3)+1; var(m,:,:) = var(m,:,:) - clim(l,:,:); temct(m) = temct(m) - climct(l); end; %temct = ctstar(kp); %temct = -1*gr(kp); temct = (temct-mean(temct))/std(temct); pat = reshape((temct' * reshape(var, ntimw, nlat*nlon)/ntimw),nlat,nlon); clim = squeeze(mean(clim)); curdir = ['cd ' curdir]; eval(curdir)