complex eof - jackson school of 2015-03-31¢  complex eof ! conventional eof analysis...

Download Complex EOF - Jackson School of 2015-03-31¢  Complex EOF ! Conventional EOF analysis allows the detection

Post on 23-Mar-2020




0 download

Embed Size (px)


  • Complex EOF   Conventional EOF analysis allows the detection of standing oscillation.

    For propagating oscillation, such as waves, they often show up as 2 or more separate EOFs, instead of one mode of variation.

      For large data with unknown dominant frequency and spatial scales, cross-spectral analysis is less informative, especially for regional, non- stationary phenomena characterized by short lived, irregularly occurring and episodes or propagating wave signals. CEOF is more suitable tool.

    A scalar field x j,t can be represented by

    x j,t = aj ω

    ∑ (ω)cos ωt( )+ bj (ω)sin(ωt)

    A propagating feature can be described by

    Xj,t = ω

    ∑ aj (ω)cos ωt( )+ bj (ω)sin(ωt) xj,k


    # $ $


    & ' ' + i bj (ω)cos ωt( )− aj (ω)sin(ωt)

    x̂ j,k



    $ $



    ' '

    =x j,t + ix̂ j,t where x j,t is the original data, x̂ j,k is the quadrature function or Hilbert transform. It's amplitude is the same as x j,t, but phase is advanced by π /2.

    Horel 1984

  •   Examples of Hilbert transformation: Hilbert transforms does not act as a low-pass filter upon the data It contains as much energy due to noise as original data and it may redistribute the noise to different part of the time series.

    Original data

    Hilbert transform

    Vector form of the Complex time series

  •   One can use apply eigen-analysis to the correlation between the jth and kth location to [X*j(t)] in a similar way of conventional EOF, namely,

    After subtract mean and normalize by standard deviation, we obtain

    correlation matrix: rj,k = [Xj (t) *Xk (t)]t = ejnekn




    where e jn is the eigenvector and ejn * is the eigenvector in complex conjugation

    apply eigen analysis to rj,k in a similar way as regular EOF,

    Xj (t) = [ej,n *



    ∑ Zn (t)]

    ejn * =[X j (t)*Pn(t)]= sjne

    iθ jn where sjn is the magnitude of the correlation and

    eiθ jn is the phase of the correlation. Pn(t)=Tn(t)eiφn (t ) is the PC.

  • State vectors

  • §  Start from a data set p(x,t) §  Hilbert transform to get a complex data

    set P(x,t)=p(x,t)+i p(x,t) §  Get covariance matrix

    C(x,x’)= §  Get real eigenvalues λn , complex

    eigenvectors Bn(x), and associated principal components An(t)

    §  Spatial phase and amplitude functions θn(x)=arctan[ImBn (x)/ReBn (x)] Sn(x)=[Bn(x)B*n(x)]0.5

    §  Temporal phase and amplitude function φn(t)=arctan[ImAn (t)/ReAn (t)] Rn(x)=[An(t)A*n(t)]0.5

    Basic steps

    Barnett (1983, 1984)

  • Matlab code complex_eof.html

  • Hilbert transform

    covariance matrix

    Calculate eigenvalues (lamda) and eigenvectors (loadings)

  • Spatial phase and amplitude functions

  • Amplitude Phase

  • Amplitude Phase