Is wavelet a Nonlinear transform, or Not?
specifically, continuous wavelet transform with morlet function. I am studying behavior of a dynamic system, and it has nonlinear behaviour. can I employ wavelet transform?

  • $\begingroup$ Maybe this will be helpful mathematica.stackexchange.com/questions/33549/… $\endgroup$ – Wojciech Nov 28 '13 at 11:08
  • $\begingroup$ it't not answering my question, actually the link you sent is my earlier question lol @WojciechSitkiewicz $\endgroup$ – SAH Nov 28 '13 at 11:11
  • $\begingroup$ Sorry, my bad :) $\endgroup$ – Wojciech Nov 28 '13 at 11:14
  • $\begingroup$ As much as I would like to answer your question - as it is asked right now - I does not belong to the MMA StakcExchange... Long story - short: It depends. Check out Wim Sweldens' articles on the subject. $\endgroup$ – Sektor Nov 28 '13 at 11:39
  • 3
    $\begingroup$ Google ? A little bit of searching ... $\endgroup$ – Sektor Nov 28 '13 at 11:46

While it may be a complicated question about whether the Continuous Wavelet Transform (CWT) in general is a linear operator, it is possible to answer the question "experimentally" without undue hassle regarding Mathematica's implementation of the CWT. Here are two sequences, a and b and their ContinuousWaveletTransforms:

a = RandomReal[{-1, 1}, 100];
b = RandomReal[{-1, 1}, 100];
cwta = ContinuousWaveletTransform[a];
cwtb = ContinuousWaveletTransform[b]; 
cwtab = ContinuousWaveletTransform[a + b];

To test for linearity

Max[Abs[cwta[All, "Values"] + cwtb[All, "Values"] - cwtab[All, "Values"]]]

which shows that the sum of the CWTs is the sum of the individual CWTs, except for numerical roundoff error. Similarly, you can verify that ContinuousWaveletTransform[n*a + m*b] is the same as n*cwta+m*cwtb. The same also holds when using the MorletWavelet[] option in the CWT.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.