Эффективно вычисление подмножества коэффициентов Фурье [закрыто]Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Эффективно вычисление подмножества коэффициентов Фурье [закрыто]

Сообщение Anonymous »

Учитывая большой массив ввода 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
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»