Global Index (all files) (short | long) | Local Index (files in subdir) (short | long)
Normalized eof routine:
% This assumes that each time series in the matrix 'data' has had the
% time mean removed, and is normalized etc. This could be performed by:
% [data, clim] = annave(data);
% data = cosweight(data, lat);
[ntim, nhpts] = size(data);
c = data * data' / nhpts;
[lamda, pc, per] = eof(c); % lamda = eigenvalue
% pc = PC's
% per = vector containing the percent
% variance explained by each mode.
% Usually only the first few modes are interesting, so take only the
% first 10 or so.
pc10 = pc(:,1:10) .* (ones(ntim, 1) * (1./std(pc(:,1:10))));
% The above statement divides each of the first 10 PC's by its std.
% Now, get loadings:
loadings = pc10' * data ./ ntim;
% These loadings should be in, say K / std(pc). The PC's are all
% normalized, so that they should all have about the same amplitude.