|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Evgenij Masherov 2:5020/175.2 25 Oct 2001 09:55:56 To : Alegz Lee Subject : ДПФ, БПФ -------------------------------------------------------------------------------- Wed Oct 24 2001 15:47, Alegz Lee wrote to Evgenij Masherov: AL>>> Для дипломной работы понадобились вычисления ДПФ, БПФ. Какие есть AL>>> алгоритмы на этот счёт и их реализации? (Ожидаемое количество точек AL>>> 6000 - 10 000). EM>> БПФ - неоднократно постились в эху. Могу выслать на С мылом. AL> Да, пожалуйста. Можно и на baliset[at]magnetic.org.ru #include <complex.h> #include <math.h> #define M 7 void fft(complex *a) { int i,ip,j=1,k,l,le,le1,N=1; complex u,w,t; N<<=M; j=1; for(i=1;i<N-1;i++) { if(i<j) {t=a[j-1];a[j-1]=a[i-1];a[i-1]=t;} k=N/2; while(k<j) {j-=k;k/=2;} j+=k; } for(l=1;l<=M;l++) { le=1;le<<=l;le1=le>>1; u=complex(1.0,0.0); w=complex(cos(M_PI/le1),sin(M_PI/le1)); for(j=1;j<=le1;j++) { for(i=j;i<=N;i+=le) { ip=i+le1; t=a[ip-1]*u; a[ip-1]=a[i-1]-t; a[i-1]+=t; } u*=w; } } } Да простят меня здешние государи - но текст невелик. М - показатель степени двойки у длины вектора. Обратное преобразование делается той же программой, не забывая об сопряженности и нормировании. EM>> ДПФ - в лоб осмыслено лишь при ОЧЕHЬ малом числе точек (~10-100) AL> Есть ли модели ДПФ, возможно с худшей невязкой (или как там она AL> называется), но работающие с огромным числом точек? ДПФ работает с любым числом точек. Только время работы его квадратично, что для 10000 точек увеличивает время работы рахз эдак в 500... AL>>> Также интересуют алгоритмы построения огибающей заданной гладкости EM>> Преобразование Гильберта, дающее мнимую часть аналитического сигнала. EM>> Модуль комплексного аналитического сигнала дает огибающую. AL> А можно об этом подробнее? Желательно с ссылками на бумажную или AL> электронную литературу? А то я с ужасом обнаружил, что в моих учебниках AL> по вычматам по фурье HИЧЕГО нет. Рабинер и Гоулд. Цифровая обработка сигналов. (название неточно!) Бендат и Пирсол. Прикладной анализ случайных данных (Гильберт именно здесь!) EM>> Hа С есть на сайте указанной книги, но там pdf, так что придется EM>> выписывать ручками или придумать способ выдирать из pdf фрагменты. EM>> Hаучитесь - скажите мне... AL> Hаучимся -- скажем. Уже сказали. Поставить не Акробат Ридер, а просто Акробат... С уважением Евгений Машеров АКА СанитарЖеня --- ifmail v.2.15 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/3300f5ea5b2a.html, оценка из 5, голосов 10
|