Форум: "Media";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];
ВнизFFT Найти похожие ветки
← →
ST (2004-01-26 19:25) [0]Здравствуй многоуважаемый ALL! Не подскажешь ли мне, где можно найти библиотеку, модуль, или просто процедуру FFT? Заранее благодарен.
← →
Плохиш_ (2004-01-26 19:29) [1]в интернете
← →
Mihey © (2004-01-26 20:04) [2]Есть такой faq - называется Kuliba1000. В нём есть статейка на этот счёт.
← →
Brahman © (2004-01-26 20:53) [3]// fft.h
#define FFT -1
#define REV_FFT 1
void fft(float *real,float *imaginary,int order,int param);
// fft.c
/*
Radix 2 FFT calculation
order = the order of FFT ( pow(2,order) calculated complex points )
param = FFT - performs FFT
param = REV_FFT - performs reverse FFT
x = pointer to real
y = pointer to immaginary
*/
#include <math.h>
#include "fft.h"
#define M_PI 3.14159265359
void fft(float *x,float *y,int order,int param)
{
unsigned int n,l,e,f,i,j,o,o1,j1,i1,k;
float u,v,z,c,s,p,q,r,t,w,a;
n=1u<<order;
for(l=1;l<=order;l++)
{
u=1.0;
v=0.0;
e=1u<<(order-l+1);
f=e/2;
z=M_PI/f;
c=cos(z);
s=sin(z);
if(param==FFT) s=-s;
for(j=1;j<=f;j++)
{
for(i=j;i<=n;i+=e)
{
o=i+f-1;
o1=i-1;
p=x[o1]+x[o];
r=x[o1]-x[o];
q=y[o1]+y[o];
t=y[o1]-y[o];
x[o]=r*u-t*v;
y[o]=t*u+r*v;
x[o1]=p;
y[o1]=q;
}
w=u*c-v*s;
v=v*c+u*s;
u=w;
}
}
j=1;
for(i=1;i<n;i++)
{
if(i<j)
{
j1=j-1;
i1=i-1;
p=x[j1];
q=y[j1];
x[j1]=x[i1];
y[j1]=y[i1];
x[i1]=p;
y[i1]=q;
}
k=n/2;
while(k<j)
{
j=j-k;
k=k/2;
}
j+=k;
}
if(param==FFT) return;
a=1.0/n;
for(k=0;k<n;k++)
{
x[k]*=a;
y[k]*=a;
}
return;
}
← →
just me (2004-01-26 21:34) [4]Например, тут:
http://www.efg2.com/Lab/Library/mathematics.htm#Fourier
← →
Digitman © (2004-01-27 08:18) [5]
> ST (26.01.04 19:25)
на сайте у Интела - Intel Signal processing Library
там же есть демо-проект для тестирования возможностей библиотеки в среде Делфи
← →
Tolyan (2004-01-27 10:50) [6]> Digitman
Нету на сайте Интела этой Библиотеки
я уже давно ищу этот Intel Signal processing Library
может мне кто подскажет, где найти.
А FFT когда-то на Pascal написал, если очень надо, то могу выслать. Но хочется чего-то оптимального
← →
Digitman © (2004-01-27 11:27) [7]
> Tolyan (27.01.04 10:50) [6]
а была
я скачивал ISPL v4.2 именно оттуда
вероятно, теперь ее следует поискать на filesearch.ru
← →
Jolik (2004-01-27 11:53) [8]http://homepages.borland.com/efg2lab/Library/Delphi/MathFunctions/Engineering.htm
← →
Jolik (2004-01-27 11:55) [9]http://www.teworks.com/download.htm
← →
ST (2004-01-27 19:06) [10]Спасибо всем огромное ;-)
← →
тихий вовочка (2004-01-27 19:10) [11]Intel Signal Processing Library нет на интеловском сайте(вместо него Math Kernel Library), но рпи желании скачать можно на сайте LCard. А для БПФ лучшее что я нашел и использую - FFTW www.fftw.org, чего и вам желаю
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.034 c