2015-03-04 1 views
0

Я хочу рассчитать инверсное преобразование Фурье гауссовского спектра мощности, тем самым снова получив гауссовский спектр. Я хочу использовать этот факт, чтобы проверить, что IFFT моего спектра мощности Gaussian является разумным, в том смысле, что он создает массив данных, эффективно распределенных по гауссовскому пути. Теперь выясняется, что IFFT необходимо умножить на коэффициент 2 * pi * N, где N - размерность массива, чтобы восстановить аналитическую корреляционную функцию (которая является обратным преобразованием Фурье в спектре мощности) , Может кто-нибудь объяснить, почему?IFFT спектра гауссовой мощности - Python

Вот фрагмент кода, который сначала заполняет массив гауссовским спектром мощности, а затем выполняет IFFT спектра мощности.

power_spectrum_k = np.zeros(n, float) 
for k in range(1, int(n/2+1)): 
    power_spectrum_k[k] = math.exp(-(2*math.pi*k*sigma/n)*(2*math.pi*k*sigma/n)) 

for k in range(int(n/2+1), n): 
    power_spectrum_k[k] = power_spectrum_k[int(k - n/2)] 

inverse_transform2 = np.zeros(n, float) 
inverse_transform2 = np.fft.ifft(power_spectrum_k) 

где симметрия спектра мощности исходит из необходимости, чтобы получить реальную функцию корреляции, в то же время в соответствии с правилами для использования numpy.ifft (цитата из документации:

" Вход должен быть упорядочен так же, как возвращается fft, т. Е. A [0] должен содержать нулевой частотный член, a [1: n/2 + 1] должен содержать положительно-частотные члены, a [n/2 + 1:] должны содержать отрицательно-частотные члены в порядке убывающей частоты ».)

+1

Если ваш аналитический результат получен интеграцией, вам нужно помнить, что ifft является дискретным преобразованием Фурье, а не непрерывным. Вероятно, ваш вопрос зависит от определения дискретных преобразований: https://en.wikipedia.org/wiki/Discrete_Fourier_transform –

ответ

0

Причиной является Plancherel theorem, в котором говорится, что преобразование Фурье сохраняет энергию сигнала, то есть, интеграл по | х (т) | ² равен интеграл по | X (f) | ². Если у вас больше образцов (например, вызванных более высокой частотой дискретизации или более длинным интервалом), у вас больше энергии. По этой причине ваш результат IFFT масштабируется в N. Ваш фактор зависит от используемой команды convention of Fourier Integral, поскольку @pv уже отмечен. С другой стороны, по длине вашего интервала, поскольку интеграл по мощности выборки и непрерывный интервал должны быть одинаковыми.

 Смежные вопросы

  • Нет связанных вопросов^_^