DSPRelated.com
Forums

Power Spectral Density

Started by khma...@gmail.com November 4, 2005
Dear All,

I am really strugling to write a nice program giving me the curve of the PSD of a random data. If I use the FFT function I will get a descreat representation and not smooth and continues like I found in some publication. Could any one help me with some matlab code to plot a continues PSD.
Thanks very much
regards


Hi,
Use psd function from MATLAB. If you are using MATLAB version7, use
p.welch function.
Good Luck! On 11/4/05, khmaies@khma... <khmaies@khma...> wrote:
>
> Dear All,
>
> I am really strugling to write a nice program giving me the curve of the
> PSD of a random data. If I use the FFT function I will get a descreat
> representation and not smooth and continues like I found in some
> publication. Could any one help me with some matlab code to plot a continues
> PSD.
> Thanks very much
> regards
>


You need to use the parametric methods of power spectral density
estimation. There are several methods : Autocorrelation method, Burg
Method, Covariance method etc to name some. You can find the help on
these methods in the book of Steven M.Kay titled "Modern Spectral
Estimation" or in "Digital Signal Processing" by Proakis and Manolakis. The MATLAB functions which implement these methods are :
Autocorrelation Method : pyulear
Burg Method : pburg
Covariance method : pcov

These functions give satisfactory results for what is your requirement,
smooth curves with good spectral resolution.

Use the MATLAB help for the above methods for their usage. These
functions directly give PSD's.

Hope this helps.

Nishit Jain --- khmaies@khma... wrote:

> Dear All,
>
> I am really strugling to write a nice program giving me the curve of
> the PSD of a random data. If I use the FFT function I will get a
> descreat representation and not smooth and continues like I found in
> some publication. Could any one help me with some matlab code to plot
> a continues PSD.
> Thanks very much
> regards >
>
> ------------------------ Yahoo! Groups Sponsor
> --------------------~-->
> Get fast access to your favorite Yahoo! Groups. Make Yahoo! your home
> page
> http://us.click.yahoo.com/dpRU5A/wUILAA/yQLSAA/wHYolB/TM
>
--------------------------------~->
>
Nishit Jain
M.Tech IIT Guwahati

Great minds have purposes, little minds have wishes.



Try to average several (100, 200, etc.) process statistical indipendent.
(to do that you have to put in a loop your actual code and sum the
temporary resulting vector in a final vector; then divide the result
for the number of iteration present in the loop).
The results will be always more smooth increasing the number of
iterations (100, 200, ecc)
bye

2005/11/4, khmaies@khma... <khmaies@khma...>:
> Dear All,
>
> I am really strugling to write a nice program giving me the curve of the PSD of a random data. If I use the FFT function I will get a descreat representation and not smooth and continues like I found in some publication. Could any one help me with some matlab code to plot a continues PSD.
> Thanks very much
> regards
\