Re: ncl-talk Digest, Vol 16, eofunc_varimax

From: Saji Hameed (saji AT hawaii.edu)
Date: Thu Mar 17 2005 - 13:58:38 MST

  • Next message: Cathryn Meyer: "accounting for surface area differences when averaging"

    Mike,

    Jing has given you part of the answer. I will try to fill up what she
    has not mentioned.

    I have not tried this, but i have no reason to believe why it should not
    work.

     1. eofunc_ts should be able to return your time series after varimax
    rotation, the same way it does return the time series for the unrotated
    eofs. I guess this function regresses (evec) on (data) to obtain the
    time series.

     2. You can always calculate the percentage variance explained by a
    pattern once you have (evec) and its corresponding time series and of
    course the data.

         a- sum up the variance in the (data) over the same domain that you
            had specified to the eof- functions.
     
         b- calculate the variance associated with each (evec) pattern.
            To do this multiply evec with the time series, find the variance
             and sum it up over the domain

        c - (b/a)*100 is the percentage variance associated with each
             pattern.

     
    A grads script that can do varimax can be found at

    http://mpi-web.dkrz.de/en/misc/software/grads/varimax.gs

    saji

    Saji N. Hameed, Assistant Researcher,
    IPRC-SOEST, 2525 Correa Road, Univ. of Hawaii,
    Honolulu, HI 96822, U.S.A
    http://iprc.soest.hawaii.edu/~saji
    tel.: (808) 956 9534 , fax.: (808) 956 9425

    ----- Original Message -----
    From: ncl-talk-request@ucar.edu
    Date: Thursday, March 17, 2005 9:02 am
    Subject: ncl-talk Digest, Vol 16, Issue 12

    > Send ncl-talk mailing list submissions to
    > ncl-talk@ucar.edu
    >
    > To subscribe or unsubscribe via the World Wide Web, visit
    > http://mailman.ucar.edu/mailman/listinfo/ncl-talk
    > or, via email, send a message with subject or body 'help' to
    > ncl-talk-request@ucar.edu
    >
    > You can reach the person managing the list at
    > ncl-talk-owner@ucar.edu
    >
    > When replying, please edit your Subject line so it is more specific
    > than "Re: Contents of ncl-talk digest..."
    >
    >
    > Today's Topics:
    >
    > 1. Re: ncl-talk Digest, Vol 16, Issue 11 (Mike Notaro)
    > 2. Re: Re: ncl-talk Digest, Vol 16, Issue 11 (Jing)
    > 3. Re: ncl-talk Digest, Vol 16, Issue 11 (Jing)
    >
    >
    > --------------------------------------------------------------------
    > --
    >
    > Message: 1
    > Date: Wed, 16 Mar 2005 13:58:07 -0600
    > From: Mike Notaro <mnotaro@wisc.edu>
    > Subject: Re: ncl-talk Digest, Vol 16, Issue 11
    > To: yangjing@mail.iap.ac.cn, ncl-talk@ucar.edu
    > Message-ID: <p06020400be5e3ed6c804@[144.92.130.73]>
    > Content-Type: text/plain; charset="us-ascii"
    >
    > Thanks for your response Jing. Unless I am misreading the website,
    > only unrotated eof provides percent variance and time series.
    > Under the description of eofunc_varimax, it states that it doesn't
    > return the percent variance. But I am not sure about the time series.
    > Without the % variance and time series, NCL still can not be used
    > for rotated eof.
    >
    > Does anyone know of a script in matlab/ferret/grads/etc
    > that easily performs rotated eof? It is a very important stats
    > tool but so hard to find a code to perform it. Particularly, I
    > need to be able
    > to work around missing data.
    >
    > I assume the examples on
    > http://ngwww.ucar.edu/ngdoc/ng/ref/ncl/functions/eofuncs.html
    > are incorrectly using the function "eof", which doesn't exist. I
    > assumethey mean "eoffunc".
    >
    > Thanks,
    > Mike
    > -------------- next part --------------
    > An HTML attachment was scrubbed...
    > URL: http://mailman.ucar.edu/pipermail/ncl-
    > talk/attachments/20050316/ed33852f/attachment.htm
    > ------------------------------
    >
    > Message: 2
    > Date: Wed, 16 Mar 2005 10:16:03 -1000
    > From: Jing <yangjing@mail.iap.ac.cn>
    > Subject: Re: Re: ncl-talk Digest, Vol 16, Issue 11
    > To: Mike Notaro <mnotaro@wisc.edu>, "ncl-talk@ucar.edu"
    > <ncl-talk@ucar.edu>
    > Message-ID: <0IDG00HLROAYFU@mail.hawaii.edu>
    > Content-Type: text/plain; charset=GB2312
    >
    > Hi, Mike
    >
    > 1. the name of "eofunc" is right. but you must intall the Version
    > 4.2.0.a032 NCL. then it can work
    >
    > 2. The routines eofunc and eofunc_ts will work around missing
    > values if data@_FillValue is set
    >
    > Sorry thatI mistake your mail about rotated eof analysis. You are
    > right that "Currently, the percent variance explained after the
    > rotation is not returned by the function. "
    >
    > Looking forward to other answers from experts of NCL.
    >
    >
    >
    > Best!
    >
    > Jing
    >
    >
    >
    >
    >
    >
    > ------------------------------
    >
    > Message: 3
    > Date: Wed, 16 Mar 2005 09:44:53 -1000
    > From: Jing <yangjing@mail.iap.ac.cn>
    > Subject: Re: ncl-talk Digest, Vol 16, Issue 11
    > To: "mnotaro@wisc.edu" <mnotaro@wisc.edu>
    > Cc: "ncl-talk@ucar.edu" <ncl-talk@ucar.edu>
    > Message-ID: <0IDG00DEHMUZ7C@mail.hawaii.edu>
    > Content-Type: text/plain; charset=GB2312
    >
    > Hi, Mike Notaro
    >
    > The new eof function does return you percentage variance you needed
    > and what you need in rotated EOF analysis.
    >
    > Read it carefully, You must be able to find detailed information in
    > http://ngwww.ucar.edu/ngdoc/ng/ref/ncl/functions/eofuncs.html
    > Especially pay attention to its flexible options and rich resources
    > for its output.eg: pcvar (1D float array of length neval)represents
    > percent variance associated with each eigenvalue.
    >
    >
    > Good luck
    >
    >
    > Jing
    > ***************************************************
    > Jing YANG
    > Graduate Student
    > Internatial Pacific Research Center
    > University of Hawaii, Manoa
    >
    > Phone (o): 808-956-7385
    > 1680 East West RD
    > Honolulu HI 96822
    > United states
    >
    ____________________________________________________________________________________________
    > Message: 1
    > Date: Tue, 15 Mar 2005 18:51:24 -0600
    > From: Mike Notaro <mnotaro@wisc.edu>
    > Subject: eofunc_varimax
    > To: ncl-talk@ucar.edu
    > Message-ID: <p06020400be5d3289e468@[144.92.130.73]>
    > Content-Type: text/plain; format=flowed; charset=us-ascii
    >
    > Hello. I have a question about the new function eofunc_varimax.
    > I realize that it still can not provide the % variance explained by
    > each eof.
    >
    > However, how do I get the time series for each
    > rotated eof mode? I only know how to get a pattern.
    >
    > Is there any way to know which is eof1, 2, etc without having the
    > % variance explained?
    >
    > Is there an easy-to-use program available in any computer language
    > for computing reof, % var, and time series? I am currently using
    > a fortran code wrapped to NCL and it is not ideal.
    >
    > Thanks,
    > Mike
    >
    > ------------------------------
    >
    >
    >
    >
    >
    >
    >
    >
    > ------------------------------
    >
    > _______________________________________________
    > ncl-talk mailing list
    > ncl-talk@ucar.edu
    > http://mailman.ucar.edu/mailman/listinfo/ncl-talk
    >
    >
    > End of ncl-talk Digest, Vol 16, Issue 12
    > ****************************************
    >

    _______________________________________________
    ncl-talk mailing list
    ncl-talk@ucar.edu
    http://mailman.ucar.edu/mailman/listinfo/ncl-talk



    This archive was generated by hypermail 2b29 : Thu Mar 17 2005 - 14:13:03 MST