emd.spectra.hilbertmarginal#

emd.spectra.hilbertmarginal(IF, IA, order=2, freq_edges=None, amp_edges=None, sum_time=True, sum_imfs=True, sample_rate=1, scaling=None, return_sparse=False, return_Gb_limit=10)[source]#

Compute a generalised Hilbert marginal spectrum.

This is an experimental function which probably implements the method introduced in Huang et al (2008) _[1]. This creates a 2D amplitude-frequency representation of the signal.

Parameters
IFndarray

2D first level instantaneous frequencies

IAndarray

2D first level instantaneous amplitudes

orderint

Power to which amplitude is raised before spectrum computation.

freq_edges: {ndarray, tuple or None}

Definition of the frequency bins used in the spectrum. This may be:

  • array_like vector of bin edge values (as defined by

emd.spectra.define_hist_bins)

  • a tuple of values that can be passed to emd.spectra.define_hist_bins

(eg edges=(1,50,49) will define 49 bins between 1 and 50Hz)

  • None in which case a sensible set of bins will be defined from the

input data (this is the default option)

amp_edges{ndarray, tuple or None}

Definition of amplitude bins used in spectrum. Format options are the same as for freq_edges.

sum_timeboolean

Flag indicating whether to sum across time dimension

sum_imfsboolean

Flag indicating whether to sum across IMF dimension

sample_ratefloat

Sampling rate of the data used in ‘density’ scaling

scaling{‘density’, ‘spectrum’, None}

Switch specifying the normalisation or scaling applied to the spectrum.

return_sparsebool

Flag indicating whether to return the full or sparse form(Default value = True)

return_Gb_limit{float, None}

Maximum array size in Gb that will be returned if a non-sparse/dense array is being returned (default = 10). If the function return would exceed this size, the function will raise an error. If set to None, then no limit is imposed. Sparse arrays are always returned.

Returns
andarray

Vector of histogram bin centers for each amplitude

fndarray

Vector of histogram bin centers for each frequency

hhtndarray

2D array containing the Hilbert-Huang Transform

References

1

Huang, Y. X., Schmitt, F. G., Lu, Z. M., & Liu, Y. L. (2008). An amplitude-frequency study of turbulent scaling intermittency using Empirical Mode Decomposition and Hilbert Spectral Analysis. In EPL (Europhysics Letters) (Vol. 84, Issue 4, p. 40010). IOP Publishing. https://doi.org/10.1209/0295-5075/84/40010