Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.04.30;
Скачать: [xml.tar.bz2];

Вниз

БПФ   Найти похожие ветки 

 
Symbios ©   (2006-03-23 19:17) [0]

Если кто-нибудь писал проги для расчета БПФ поделитесь сорсами плиз.
З.Ы. Заранее благодарен


 
Jeer ©   (2006-03-23 19:22) [1]

Море их в океане Инет.


 
Symbios ©   (2006-03-23 19:39) [2]

Море, то море. Однако большая часть на Си, а то что нашел на Паскале, работает не так как надо.


 
Jeer ©   (2006-03-23 19:45) [3]

Все работает - искал плохо, либо не понял суть БПФ и частной реализации.


 
lookin ©   (2006-03-23 19:46) [4]

[2] Symbios ©   (23.03.06 19:39)

У меня есть какие-то коды под именем DSXFastFourier.pas


 
TUser ©   (2006-03-23 19:55) [5]

Это FFT? Не поверю, что на Паскале нет!!!!


 
оЛиневод   (2006-03-24 10:49) [6]

http://www.delphiworld.narod.ru/base/fft.html


 
Alexis ©   (2006-03-24 15:07) [7]

Ja mogu tebe prislat projekt na Borland C++ Builder, jesli hocesh.
Tam algoritm FFT vydelen v otdelnyj klass (verneje template<Class T> - shablon). Krome togo, ispolzujetsia STL. Jesli minimalno znajesh C++, smozesh perevesli na Delphi. Pravda ja na Delphi davno ne pishu, jest li tam analog
vector<float> coefficients ?

4to-to tipa TList<int> ili coefficients : TList of Integer ?


 
TUser ©   (2006-03-24 15:16) [8]

FFTW 3.x and Borland Delphi
George Beckett has contributed a Pascal interface file (fftw_interface.pas) for calling FFTW from Borland Delphi (Pascal). This file is for the single-precision FFTW, but double-precision could be used as well by changing the appropriate types and renaming fftwf_ to fftw_ in the file.

He also sent us his notes on calling FFTW from Delphi as well as on compiling FFTW on Windows with the Borland C++ compiler. Finally, he sent us the compiled library via Borland (see also the material from Klaus Maisinger, above). George recommends using the DLLs from Alessio Massaro instead, though, for better performance (note that Alessio"s symbol names do not need to be prepended with an underscore, however).

http://www.fftw.org/install/windows.html
ftp://ftp.fftw.org/pub/fftw/fftw_interface.pas


 
Symbios ©   (2006-04-01 18:02) [9]

спасибо народ,  я итак справился, сделал рекурсивную процедуру и все прокатило, уже и dll-ку забабахал )))


 
Symbios ©   (2006-04-01 18:06) [10]

если кому понадобится, пишите на мыло stack_overflow@inbox.ru


 
TUser ©   (2006-04-01 18:33) [11]

> сделал рекурсивную процедуру

Если тебе нужна именно скорость, то от рекурсии надо избавляться.


 
Symbios ©   (2006-04-01 18:46) [12]

да я уже заметил,  поэтому пытаюсь воткнуть БПФ в поток с высшим приоритетом, пока из этого ничего не получается


 
Jeer ©   (2006-04-03 11:24) [13]

Symbios ©   (01.04.06 18:02) [9]

> сделал рекурсивную процедуру и все прокатило


Это не БПФ, а ДПФ - потому скорость и низкая.


 
Symbios ©   (2006-04-07 16:39) [14]

Это именно БПФ, поскольку расчет идет именно, через обход ветвей графа, в отличие от ДПФ, где расчет идет через умножение матрицы поворачивающих множителей, на входной вектор столбец. Скорость низкая из-за большого числа вызовов, процедуры самой себя. Сейчас этой проблемы уже нет )))


 
Aldor_   (2006-04-07 18:09) [15]

Рекурсивный вариант реализиации можно значительно ускорить, превратив его в итерационный и выполнять только "обратный ход" ("сворачивание") рекурсии. Прямой ход рекурсии даёт расположение первоначальных пар, к которым будет применяться 2-х точечное преобразование (схема "бабочки", "buttefly"), далее к перем 4-х точечное и так далее.

Так вот, получить эти пары можно за время O(N), просто записав индексы элементов массива в двоично-инверсном порядке. Если в гугле нет, могу pdf-ник выслать с описанием, даже код готовый валялся.

Самое лучшее (ИМХО) объяснение - в книге Кормена-Лейзерсона-Ривеста "Introduction to algorithms". Но в электронном виде его нет, да и не стоило бы - всё-таки копирайт.



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2006.04.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.01 c
15-1144571134
Ega23
2006-04-09 12:25
2006.04.30
С Днём рождения! 9 апреля


15-1144421627
Сатир
2006-04-07 18:53
2006.04.30
Конфликт двух клиент-серверных приложений


1-1142880743
Igor_thief
2006-03-20 21:52
2006.04.30
Drag and Drop


15-1144333412
oldman
2006-04-06 18:23
2006.04.30
Если память не изменят...


3-1141656216
mvs
2006-03-06 17:43
2006.04.30
Экспорт данных из базы Interbase в скрипт средствами Delphi





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский