Forums

approximate CWT(xd,scale,gaus3) from CWT(xdd,scale,gaus2) with matlab

Started by Unknown April 6, 2007
Hi, all

I am writing to have some difficulty in continuous wavelet
transform(CWT) in matlab.

The problem is :

Given (1) two digital signals (sampling frequency 1000 hz),  xd( first
derivative of x) and xdd (second derivative of x) from signal x.
         (2) two wavelets, gaus3 and gaus2.  This means that
derivative of gaus2 is gaus3.


Having two conditions, I want to show the relationship as follows;

   CWT(xdd, Range of scale, gaus2)/CWT(xd,Range of scale,
gaus3)=function of (Range of scale)
   note : / stands for divide

  Simple example: CWT(xdd, a=10, gaus2)/CWT(xd,a=10,gaus3)=Coe*f(a).

This relationship is possible to show theoretically ,
but when I want to verify the relation with Cwt ( built-in function of
matlab) and two signals practically,I can't verify this theorertical
relationship.

I think that the problem is because two signals is not continous
practically.

If somebody knows the reason of it, please tell me about it.

Thank you

duk jin joo

First, since the Gaussian function has no compact support, your
equation
will not hold at the border of the signal. Therefore, if you have a
sufficiently long signal,
then you can try to see the Coef(a) given about the center of your
signal. This could give you
an approximative estimation of the scale factor.

Second, when you create your Gaussian-type wavelets, a sufficiently
high sampling rate is required,
as Gaussian is not band-limited. As the derivative order increases,
the sampling rate should increases also.
This is because that k-th derivative corresponds to multiply a
(omega^k) factor in the frequency domain.
So if you maintain the same sampling rate, your wavelet will be
aliased. The same thing holds for your original
signal.

Third, if the sampling rates of your signal and of your wavelet are
different, then the calculated Coef(a) may be scaled by a constant
factor. You can see this by writing the Rimann sum approximations to
your analytical integrals.

Finally, if you derive your signal by using finite difference scheme,
then your coefficient estimation can be highly sensitive to the
smoothness of your signal. You cannot hope to give an accurate
estimate at the discontinuous points.
Finite difference scheme is only consistent when your signal is
sufficiently smooth. You can see this by developping the Taylor
expansion of your finite difference scheme to see the minimal
derivatibility of your signal required by your scheme.


On Apr 6, 11:37 pm, jooduk...@gmail.com wrote:
> Hi, all > > I am writing to have some difficulty in continuous wavelet > transform(CWT) in matlab. > > The problem is : > > Given (1) two digital signals (sampling frequency 1000 hz), xd( first > derivative of x) and xdd (second derivative of x) from signal x. > (2) two wavelets, gaus3 and gaus2. This means that > derivative of gaus2 is gaus3. > > Having two conditions, I want to show the relationship as follows; > > CWT(xdd, Range of scale, gaus2)/CWT(xd,Range of scale, > gaus3)=function of (Range of scale) > note : / stands for divide > > Simple example: CWT(xdd, a=10, gaus2)/CWT(xd,a=10,gaus3)=Coe*f(a). > > This relationship is possible to show theoretically , > but when I want to verify the relation with Cwt ( built-in function of > matlab) and two signals practically,I can't verify this theorertical > relationship. > > I think that the problem is because two signals is not continous > practically. > > If somebody knows the reason of it, please tell me about it. > > Thank you > > duk jin joo