MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

Trouble Constructing Continuous Wavelet Transform in Mathematica 8

  • To: mathgroup at smc.vnet.net
  • Subject: [mg119256] Trouble Constructing Continuous Wavelet Transform in Mathematica 8
  • From: Kevin <kevin.nielson at gmail.com>
  • Date: Fri, 27 May 2011 06:12:43 -0400 (EDT)
  • Reply-to: comp.soft-sys.math.mathematica at googlegroups.com

I am applying a continuous wavelet transform to a data series using a Morlet wavelet.
My trouble is that when I apply the transform using the built-in functions

MorletCWT = ContinuousWaveletTransform[data, MorletWavelet[]]

I get a very different power spectrum from what I obtain when I run this:
MorletPsi[x_] = WaveletPsi[MorletWavelet[],x]
ManualCWT = Flatten[ Table[ {b, a, Abs[1/sqrt[2^a] Sum[ data[[t]] MorletPsi[(t-b)/2^a],{t,1,300} ] ], {b, 1, 2300}, {a, 0.25, 7, 0.25}], 1];

In the above code, 297 is the number of data elements, which is spanned by 7 octaves with 4 voices/octave (hence the 7 and 0.25 in the 'a' list).
This is, near as I can tell, exactly what the Mathematica documentation claims is going on in the Continuous wave transform.  (See the documentation for ContinuousWaveletTransform - More Information)

Is there a better way to do the Continuous Wavelet Transform "longhand"?

(For test functions, try

data = Table[Sin[0.125 pi i] + Random[Real,{-.5,.5}], {i,1,300}]

This sample data set produces similar, but nowhere near identical power spectra.  The real data I am working with produces Built-in CWT and manual CWT powerspectra that are completely different from one another. )


  • Prev by Date: Problem combining patterns
  • Next by Date: Re: Problem with Simplify and Assumptions
  • Previous by thread: Re: Problem combining patterns
  • Next by thread: Pattern matching help