pymultifracs.wavelet.wavelet_analysis#

pymultifracs.wavelet.wavelet_analysis(signal, p_exp=None, wt_name='db3', j1=1, j2=None, gamint=0.0, normalization=1, weighted=None, j2_reg=None)#

Compute wavelet coefficient and wavelet leaders.

Parameters:
signalndarray, shape (n_samples,) | (n_samples, n_realisations)

Time series to analyze.

p_expfloat | numpy.inf | None

Determines the formalism to be used: None means only wavelet coefs will be computed, np.inf means wavelet leaders will also be computed, and an int sets the value of the p exponent implying a wavelet p-leader formalism.

wt_namestr

Name of the wavelet function to use, as defined in the pywavelet package [1]. The default value of 'db3' means Daubechies with 3 vanishing moments.

j1int

Lower bound of the scale range on which to estimate \(\eta_p\) in p-leader correction.

j2int | None

Upper bound of the scale range for which wavelet coefficients will be computed. If None, it will automatically be set to the highest value possible.

gamintfloat

Fractional integration coefficient \(\gamma_{\textrm{int}}\)

normalizationint

Norm to use on the wavelet coefficients, see notes for more details.

weightedstr | None

Whether to perform weighted linear regression, used only when computing p-leaders for when estimating \(\eta_p\) in p-leader correction

j2_reg: int

Upper bound of the scale range on which to estimate :math:`eta_p’ in p-leader correction

Returns:
WaveletTransform

Namedtuple containing the computed wavelet coefs, potential wavelet leaders, and the effective maximum scale used

Notes

When computing the wavelet coefficients, the values corrupted by border effects are set to infinity (np.inf).

This makes it easier to compute the wavelet leaders, since corrupted values will also be infinite and can be removed.

Note

Wavelet coefficients are usually L^1 normalized [2], which is achieved by setting normalization=1.

References