Introducing libeemd: a program package for performing the ensemble empirical mode decomposition
The ensemble empirical mode decomposition (EEMD) and its complete variant (CEEMDAN) are adaptive, noise assisted data analysis methods that improve on the ordinary empirical mode decomposition (EMD) All these methods decompose possibly nonlinear and/or nonstationary time series data into a finite amount of components separated by instantaneous frequencies. This decomposition provides a powerful method to look into the different processes behind a given time series data, and provides a way to separate short time scale events from a general trend. We present a free software implementation of EMD, EEMD and CEEMDAN and give an overview of the EMD methodology and the algorithms used in the decomposition. We release our implementation, libeemd, with the aim of providing a user friendly, fast, stable, well documented and easily extensible EEMD library for anyone interested in using (E)EMD in the analysis of time series data. While written in C for numerical efficiency, our implementation includes interfaces to the Python and R languages, and interfaces to other languages are straightforward.
Comput. Stat.