Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

stochastic signal transform in time domain

926 views
Skip to first unread message

Aymen

unread,
Oct 28, 2009, 6:25:05 AM10/28/09
to
Hi everybody,

i'm having the following problem :

i want to transform a stochastic signal (a PSD : two column vector, first one for frequency values, second for amplitude values) from Frequency domain to time domain using the "ifft", but i have no idea how to get the initial phases of the signal to do that. In fact the transformation in time domain has not a unique solution, it depends on initial conditions, is it right ?
any idea how could i encounter this problem ?

thanks

NZTideMan

unread,
Oct 28, 2009, 4:05:43 PM10/28/09
to

Since its stochastic, you can just use random phases.
The 2nd order statistical properties (standard deviation and variance)
will be preserved, no matter what the phases are.

But before hitting it with ifft, you need to compose a vector of
complex numbers.
The composition of this vector depends upon what you have already.
Does the frequency go from zero to the Nyquist, then negative?
Or are all the frequencies positive?
And is the first frequency zero?

Basically, if Y is a column vector of complex numbers prepared from
the amplitudes with the first frequency being greater than zero, then
your vector for ifft should look like this:
Y1=[0;Y;flipud(conj(Y))];
If there is a zero frequency, it will look like this:
Y1=[Y;flipud(conj(Y(2:end)))];


Aymen

unread,
Oct 29, 2009, 4:15:19 AM10/29/09
to
NZTideMan <mul...@gmail.com> wrote in message <28ae8ae9-1adb-4911...@f18g2000prf.googlegroups.com>...
Thanks for helping NZTideMan!
all my frequencies are greater than 0 (from 10 to 100 with 1024 amplitudes)
could you please explain to me why using this form ?
Y1=[0;Y;flipud(conj(Y))]; ( i'm not familiar with the ifft fct of matlab)

Is there any special algorithms to generate these random phases (monteCarlo ?) ? or should i use the random fct of Matlab ?

thanks again

0 new messages