Search tips

Search tips

# Discussion Groups | Matlab DSP | How to get random signal samples from a given PSD?

Technical discussion about Matlab and issues related to Digital Signal Processing.

Is this thread worth a thumbs up?

0

# How to get random signal samples from a given PSD? - tony...@hotmail.com - Nov 16 6:22:00 2005

Hello everybody,

first of all I would like to apologize if what I'm asking is terribly
obvious or if what I'm saying is completely wrong. I'm quite new at
discrete signal processing!

Probably it will sound quite strange to most of you since it isn't
something which usually occurs in practical situations, but I need to
get samples of a random signal whose PSD (well, I'd better say
periodogram) is given. It should be possible, isn't it? Moreover the
distribution of the recovered samples values should be normal
(gaussian), is it possible to add such a condition while recovering
the samples? How?

Of course direct suggestions are the most welcome but I will
appreciate also references suggestions provided they are
comprehensible to a novice!! :-)

Thank you,

Tony

# Re: How to get random signal samples from a given PSD? - Nandan Das - Nov 16 15:25:00 2005

If you send a random signal (with Psd Sx) through a LTI block with transfer
function H(f) then what comes out has a PSD Sy given by

Sy = Sx * | H(f) | ^2 This is a "well known" fact that you can find in most
books on random processes (e.g. Papoulis, Leon Garcia etc).

So take lots of samples that are iid Gaussian. Then its PSD = Fourier
Transform of Autocorrelation of iid Gaussian = Fourier Transform of delta
function = uniform over all frequencies.

Now take these samples and filter them through a filter whose frequency
response is the sqrt of the PSD you want. Then your output samples will have
the PSD you want.

Be careful of initial conditions in this filter. Throw away the first few
samples where the filter hasn't been filled with the input samples.
On 11/16/05, tony_beppe@tony... <tony_beppe@tony...> wrote:
>
> Hello everybody,
>
> first of all I would like to apologize if what I'm asking is terribly
> obvious or if what I'm saying is completely wrong. I'm quite new at
> discrete signal processing!
>
> Probably it will sound quite strange to most of you since it isn't
> something which usually occurs in practical situations, but I need to
> get samples of a random signal whose PSD (well, I'd better say
> periodogram) is given. It should be possible, isn't it? Moreover the
> distribution of the recovered samples values should be normal
> (gaussian), is it possible to add such a condition while recovering
> the samples? How?
>
> Of course direct suggestions are the most welcome but I will
> appreciate also references suggestions provided they are
> comprehensible to a novice!! :-)
>
> Thank you,
>
> Tony