Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: FFT - малые простые числа...
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
DRUID3
ПревеД рабочим пчелам мирового сионизма... biggrin.gif

Ищу исходники (не алгоритмы!) для БПФ длинны 9, 7, 5, 3. Блейхута читал, осуждаю... Собственно из него и ищутся... Вручную набивать влом (набил заработало токо на 3 biggrin.gif ) - мне это не оплачивается... В интернете видел чо-то там на 5 в каком-то немецком исходнике и в известной книге fxt на 9. Остается еще на 7... )))... А если серьезно желательно в "одной пачке все" - удивляет скудность опенсоуса в этом вопросе... В закромах ничего неД?
fontp
QUOTE (DRUID3 @ Jun 19 2011, 22:03) *
ПревеД рабочим пчелам мирового сионизма... biggrin.gif

Ищу исходники (не алгоритмы!) для БПФ длинны 9, 7, 5, 3. Блейхута читал, осуждаю... Собственно из него и ищутся... Вручную набивать влом (набил заработало токо на 3 biggrin.gif ) - мне это не оплачивается... В интернете видел чо-то там на 5 в каком-то немецком исходнике и в известной книге fxt на 9. Остается еще на 7... )))... А если серьезно желательно в "одной пачке все" - удивляет скудность опенсоуса в этом вопросе... В закромах ничего неД?


Здарова, гауляйтер!
Библиотеки FFTW и Intel MKL, сами понимаете, нам доступные, хоть и разной степени открытости,
и открытая по GPL для некоммерческого пользования библиотека ALGLIB
http://www.alglib.net/fasttransforms/fft.php
работают с любыми числами. Множители 3, 5 - реализуются обычно через Томаса-Гуда, остальные простые, похоже, через Блуштейна
Множители 7, 9, наверное, имеют смысл только для упрощения аппаратной реализации (чтобы избежать вращающих множителей в кули и тьюки), они тормозят по отношению 2^n

Раскурочьте ALGLIB (FFTW, Intel MKL). У Вас же всё равно полюбому использование некоммерческое, Вам всё равно не платят rolleyes.gif
Я молодой, писал когда-то Томаса-Гуда ещё под dOS, не читая разных блейкхутов - для 3&5&7& (2 | 4 | 8) максимум 840.
Если нужно [ для некоммерческого использования)) ] - пишите в личку, найду...
DRUID3
Цитата(fontp @ Jun 21 2011, 12:54) *
Здарова, гауляйтер!

Зиг Хайль! biggrin.gif

Цитата(fontp @ Jun 21 2011, 12:54) *
Библиотеки FFTW и Intel MKL, сами понимаете, нам доступные, хоть и разной степени открытости...

...открытость, как и все в этом иллюзорном мире, понятие относительное... Открытость Pentium ассемблера для меня не
так и актуальна... Смотря в книгу набираю я неплохо biggrin.gif ... + опять же тестить это все... 101 раз... и еще
раз, да еще много-много раз...

Цитата(fontp @ Jun 21 2011, 12:54) *
и открытая по GPL для некоммерческого пользования библиотека ALGLIB
http://www.alglib.net/fasttransforms/fft.php
работают с любыми числами. Множители 3, 5 - реализуются обычно через Томаса-Гуда, остальные простые, похоже, через
Блуштейна

... 1) я давно не следил за успехами alglib.net... с тех пор как наружу стало видно только API...
... 2) я здесь многого непонимаю... Гуда-Томаса - это там где выносят строку и столбец из матрицы и сводят к
циклической свертке (которая потом через БПФ степени 2)? Так опять же - набирать и тестить...
...3) ...а Блуштейн это кто? Подозрительная фамилия... Опять лженаука от мировой закулисы? Это не семейство ли
Чирп-БПФ? Тогда здесь очень много вопросов. И, мне так кажется, чирп-БПФ и не рассматривались на этом форуме особо.

Так вот о такого рода БПФ - я их не понял... Негодует физическая интуиция. Нет, ну как, я даже вручную собирал своп-генератор на КТ315, но в том то и дело, что мне все время казалось, мол я понимаю как они работают.
"Чирп" - синусоида с линейно возрастающей частотой - подается на смеситель - вся эта ерунда далее на FIR(кстати -
можно ведь и IIR) - каГ бЭ ПЧ. Своп(линейная пила) расставляет мгновенные замеры частотных бинов по оси частот. И
вот что непонятно - у DFT ищется корреляция с набором гармонических функций определенных частот на заданном участке
который равен интервалу рассмотрения - количеству семплов преобразования. Ну а чирп? Своп-АЧХометр снимает АЧХ
стационарной системы. Своп-спектрограф строит спектр стационарного по отношению к свопированию (изменению частоты за
единицу времени). Т.е. или свопить нужно по Котельникову или получится черти-что. Но если по Котельникову, то это
FIR+FFT как минимум, что собственно из формулы 9.44 Оппенгейм-Шаффер ст.658 и вытекает. И в чем тут ускорение?


Цитата(fontp @ Jun 21 2011, 12:54) *
Множители 7, 9, наверное, имеют смысл только для упрощения аппаратной реализации (чтобы избежать вращающих
множителей в кули и тьюки), они тормозят по отношению 2^n

...здесь тоже непонятки... 9 это 3x3 пускай. а 7? wacko.gif

Цитата(fontp @ Jun 21 2011, 12:54) *
Раскурочьте ALGLIB (FFTW, Intel MKL). У Вас же всё равно полюбому использование некоммерческое, Вам всё равно не
платят rolleyes.gif

Иногда курочать посложнее чем писать с чистого листа.

Цитата(fontp @ Jun 21 2011, 12:54) *
Я молодой, писал когда-то Томаса-Гуда ещё под dOS, не читая разных блейкхутов - для 3&5&7& (2 | 4 | 8) максимум
840.
Если нужно [ для некоммерческого использования)) ] - пишите в личку, найду...

Цитата
...Где ты о пьянящая беззаботность молодости, кто правит вами о нещадные ветры времен...


А если сепрьезнее - спасибо за желание помочь... я очень злопамятный. Но и хорошее все помню. Но как бы я пас. Это
действительно не для коммерции - я просто думал копирнуть открытый код и все тут. А так... Раз личка, то уже не
опенсоус. Но еще раз - спасибо...
fontp
QUOTE (DRUID3 @ Jun 26 2011, 21:23) *
... 1) я давно не следил за успехами alglib.net... с тех пор как наружу стало видно только API...

не смотрел, но там доступны исходники, как я понимаю, по GPL2 copyleft

QUOTE (DRUID3 @ Jun 26 2011, 21:23) *
... 2) я здесь многого непонимаю... Гуда-Томаса - это там где выносят строку и столбец из матрицы и сводят к
циклической свертке (которая потом через БПФ степени 2)? Так опять же - набирать и тестить...


Нет. Гуда-Томаса - это когда когда длина разлагается на взаимно простые множители.
Соответственно преобразование факторизуется сразу само. Преобразование на 30 после некоторой перестановки данных является
прямым произведением преобразований на 2,3 и на 5.
Когда же длина сама простое число и преобразование сводят к свёртке, чтобы дополнить нулями и считать через преобразование длины 2**n
- это Bluestain. Всё по-честному, без шарлатанства)

QUOTE (DRUID3 @ Jun 26 2011, 21:23) *
А если сепрьезнее - спасибо за желание помочь... я очень злопамятный. Но и хорошее все помню. Но как бы я пас.

Договорились. А я очень ленивый старые коды искать
SPACUM
Цитата(DRUID3 @ Jun 19 2011, 22:03) *
Ищу исходники (не алгоритмы!) для БПФ длинны 9, 7, 5, 3. в "одной пачке все" - удивляет скудность опенсоуса в этом вопросе...

http://www.fftw.org/ в папке fftw-3.2.1\dft\scalar\codelets приведены исходники (не алгоритмы!) БПФ на 2,3,4...16,20,25,32,64 точки в "одной пачке все".
Думаю в опенсоусе никто давно ничего лучшего делать не хочет, вот и скудность. Надеюсь этого хватит.
PS: Не думаю, что Маттео Фриго и Стивен Г. Джонсон сионисты.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.