Find the frequency at maximum value in pwelch function

6 visualizzazioni (ultimi 30 giorni)
I plotted my pwelch, and I want the frequency at which the graph shows the highest value. In this particular case its around .25. I tried using findpeaks but it gives me some weird answer.
  1 Commento
dpb
dpb il 16 Set 2018
"... findpeaks but it gives me some weird answer"
Show your work; findpeaks should have no problem with that input signal with suitable inputs...

Accedi per commentare.

Risposte (1)

Aquatris
Aquatris il 17 Set 2018
You can obtain the frequency and power vectors from pwelch function. Example;
fs = 1e3;
t = 0:1/fs:1-1/fs;
x = sin(2*pi*100*t);
[pxx,f] = pwelch(x,500,300,500,fs);
plot(f,20*log10(pxx))
then, you can simple do the following to find the frequency corresponding to max peak;
index = find(pxx == max(pxx));
freq_max = f(index); % frequency at which pxx is maximum

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by