#fft #dft
Вопрос:
довольно простой вопрос для тех, кто глубоко понимает преобразование Фурье: итак, предположим, что у меня есть ряд данных значений [5,2,4,1,0,6,3,7], и я хочу рассчитать дискретное преобразование Фурье (DFT) для заданного набора точек данных. Согласно вики, DFT использует в качестве входных комплексных чисел и выводит также комплексные числа, поэтому вопрос в том, как преобразовать / преобразовать точки данных -> ввод для DFT ?
Комментарии:
1. Эти точки данных с действительными значениями являются просто комплексными числами, мнимая часть которых равна нулю. То, как именно они представлены, зависит от языка и реализации DFT (например, некоторые языки имеют встроенный тип для комплексных чисел, другие будут представлять его в виде пары чисел с плавающей запятой).
2. начните с известных хороших входных данных, поэтому начните с получения последовательности плавающих точек, генерируемых синусоидальной волной, скажем, за 100 полных циклов … предоставьте себе по крайней мере несколько образцов данных за цикл … введите этот массив точек в вызов api FFT и изучите выходной массив … вы знаете, что находитесь в парке для игры в мяч, как только вы подтвердите, что частота входной синусоидальной волны отображается в виде скачка амплитуды в соответствующем элементе бина частоты этого выходного массива
3. Я голосую за то, чтобы закрыть этот вопрос, потому что это вопрос об элементарной математике, а не о программировании.
4. Крис, может быть, я не ясно выразился, но этот вопрос связан с программированием — сегодня ни один орган не вычисляет dft с помощью калькулятора 🙂 у меня уже реализован алгоритм, но реальная проблема заключается в том, как его можно использовать на реальных данных. Этот вопрос стоит ответить, потому что есть много разработчиков, которые хотят использовать фурье для решения проблем, но они не знают, как соединить все части этой головоломки.