Почему обратное преобразование Фурье fftw3 создает выходной вектор типа double?

Я хочу получить обратное преобразование Фурье сигнала. я использую это

fftw_plan_dft_c2r_1d

однако выходной вектор должен быть двойным. Вопрос не в том, что IFFT сигнала дает результат комплексного числа?


person Minh Nguyen    schedule 11.02.2016    source источник


Ответы (1)


Определение дискретного преобразования Фурье (ДПФ) позволяет, чтобы вход во временной области был сигналом с комплексным значением, и дает результат в частотной области, который, как правило, также имеет комплексное значение. Соответственно, обратное преобразование этого комплексного результата в частотной области будет давать тот же самый (или, по крайней мере, в пределах числовой точности доступной реализации) исходный сигнал во временной области. Таким образом, результат обратного преобразования может быть сложным.

Точно так же, если мы ограничим входные данные прямого преобразования во временной области сигналами с действительными значениями, то мы аналогичным образом ожидаем, что обратное преобразование соответствующего спектра в частотной области вернет нам тот же исходный сигнал с действительными значениями.

Обратите внимание, что прямое преобразование этих сигналов с действительным знаком дает результат в частотной области, который демонстрирует эрмитову симметрию (и наоборот, если сигнал в частотной области имеет эрмитову симметрию, он должен быть преобразованием сигнала с действительным знаком). fftw_plan_dft_c2r_1d затем вычисляет обратное преобразование (которое имеет вещественное значение и хранится в double) при предположении, что спектр частотной области действительно имеет эрмитову симметрию.

person SleuthEye    schedule 11.02.2016