Текст подпрограммы и версий ( Фортран ) av19r.zip av19d.zip av19c.zip |
Тексты тестовых примеров ( Фортран ) tav19r.zip tav19d.zip tav19c.zip |
Текст подпрограммы и версий ( Си ) av19r_c.zip av19d_c.zip av19c_c.zip |
Тексты тестовых примеров ( Си ) tav19r_c.zip tav19d_c.zip tav19c_c.zip |
Текст подпрограммы и версий ( Паскаль ) av19r_p.zip av19e_p.zip av19c_p.zip |
Тексты тестовых примеров ( Паскаль ) tav19r_p.zip tav19e_p.zip tav19c_p.zip |
Применение плоского вращения Гивенса.
Для двух заданных вещественных векторов Х и Y размерности N выполняется преобразование
| Xi | | Xi | | | : = A * | | , i = 1, ..., N , где | Yi | | Yi | | G S | A = | | - матрица вращения Гивенса. | - S G |
Векторы Х и Y не обязательно должны занимать
последовательные слова памяти машины и могут располагаться в памяти с
некоторыми постоянными интервалами между компонентами, которые
называются параметрами приращения.
Эти параметры могут быть меньше нуля, если обработка вектора
должна производиться в обратном порядке.
Дж.Форсайт, М.Малькольм, К.Моулер. Машинные методы математических вычислений. М.: Мир, 1980.
SUBROUTINE AV19R (N, SX, INCX, SY, INCY, G, S, IERR)
Параметры
N - | размерность векторов (тип: целый); |
SX, SY - | вещественные одномерные массивы длины N * | INСХ | и N * | INСY | соответственно, отвечающие векторам Х и Y; |
INCX - INCY | параметры приращения, задающие расположение векторов в массивах SХ и SY соответственно (тип: целый); |
G, S - | переменные, содержащие значения элементов матриц вращения Гивенса (тип: вещественный); |
IERR - | целая переменная, содержащая на выходе информацию о прохождении счета, при этом: |
IЕRR=65 - | если задано N = 0 . |
Версии
AV19D - | применение плоского вращения Гивенса для вещественных Х и Y, заданных с удвоенной точностью. |
AV19C - | применение плоского вращения Гивенса для комплексных Х и Y. |
Вызываемые подпрограммы
UTAV10 - | подпрограмма выдачи диагностических сообщений при работе подпрограмм АV19R и АV19С. |
UTAV11 - | подпрограмма выдачи диагностических сообщений при работе подпрограммы АV19D. |
Замечания по использованию
1. |
В подпрограмме АV19D параметры SХ, SY, G и S имеют тип DОUВLЕ РRЕСISIОN. | |
2. |
В подпрограмме АV19С параметры SХ, SY, G и S имеют тип СОМРLЕХ. | |
3. | Если вырабатывается значение IЕRR ≠ 0, то выдается соответствующее диагностическое сообщение и происходит выход из подпрограммы. Выход из подпрограммы происходит также в том случае, когда G = 1. и S = 0. |
DIMENSION SX(50), SY(50) N = 8 DO 1 J = 1, 50 SX(J) = FLOAT(J) 1 SY(J) = FLOAT(J) INCX = - 7 INCY = 4 G = 3.0 S = 7.0 CALL AV19R (N, SX, INCX, SY, INCY, G, S, IERR) Результаты: SX = ( 206., 199., 192., 185., 178., 171., 164., 157. ) ( 8 элементов с интервалом 7 ) SY = ( - 347, - 286., - 225., - 164., - 103., - 42., 19., 80. ) ( 8 элементов с интервалом 4 )