Учитывая большой массив ввода x , допустим, длина n = 2 ** 16 , я хочу коэффициенты Фурье только для небольшого количества частот, скажем, интервал длины [100: 200] . Есть ли библиотека, которая может сделать это эффективно? Конечно, я мог бы внедрить свой собственный алгоритм преобразования Фурье, но что -то «с полки» было бы идеальным.y = scipy.fft.fft(x)
z = y[100: 200]
< /code>
На моей машине это занимает 0,65 секунды. Более эффективным способом является использование определения DFT и вычислить его только для интересующих частот < /p>
z = np.zeros(100)
index = 0
for k in range(100, 200):
z[index] = np.sum(x * np.exp(-2j*np.pi*k*np.arange(N)/N))
index += 1
< /code>
На моей машине это занимает 0,38 секунды. Предположительно, это может быть улучшено гораздо больше, и мне интересно, было ли это уже где -то, чтобы спасти мне усилия.
Подробнее здесь: https://stackoverflow.com/questions/796 ... efficients
Эффективно вычисление подмножества коэффициентов Фурье [закрыто] ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Что вызывает этот странный прыжок на этих фазовых графах коэффициентов Фурье?
Anonymous » » в форуме Python - 0 Ответы
- 4 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Что вызывает этот странный прыжок на этих фазовых графах коэффициентов Фурье?
Anonymous » » в форуме Python - 0 Ответы
- 2 Просмотры
-
Последнее сообщение Anonymous
-