MATLAB: Discrete wavelet transform relation to sampling frequency of the signal

dwtwavedec

Dear all, I am trying to decompose a signal which is sampled at (1e-6) second sampling rate. that comes out to be 1Mhz Frequency. According to Nequist sampling theorem the highest freq in the signal shd be , 1Mhz / 2 = 500000 Hz = 500 KHz Please suggest me what is the relation between the sampling frequency and DWT, (i am usind WAVEDEC function of MATLAB) Does it mean that D1 should contain 250Khz to 500 Khz frequency. or it does not follow the nequist theorem as it is.

Best Answer

Yes, what you are seeing is that the filters are not perfect bandpass filters, but they are better if they are longer. For example, compare the 'db20'
Fs = 1e6;
t = 0:1/Fs:1-1/Fs;
x = cos(2*pi*50*t);
[C,L] = wavedec(x,15,'db20');
details = detcoef(C,L,'cells');
d14recon = wrcoef('d',C,L,'db20',14);
plot(d14recon,'k'); % approx 30-60 Hz amplitude nearly 1
d13recon = wrcoef('d',C,L,'db20',13);
hold on;
plot(d13recon,'r'); %look how small the amplitude is
Now compare against the approximation at level 13
a13recon = wrcoef('a',C,L,'db20',13);
plot(a13recon,'b');
Related Question