Paramerer setting for pmtm() multitaper method
Mostrar comentarios más antiguos
Hi all, I'm trying to do spectral analysis by pmtm method:
clear
clc; close all
% artificial data
Fs = 300; % Sampling frequency
T = 1/Fs; % Sample time
L = 3000; % Length of signal
t = (0:L-1)*T; % Time vector
% Sum of a 50 Hz sinusoid and a 120 Hz sinusoid
x = 0.7*sin(2*pi*50*t) + sin(2*pi*120*t);
y = x + 3*randn(size(t)); % Sinusoids plus noise
y=y(:);
% Spectral analysis
T = 0.5; % sec
W = 3; % -Hz
% Matlab multitaper method
nw = T*W; % nw is the time-bandwidth product
[Pxx, f] = pmtm(y, nw, [], Fs);
plot(f, Pxx) % PSD
title('Spectral analysis by Matlab')
The graph looks fine, but actually, I have no ideas to set T and W. I just randomly put some numbers there. Could anyone please explain as simple as possible that how to select T and W, also how many tapers should be implemented to a specified signal (with unknown frequency of cause in a practical case).
Many thanks for any help Kyle
Respuesta aceptada
Más respuestas (1)
Honglei Chen
el 12 de Sept. de 2011
0 votos
Hi Kyle,
The time-bandwidth product, nw, gives you a trade-off of the variance and resolution. When it gets larger, more windows are applied to the signal so there are more averaging to the resulting spectrum. However, larger nw also means that for each window, the mainlobe is wider so the resolution takes a hit.
HTH,
Honglei
1 comentario
Kyle
el 13 de Sept. de 2011
Categorías
Más información sobre Spectral Estimation en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!