#c #fft #fftw #spectrum
Вопрос:
Я хочу использовать FFTW для вычисления спектра мощности сигнала. Используя реальные преобразования (в <rfftw.h>), я могу просто вычислить дискретные преобразования Фурье для функций синуса и косинуса, расположить элементы в квадрате и сложить их вместе соответственно. Или я могу вычислить сложное одномерное преобразование и взять норму каждого элемента.
Мне было интересно, есть ли лучший способ прямого вычисления спектра мощности. Я посмотрел в справочнике FFTW, но не нашел специальной функции спектра мощности. Может быть, я здесь ошибаюсь, но я подумал, что, возможно, существует специальный алгоритм, который более эффективно вычисляет мощность на каждой частоте, поскольку мне вообще не нужна информация о фазе. Вычисление обеих составляющих (коэффициентов синуса и косинуса, или действительной и мнимой частей), а затем выбрасывание одной из них кажется неэффективным.
Комментарии:
1. Для близкого избирателя: Этот вопрос не требует рекомендаций по программному обеспечению и т. Д. Он запрашивает метод вычисления определенной функции, который может включать математику или какую-либо технику использования FFTW.