Текст подпрограммы и версий ( Фортран ) sf88r.zip sf88d.zip sf88c.zip |
Тексты тестовых примеров ( Фортран ) tsf88r.zip tsf88d.zip tsf88c.zip |
Текст подпрограммы и версий ( Си ) sf88r_c.zip sf88d_c.zip sf88c_c.zip |
Тексты тестовых примеров ( Си ) tsf88r_c.zip tsf88d_c.zip tsf88c_c.zip |
Текст подпрограммы и версий ( Паскаль ) sf88r_p.zip sf88e_p.zip sf88c_p.zip |
Тексты тестовых примеров ( Паскаль ) tsf88r_p.zip tsf88e_p.zip tsf88c_p.zip |
Вычисление конфлюентной гипергеометрической функции 1F1 (a, c; z) вещественного переменного z с вещественными параметрами a и c .
Подпрограмма SF88R вычисляет значение конфлюентной (вырожденной) гипергеометрической функции(ряда) 1F1 (a, c; z) при заданных значениях вещественного переменного z и вещественных параметров a, c посредством суммирования соответствующего ряда. Если прибавление нового члена ряда к накопленной его частичной сумме не изменяет ее значения, то вычисления заканчиваются, т.к. в этом случае достигнута машинная точность. Если после заданного заранее количества ITMAX таких итераций машинная точность не достигается, то выдается соответствующее диагностическое сообщение. В этом случае подпрограмма получает результат без гарантированной точности. Повторным обращением к подпрограмме с увеличенным значением ITMAX можно попытаться повысить точность результата. Выполненное количество итераций присваивается переменной ITER.
Абрамовиц М., Стиган И. Справочник по специальным функциям. М.: Наука, 1979.
SUBROUTINE SF88R (A, C, Z, ITMAX, S, ITER, IERR)
Параметры
A, C - | заданные значения параметров конфлюентной гипергеометрической функции (тип: вещественный); |
Z - | заданное значение переменной, при котором требуется вычислить конфлюентную гипергеометрическую функцию (тип: вещественный); |
ITMAX - | заданное максимально допустимое количество итераций при суммировании ряда; |
S - | вещественная переменная, значение которой на выходе полагается равным вычисленному значению функции; |
ITER - | целая переменная, значение которой на выходе полагается равным выполненному количеству итераций, требуемых для достижения машинной точности; |
IERR - | целая переменная, служащая для сообщения об ошибках, обнаруженных в процессе счета; при этом: |
IERR=65 - | когда машинная точность не достигается за заданное максимальное количество итераций ITMAX. |
Версии
SF88D - | вычисление конфлюентной гипергеометрической функции 1F1 (a, c; z) вещественного переменного z с вещественными параметрами a и c в режиме удвоенной точности; при этом параметры A, C, Z и S должны иметь тип DOUBLE PRECISION. |
SF88C - | вычисление конфлюентной гипергеометрической функции 1F1 (a, c; z) комплексного переменного z с комплексными параметрами a и c; при этом параметры A, C, Z и S должны иметь тип COMPLEX. |
Вызываемые подпрограммы:
UTSF12 - UTSF13 | подпрограммы выдачи диагностических сообщений при работе SF88R и SF88D соответственно. |
Замечания по использованию: нет
A = 1.0 C = 1.0 Z = -1.0 ITMAX = 100 CALL SF88R (A, C, Z, ITMAX, S, ITER, IERR) Результаты: S = 0.3678794 ITER = 21 IERR = 0