Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Введение
Библиотека программного обеспечения для вычисления дискретных преобразований Фурье.
Software library for computing discrete Fourier transforms
Самое быстрое преобразование Фурье на Западе (FFTW) — это библиотека программного обеспечения для вычисления дискретных преобразований Фурье (ДПФ), разработанная Маттео Фриго и Стивеном Г. Джонсоном в Массачусетском технологическом институте. FFTW является одной из самых быстрых бесплатных программных реализаций быстрого преобразования Фурье (БПФ). Она реализует алгоритм БПФ для массивов вещественных и комплексных чисел произвольного размера и размерности.
The Fastest Fourier Transform in the West (FFTW) is a software library for computing discrete Fourier transforms (DFTs) developed by Matteo Frigo and Steven G. Johnson at the Massachusetts Institute of Technology. FFTW is one of the fastest free software implementations of the fast Fourier transform (FFT). It implements the FFT algorithm for real and complex valued arrays of arbitrary size and dimension.
Библиотека
FFTW быстро преобразует данные, поддерживая различные алгоритмы и выбирая тот (особое разложение преобразования на более мелкие преобразования), который, по его оценкам или измерениям, является предпочтительным в данных обстоятельствах. Он наиболее эффективно работает с массивами размеров, имеющими небольшие простые множители, при этом степени двойки являются оптимальными, а большие простые числа – наихудшим случаем (но всё равно со сложностью O(n log n)). Для разложения преобразований составных размеров на более мелкие преобразования он выбирает из нескольких вариантов алгоритма FFT Cooley-Tukey (соответствующих различным факторизациям и/или различным схемам доступа к памяти), а для простых размеров использует алгоритм FFT Rader'а или Bluestein'а. FFTW используется в коммерческом пакете матриц MATLAB для вычисления БПФ. FFTW написана на языке C, но существуют интерфейсы для Fortran и Ada, а также для нескольких других языков. Хотя сама библиотека реализована на C, код фактически генерируется из программы под названием "genfft", написанной на OCaml. В 1999 году FFTW была удостоена премии имени Дж. Х. Уилкинсона за численное программное обеспечение.
FFTW expeditiously transforms data by supporting a variety of algorithms and choosing the one (a particular decomposition of the transform into smaller transforms) it estimates or measures to be preferable in the particular circumstances. It works best on arrays of sizes with small prime factors, with powers of two being optimal and large primes being worst case (but still O(n log n)). To decompose transforms of composite sizes into smaller transforms, it chooses among several variants of the Cooley–Tukey FFT algorithm (corresponding to different factorizations and/or different memory access patterns), while for prime sizes it uses either Rader's or Bluestein's FFT algorithm. and is used in the commercial MATLAB matrix package for calculating FFTs. FFTW is written in the C language, but Fortran and Ada interfaces exist, as well as interfaces for a few other languages. While the library itself is C, the code is actually generated from a program called 'genfft', which is written in OCaml. In 1999, FFTW won the J. H. Wilkinson Prize for Numerical Software.