what is the sampling frequency in wavelet method?
11 views (last 30 days)
Show older comments
Hello. I have a 1-D signal with 300 samples during 30 secs. I've extracted the frequencies which are involve in the signal already in order to compare with wavelet method.I used following codes to determine the frequencies of the signal.I guess my problem is with determining the "Fs" value. I've selected 300,100,10,... but the output was nonsense, cause the frequencies suppose to be in range of 0.1Hz,0.05Hz. but with selected "Fs" values the frequencies are about 30,10,0.7 which are not the expected frequencies.Also I would like to ask How can I estimate the damping of each frequency modes. Thanks for a fast reply
%%------system data-------
Fs=100; % what should it be? my time interval is 0.1 but it doesn't work too
t=0:299;
x=data; % its my signal value
%%------------------------
wname = 'morl';
scales = 1:1:128;
coefs = cwt(x,scales,wname);
freq = scal2frq(scales,wname,1/Fs);
surf(t,freq,abs(coefs)); shading('interp');
xlabel('Time'); ylabel('Frequency');
figure;
wscalogram('image',coefs,'scales',freq,'ydata',x);
hold on
figure;
plot(freq,coefs)
2 Comments
Ajay
on 25 Jul 2013
Hello, I believe the sampling frequency is not of much importance in your problem. withUsing Scal2frq is not going to give you the actual frequencies involved in the signal. It just provides the pseudo-frequencies which may not match with the actual frequencies. The pseudo frequencies depends on the type of wavelet and its center frequencies. So, first thing is you have to find a way to figure out the actual frequencies involved in it also please let me know if u do that.
Accepted Answer
Youssef Khmou
on 20 Jul 2013
hi,
you have N=300 points for duration t=30 secs , then the samle rate is f=N/t=10Hz
or you can perform this way :
T=linspace(0,30,300);
Fs=ceil(inv(T(2)-T(1)));
The Nyquist condition is respected because you mentioned that the expected frequencies are 0<f<0.1 Hz .
5 Comments
Youssef Khmou
on 21 Jul 2013
i think you can use visualization technique, like logarithmic scale to expand the closer values :
semilogx(Freqq(1:end/2),(Fy(1:end/2)));
More Answers (0)
See Also
Categories
Find more on Continuous Wavelet Transforms in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!