Path: news.mathworks.com!not-for-mail
From: <HIDDEN>
Newsgroups: comp.soft-sys.matlab
Subject: Re: Generate a time series from a PSD
Date: Sat, 27 Sep 2008 13:30:05 +0000 (UTC)
Organization: Xoran Technologies
Lines: 19
Message-ID: <gblcgt$bh5$1@fred.mathworks.com>
References: <gao08m$ad3$1@fred.mathworks.com>
Reply-To: <HIDDEN>
NNTP-Posting-Host: webapp-05-blr.mathworks.com
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
X-Trace: fred.mathworks.com 1222522205 11813 172.30.248.35 (27 Sep 2008 13:30:05 GMT)
X-Complaints-To: news@mathworks.com
NNTP-Posting-Date: Sat, 27 Sep 2008 13:30:05 +0000 (UTC)
X-Newsreader: MATLAB Central Newsreader 1440443
Xref: news.mathworks.com comp.soft-sys.matlab:492436


"Rainer " <wilhelm.remove.this.rainer@gmx.net> wrote in message <gao08m$ad3$1@fred.mathworks.com>...
> Hi,
> 
> I tried to generate a time series (one realization) from a Power Spectral Density (PSD). Since the PSD only contains amplitude information but no phase information, I defined the phase (at each frequency) as a random variable, uniformly distributed between 0 and 2*pi. Basically the code is:
-------------------


If the idea is to get a realization of the time series, do you really need phase information? Do you really need to take this approach at all?

It seems like what you're trying to do is express the time series as the output of some filter when fed with white noise input. You're trying to recreate that filter and are finding that the PSD only gives you its magnitude response.

But if the goal is just to get a realization of the time series, it seems to me that all you have to do is compute the autocorrelation function by doing an ifft on the PSD.

Once you have the autocorrelation function, you can reconstruct the joint probability distribution function of the time series, if you assume the time series is Gaussian. 

Once you have the joint distribution, you can compute a realization.