Документация Engee

Преобразования Фурье

Этот пакет расширяет функциональность, предоставляемую AbstractFFT. Дополнительные сведения об этих функциях можно найти в документации по пакету.

Следующие функции являются уникальными для этого пакета.

# FFTW.r2rFunction

r2r(A, kind [, dims])

Выполняет многомерное преобразование входного и выходного вещественных сигналов (r2r) типа kind массива A, как определено в руководстве по FFTW. kind задает дискретное косинусное преобразование различных типов (FFTW.REDFT00, FFTW.REDFT01, FFTW.REDFT10 или FFTW.REDFT11), дискретное синусное преобразование различных типов (FFTW.RODFT00, FFTW.RODFT01, FFTW.RODFT10 или FFTW.RODFT11), дискретное преобразование Фурье входного вещественного сигнала с выходным полукомплексным форматом (FFTW.R2HC и его обратное FFTW.HC2R) или дискретное преобразование Хартли (FFTW.DHT). Аргумент kind может быть массивом или кортежем, позволяющим задавать различные типы преобразований для разных измерений A. kind[end] используется для любых неуказанных измерений. Точные определения этих типов преобразований см. в руководстве по FFTW по адресу: http://www.fftw.org/doc.

Необязательный аргумент dims задает итерируемое подмножество измерений (например, целое число, диапазон, кортеж или массив) для преобразования. kind[i] — это тип преобразования для dims[i], где kind[end] используется при i > length(kind).

См. также описание plan_r2r со сведениями о предварительном планировании оптимизированных преобразований r2r.

# FFTW.r2r!Function

r2r!(A, kind [, dims])

Аналогична r2r, но работает на месте в A, который должен быть массивом вещественных или комплексных чисел с плавающей запятой.

# FFTW.plan_r2rFunction

plan_r2r(A, kind [, dims [, flags [, timelimit [, num_threads]]]])

Предварительно планирует оптимизированное преобразование r2r аналогично plan_fft, за исключением того, что преобразования (и первые три аргумента) соответствуют r2r и r2r!, соответственно.

# FFTW.plan_r2r!Function

plan_r2r!(A, kind [, dims [, flags [, timelimit [, num_threads]]]])

Аналогична plan_fft, но относится к r2r!.

# FFTW.dctFunction

dct(A [, dims])

Выполняет многомерное дискретное косинусное преобразование (DCT) второго типа для массива A, используя унитарную нормализацию DCT. Необязательный аргумент dims задает итерируемое подмножество измерений (например, целое число, диапазон, кортеж или массив) для преобразования. Наиболее эффективен, если размер A в преобразованных измерениях является произведением малых простых чисел. См. описание nextprod. См. также описание функции plan_dct, имеющей более высокую эффективность.

# FFTW.idctFunction

idct(A [, dims])

Вычисляет многомерное обратное дискретное косинусное преобразование (DCT) для массива A (технически DCT третьего типа с унитарной нормализацией). Необязательный dims аргумент задает итерируемое подмножество измерений (например, целое число, диапазон, кортеж или массив) для преобразования. Наиболее эффективен, если размер A в преобразованных измерениях является произведением малых простых чисел. См. описание nextprod. См. также описание функции plan_idct, имеющей большую эффективность.

# FFTW.dct!Function

dct!(A [, dims])

Аналогична dct, но работает на месте в A, который должен быть массивом вещественных или комплексных чисел с плавающей запятой.

# FFTW.idct!Function

idct!(A [, dims])

Аналогична idct, но работает на месте в A.

# FFTW.plan_dctFunction

plan_dct(A [, dims [, flags [, timelimit [, num_threads]]]])

Предварительно планирует оптимизированное дискретное косинусное преобразование (DCT) аналогично plan_fft, за исключением создания функции, вычисляющей dct. Первые два аргумента имеют то же значение, что и для dct.

# FFTW.plan_idctFunction

plan_idct(A [, dims [, flags [, timelimit [, num_threads]]]])

Предварительно планирует оптимизированное обратное дискретное косинусное преобразование (DCT) аналогично plan_fft, за исключением создания функции, вычисляющей idct. Первые два аргумента имеют то же значение, что и для idct.

# FFTW.plan_dct!Function

plan_dct!(A [, dims [, flags [, timelimit [, num_threads]]]])

Аналогична plan_dct, но работает на месте в A.

# FFTW.plan_idct!Function

plan_idct!(A [, dims [, flags [, timelimit [, num_threads]]]])

Аналогична plan_idct, но работает на месте в A.