Re: EOF function in NCL

From: Dennis Shea <shea_at_nyahnyahspammersnyahnyah>
Date: Sun Nov 25 2012 - 08:27:59 MST

[1] Use only 'eofunc'.

[2] As noted in the documentation 'eofcov' and 'eofcor'
     are "deprecated" which, in this context, means outdated.
     They are made available for backward compatibility.

[3] As noted in the documentation, 'eofunc' uses the covariance
     matrix by default.

[snip]
optEOF = True
optEOF@jopt = 1

optEOF@jopt = 1: use correlation matrix to compute EOFs.
             The default is to use a covariance matrix (optEOF@jopt = 0).
[snip]

[4] There are likely to be small differences between eofunc and eofcov.
     As noted in the 'eofunc' documentation:

[snip]
      This function differs from the deprecated eofcov and eofcor
functions in that it may transpose the input data array prior to
computing the EOFs. If data is transposed, a linear transformation is
applied to the EOFs of the transposed array prior to returning. The
reason for using this approach is computational efficiency.
[snip]

      If the input matrix (data) is (nlat,mlon,ntime) => SxT
      where S is the size of nlatxmlon, the old 'eofcov' computed a
      SxS covariance matrix regardless of the size of S or T.
      In most common applications S>>T so this was inefficient.

      eofunc checks the size of S and T if S is smaller than T
      it computes the SxS covariance matrix; if T is smaller
      a linear transformation is performed and the TxT covariance
      matrix will be created. Then another transformation is performed
      to put back into the original space.

      The results between eofunc and eofcov should be of little
      practical difference.

Good luck

On 11/24/12 9:02 PM, 163 wrote:
> Hi, Mr. Shea:
> When I do EOF analysis, I recognized there are three main
> functions: "eofunc", "eofcov" and "eofcor". After referring some
> materials, I know that if the input
> data is anomaly, then covariance matrix will be used, if the input data
> is standardized, then the correlation matrix will be used.
> In my work, the three functions are all used, while only the
> eofunc and eofcov can work, but with a little difference.
> It is said in the website that the eofcov use covariance matrix,
> but what matrix used in eofunc ?
> And I know that EOF functions in the NCL software can only use
> anomaly data, so is it means that eofcor can never be used in NCL. In
> this case, eofunc seems
> to use anomalies, but why the results are different with that from eofcov?
> Yipeng Guo
> ------------------------------------------------------------------------
> 163
>
>
> _______________________________________________
> ncl-talk mailing list
> List instructions, subscriber options, unsubscribe:
> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>
_______________________________________________
ncl-talk mailing list
List instructions, subscriber options, unsubscribe:
http://mailman.ucar.edu/mailman/listinfo/ncl-talk
Received on Sun Nov 25 08:28:10 2012

This archive was generated by hypermail 2.1.8 : Fri Dec 07 2012 - 13:30:06 MST