what is the sampling frequency in wavelet method?
8 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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 commentaires
Ajay
le 25 Juil 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.
Réponse acceptée
Youssef Khmou
le 20 Juil 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 commentaires
Youssef Khmou
le 21 Juil 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)));
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Continuous Wavelet Transforms dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!