fftw
Быстрое преобразование Фурье на основе библиотеки fftw
Синтаксис
[y]=fftw(x) [y]=fftw(x,sign) [y]=fftw(x,sign,dim,incr) [y]=fftw(x,sign,[dim1 dim2 ...dimN],[incr1 incr2 ...incrN])
Аргументы
- y,x
matrix/вектор вещественных/комплексных данных. Входные/выходные данные, которые должны быть преобразованы.
- sign
Целое число. 1 или -1. Устанавливает прямое или обратное преобразование.
- dim
Целое число. Устанавливает размерность (длину) преобразования.
- incr
Целое число. Устанавливает шаг (интервал) преобразования.
Описание
Эта функция реализует прямое/обратное Дискретное Преобразование Фурье (ДПФ) с помощью библиотеки FFTW.
С помощью этой функции можно делать одномерное (вектор), двумерное, и многомерное преобразование.
За подробной информацией о синтаксисе fftw обращайтесь к функции fft Scilab'а.
За подробной информацией о библиотеке FFTW обращайтесь на вэб-сайт FFTW : http://www.fftw.org
Примечание: Функция fftw автоматически сохраняет свои последние параметры в памяти для повторного использования.
Это значительно улучшает время вычисления при выполнении последовательных вызовов.
Примеры
//простое одномерное прямое преобразование a = rand(50,1)+%i*rand(50,1); y = fftw(a); y = fftw(a,-1); //обратное преобразование b = fftw(y,1); //двумерное преобразование a = rand(512,512)+%i*rand(512,512); y = fftw(a); //многомерное преобразование -старая последовательность вызова- a = rand(120,1); y = a; dim=[5 6 4]; incr=[1 5 30]; for i=1:3 y = fftw(y,-1,dim(i),incr(i)); end //многомерное преобразование -новая последовательность вызова- //Более эффективна, чем старая y = fftw(a,-1,[5 6 4],[1 5 30]); b = fftw(y,1,[5 6 4],[1 5 30]);
Смотрите также
- fftw_flags — устанавливают метод вычисления быстрого преобразования Фурье функции fftw
- get_fftw_wisdom — возврат опыта fftw
- set_fftw_wisdom — Устанавливает опыт fftw
- fftw_forget_wisdom — Сброс опыта fftw
Литература
Matteo Frigo and Steven G. Johnson, "FFTW Documentation" http://www.fftw.org/#documentation
Report an issue | ||
<< FFTW | FFTW | fftw_flags >> |