Reference level P0 in psd() logarithm?
Afficher commentaires plus anciens
Hi,
I have written code to implement Yule-Walker algorithm myself and compared it against psd() result In my code, I directly take the log10 of of the squared DTFT, and found a constant difference around 100 that my value is above psd() value.
According to http://en.wikipedia.org/wiki/Decibel the definition of power decibel requires a reference level P0, and I therefore suspect it is this P0 that lowered psd() value. Could anyone tell me the value of this P0?
Bob
Réponse acceptée
Plus de réponses (1)
Wayne King
le 14 Jan 2012
You're welcome Bob, just to reiterate what I stated above, if you try the following:
x = randn(1000,1);
[a,e] = aryule(x,4);
[h,w] = freqz(1,a,512);
Pxx = e*abs(h).^2;
Pxx(2:end-1) = 2*Pxx(2:end-1);
Pxx = Pxx./(2*pi);
plot(w./pi,10*log10(Pxx),'k'); grid on;
set(gca,'xlim',[0 1]);
figure;
pyulear(x,4,512);
You'll see what I mean about the scaling. aryule() obtains the biased estimate of the autocorrelation and then solves the Yule-Walker equations using levinson().
1 commentaire
Bob Li
le 15 Jan 2012
Catégories
En savoir plus sur Linear Predictive Coding dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!