Текст подпрограммы и версий ( Фортран )
fta2r.zip , fta2d.zip
Тексты тестовых примеров ( Фортран )
tfta2r.zip , tfta2d.zip
Текст подпрограммы и версий ( Си )
fta2r_c.zip , fta2d_c.zip
Тексты тестовых примеров ( Си )
tfta2r_c.zip , tfta2d_c.zip
Текст подпрограммы и версий ( Паскаль )
fta2r_p.zip , fta2e_p.zip
Тексты тестовых примеров ( Паскаль )
tfta2r_p.zip , tfta2e_p.zip

Подпрограмма:  FTA2R

Назначение

Одновременное выполнение прямого быстрого дискретного преобразования Фурье двух одномерных массивов вещественных чисел, каждый из которых имеет длину  N, равную целой степени двух.

Математическое описание

Подпрограмма FTA2R упаковывает два заданных одномерных массива вещественных чисел в один комплексный массив, затем обращается к подпрограмме FTA1R для выполнения прямого преобразования этого комплексного массива, после чего полученный преобразованный массив распаковывается в виде двух комплексных массивов, представляющих собой искомые преобразования исходных вещественных массивов.

Н.С.Бахвалов, Н.П.Жидков, Г.М.Кобельков. Численные методы. Изд - во "Наука", 1987.

Использование

    SUBROUTINE  FTA2R (ARRAY1, ARRAY2, FFTA1, FFTA2, N) 

Параметры

ARRAY1 - вещественный одномерный массив длины  N, содержащий компоненты первого исходного массива вещественных чисел;
ARRAY2 - вещественный одномерный массив длины  N, содержащий компоненты второго исходного массива вещественных чисел;
FFTA1 - комплексный одномерный массив длины  N, содержащий на выходе прямое преобразование Фурье массива ARRAY1;
FFTA2 - комплексный одномерный массив длины  N, содержащий на выходе прямое преобразование Фурье массива ARRAY2;
N - длина исходных преобразуемых массивов (тип: целый).

Версии

FTA2D - одновременное выполнение прямого быстрого дискретного преобразования Фурье двух одномерных вещественных чисел, каждый из которых имеет длину  N, равную целой степени двух, в режиме удвоенной точности. Эта версия имеется только для тех компиляторов, входной язык которых допускает обработку комплексных чисел удвоенной точности; в этом случае параметры ARRAY1 и ARRAY2 должны иметь тип DOUBLE PRECISION, а параметры FFTA1 и FFTA2 - тип COMPLEX * 16.

Вызываемые подпрограммы

       FTA1C -
       FTA1P  
выполнение прямого и обратного быстрых преобразований Фурье одномерного массива комплексных чисел длины  N, равной целой степени двух, в режимах одинарной и удвоенной точности; используются в подпрограммах FTA2R и FTA2D соответственно.

Замечания по использованию

  В подпрограммах FTA2R и FTA2D проверка того, что значение  N должно быть целой степенью двух, не производится.

Пример использования

       DIMENSION  ARRAY1(4), ARRAY2(4), FFTA1(4), FFTA2(4) 
       COMPLEX  FFTA1, FFTA2 
       ARRAY1(1) = 1.0 
       ARRAY1(2) = 4.0 
       ARRAY1(3) = 7.0 
       ARRAY1(4) = 10.0 
       DO 1  I = 1, 4 
    1 ARRAY2(I) = ARRAY1(I) 
       CALL  FTA2R (ARRAY1, ARRAY2, FFTA1, FFTA2, 4) 

Результаты:

        FFTA1(1) = (22.0, 0.0) ,  FFTA1(2) = (- 6.0, - 6.0) 
        FFTA1(3) = (- 6.0, 0.0) ,  FFTA1(4) = (- 6.0,   6.0) 

        FFTA2(1) = (22.0, 0.0) ,   FFTA2(2) = (- 6.0, - 6.0) 
        FFTA2(3) = (- 6.0, 0.0) ,   FFTA2(4) = (- 6.0,   6.0)