my question is quite straight-forward to be grasped and handled.
I have an 1D array, F_11
representing a target power spectrum. It is sketched in the following figure
Then, I start generating a time series u
which embodies the properties of F_11
, as follows
nn = complex(normrnd(0,1,[1,1000]),normrnd(0,1,[1,1000]));
u = abs(fftn(fftshift(F_11.*nn)));
Finally, just to check that u does actually reproduce a spectrum as F_11
, I try going backwards as follows
ps = abs(ifftn(ifftshift(u)));
But, when plotting ps
, it does not exactly match F_11
In the high frequency area, ps
drifts upwards, which is quite weird.
Would you mind to sketch the flaw in my procedure?