# how to calculate frequency from the wavelet toolbox?

19 views (last 30 days)
Baidehi Nanda on 7 Apr 2012
I am uploading a signal and performing wavelet analysis using continous wavelet 1-D,I get the coefficient waveform,how do I now calculate the frequency of the given waveforms?

Wayne King on 7 Apr 2012
You can use scal2frq to return the pseudo-frequencies corresponding to particular scales.
For example:
t = linspace(0,5,5e3);
x = cos(2*pi*100*t).*(t<1)+cos(2*pi*50*t).*(3<t)+0.3*randn(size(t));
% determine scales
fc = centfrq('cmor1-1');
% a = fc/(freq*dt)
freqrange = [20 150];
Fs = 1000;
scalerange = fc./(freqrange*(1/Fs));
scales = scalerange(end):0.2:scalerange(1);
Coeffs = cwt(x,scales,'cmor1-1');
F = scal2frq(scales,'cmor1-1',1/Fs);
contour(t,F,abs(Coeffs));
xlabel('Time'); ylabel('Frequency');

#### 1 Comment

Baidehi Nanda on 8 Apr 2012
Is there any way to calculate frequency from the waveform that is visible on the window? Because,you see,the signal that I am referring to is a transient voltage waveform at a particular point on a power network during switching.I cant reconstruct such a signal in matrix or vector form in the command window..so.please help.

Wayne King on 8 Apr 2012
If you know the scale you are visualizing you can make a correspondence using scal2frq() has I have said.