1
$\begingroup$

I am calculating approximations using wavelets but outside the multi resolution analysis framework; particularly, I am not using the built-in wavelet transforms.

Still, I need to calculate coefficients and therefore I am wondering how to calculate the support of a given wave in order to know where to start and stop calculating coefficients for WaveletPhi[wave] and WaveletPsi[wave] for a given resolution level. Therefore, I need to know the support for a given wavelet.

I suspect that I could use WaveletFilterCoefficients[wave,"PrimalHighpass"] and, similarly for "PrimalLowpass"; but it is just a hunch, not sure how.

Basically, I am after something along the lines of: WaveletSupport[wave] -> {a,b} support of given wavelet (For the moment just orthogonal wavelets, not biorthogonal).

Thanks.

$\endgroup$
2
  • $\begingroup$ What families are you using ? $\endgroup$
    – Sektor
    Commented Jun 10, 2014 at 0:16
  • $\begingroup$ I want to use DaubechiesWavelet. $\endgroup$
    – carlosayam
    Commented Jun 10, 2014 at 0:37

1 Answer 1

4
$\begingroup$

Both the scaling and wavelet functions of the DaubechiesWavelet are compactly supported on the interval $\left [ 0, N-1 \right ]$, where N is the number of "taps", the impulse response length or just the length of the filter. Choose the one that suits you ^^ Bear in mind that the notation in Mathematica is slightly different - The wavelets are classified by the number of vanishing moments, rather than filter lengths, so the DaubechiesWavelet[2] has 2 vanishing moments and the filter length is 4

There is another definition specifying the bounds of the support:


If the scaling function is supported on $\left [ LB, UB \right ]$ then the wavelet function is supported on $\left [ \frac{LB-UB+1}{2}, \frac{UB-LB+1}{2} \right ]$


Just a simple experiment to confirm the statement (undocumented function):

ListLinePlot[Wavelets`ScalingAndWaveletFunction[DaubechiesWavelet[8], 
      "PrimalScalingFunction", 8, WorkingPrecision -> MachinePrecision], 
      PlotRange -> All]

Mathematica graphics

ListLinePlot[Wavelets`ScalingAndWaveletFunction[DaubechiesWavelet[8], 
      "PrimalWaveletFunction", 8, WorkingPrecision -> MachinePrecision], 
      PlotRange -> All]

Mathematica graphics

$\endgroup$
5
  • $\begingroup$ Thanks a lot @Sektor, but the support of second graph (wavelet) seems to be around [-6,4], isn't it? This is what confuses me, because the values for $x$ where $\psi _{j,k}(x)$ is guaranteed to be zero don't seem be just outside of [0,$2^{-j}$]. $\endgroup$
    – carlosayam
    Commented Jun 10, 2014 at 1:47
  • $\begingroup$ No need to ! :) Look again :) $\endgroup$
    – Sektor
    Commented Jun 10, 2014 at 8:31
  • $\begingroup$ Thanks a lot @Sektor. Your comment about the "impulse response" got me thinking and I was able to arrive to something similar to yours using the "PrimalHighpass" coefficients (it is most likely the same, but I will double check with yours; fantastic.) $\endgroup$
    – carlosayam
    Commented Jun 10, 2014 at 11:53
  • 1
    $\begingroup$ @caya Thank you for the question and I am glad to help :) BTW Do not hesitate to share something about wavelets or x-lets, in general - something you are working on, etc, if you can of course :) $\endgroup$
    – Sektor
    Commented Jun 10, 2014 at 12:02
  • $\begingroup$ Dear @Sektor, I have a question about defining a new wavelet. Could you help me :) The post: mathematica.stackexchange.com/questions/255195/… $\endgroup$
    – 1_student
    Commented Sep 3, 2021 at 14:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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