NCL Home>
Application examples>
Data Analysis ||
Data files for some examples
Example pages containing:
tips |
resources |
functions/procedures
NCL: EEMD: Extended Empirical Mode Decomposition
CEEMDAN: Complete Ensemble Empirical Mode Decomposition with Adaptive Noise Analysis
An overview of Empirical Mode Decomposition is provided by
Lambert.
A project website for the course ELEC 301 at Rice University.
EMD (Empirical Mode Decomposition)
is an adaptive time-space analysis method suitable for processing series that
are non-stationary and non-linear. EMD performs operations that partition a
series into 'modes' (IMFs; Intrinsic Mode Functions) without leaving the
time domain. It can be compared to other time-space analysis methods like
Fourier Transforms and wavelet decomposition. Like these methods, EMD is
not based on physics. However, the modes may provide insight into various
signals contained within the data. In particular, the method is useful for
analyzing natural signals, which are most often non-linear and non-stationary.
Some common examples would include the Southern Oscillation Index (SOI), NINO-3.4 Index, etc.
EEMD (Ensemble EMD) is a noise assisted data analysis method.
EEMD consists of
"sifting" an ensemble of white noise-added signal.
EEMD can separate scales naturally without any a priori subjective criterion
selection as in the intermittence test for the original EMD algorithm.
Wu and Huang (2005) state:
"White noise is necessary to force the ensemble to exhaust all
possible solutions in the sifting process, thus making the different
scale signals to collate in the proper intrinsic mode functions (IMF)
dictated by the dyadic filter banks. As the EMD is a time space
analysis method, the white noise is averaged out with sufficient
number of trials; the only persistent part that survives the averaging
process is the signal, which is then treated as the true and more
physical meaningful answer." Further, they state: "[EEMD] represents a
substantial improvement over the original EMD and is a truly noise
assisted data analysis (NADA) method."
CEEMDAN (Complete Ensemble Empirical Mode Decomposition with Adaptive Noise)
is a variation of the EEMD algorithm that provides an exact reconstruction of the
original signal and a better spectral separation of the IMFs.
Some comments:
- Salisbury and Wimbush (2002):
"This empirical mode decomposition (EMD) method extracts the energy associated
with various intrinsic time scales in generating a collection of intrinsic mode
functions (IMFs). The IMFs have well-behaved Hilbert transforms, from which
instantaneous frequencies can be calculated. Thus, we can localize
any event in time as well as frequency."
- Lambert et al:
"The fact that the functions into which a signal is decomposed are all in the
time-domain and of the same length as the original signal allows for varying
frequency in time to be preserved. Obtaining IMFs from real world signals is
important because natural processes often have multiple causes, and each of
these causes may happen at specific time intervals. This type of data is evident
in an EMD analysis, but quite hidden in the Fourier domain or in wavelet coefficients."
IMPORTANT NOTE: NCL interfaces to C code
provided by Luukko et al. (2016). There have been reports that for
some of the modes, this code suffers from the mode mixing problem due
to the stoppage criterion that is used in P. Luukko's code. The NCL
team is looking into another version of EEMD to see if this issue can
be improved.
REFERENCES:
Colominas, M. A., Schlotthauer, G., and Torres, M. E. (2014).
Improved complete ensemble EMD:
A suitable tool for biomedical signal processing.
Biomedical Signal Processing and Control, 14, 19-29.
Hsuan, R. (2014):
Ensemble Empirical Mode Decomposition Parameters Optimization for
Spectral Distance Measurement in Hyperspectral Remote Sensing Data
Remote Sens. 2014, 6(3), 2069-2083; doi:10.3390/rs6032069
http://www.mdpi.com/2072-4292/6/3/2069
Kim, D., and HS. Uh (2009):
EMD: A Package for Empirical Mode Decomposition and Hilbert Spectrum
https://journal.r-project.org/archive/2009-1/RJournal_2009-1_Kim+Oh.pdf
Lambert et al
Empirical Mode Decomposiotion
https://www.clear.rice.edu/elec301/Projects02/empiricalMode/
Meta Trader
Introduction to the Empirical Mode Decomposiotion Method
https://www.mql5.com/en/articles/439
Salisbury, J.I. and Wimbush, M. (2002):
Using modern time series analysis techniques to predict
ENSO events from the SOI time series
Nonlinear Processes in Geophysics (2002) : 341-345
http://www.nonlin-processes-geophys.net/9/341/2002/npg-9-341-2002.pdf
Torres, M. E., Colominas, M. A., Schlotthauer, G., & Flandrin, P. (2011, May):
A complete ensemble empirical mode decomposition with adaptive noise
(ICASSP), 2011 (pp. 4144-4147). DOI: 10.1109/ICASSP.2011.5947265.
Wang, T., M. Zhang, Q. Yu, and H. Zhang, 2012:
Comparing the applications of EMD and EEMD on time-frequency analysis
of seismic signal.
J. Appl. Geophys., 83, 29-34, doi:https://doi.org/10.1016/j.jappgeo.2012.05.002.
Wu, Z. and Huang, N. (2009):
Ensemble Empirical Mode Decomposition: A Noise-Assisted Data Analysis Method.
Advances in Adaptive Data Analysis. Vol. 1, No. 1 (2009) 1-41.
Wu, Z, et al (2015):
Fast multidimensional ensemble empirical mode decomposition for the
analysis of big spatio-temporal datasets
Philos Trans A Math Phys Eng Sci. 2016 Apr 13; 374(2065): 20150197.
doi: 10.1098/rsta.2015.0197
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4792406/
Wu, Y. and Shen, BW (2016):
An Evaluation of the Parallel Ensemble Empirical Mode Decomposition Method
in Revealing the Role of Downscaling Processes Associated with
African Easterly Waves in Tropical Cyclone Genesis
doi: http://dx.doi.org/10.1175/JTECH-D-15-0257.1
http://journals.ametsoc.org/doi/abs/10.1175/JTECH-D-15-0257.1
[lots of references]
There are two Ensemble Empirical Mode Decomposition functions:
eemd
and
ceemdan.
NCL version 6.4.0 or higher is required to use the code below.
The scripts below are intended to be 'guide' to usage. They may
work directly but, generally, the user will have to make some changes to the scripts.
eemd_4.ncl:
Read grid surface temperatures from latitudes nearest the North Pole.
[Source: L. Terray, CERFACS]