Текст подпрограммы и версий ( Фортран ) sf50r.zip sf50d.zip |
Тексты тестовых примеров ( Фортран ) tsf50r.zip tsf50d.zip |
Текст подпрограммы и версий ( Си ) sf50r_c.zip sf50d_c.zip |
Тексты тестовых примеров ( Си ) tsf50r_c.zip tsf50d_c.zip |
Текст подпрограммы и версий ( Паскаль ) sf50r_p.zip , sf50e_p.zip |
Тексты тестовых примеров ( Паскаль ) tsf50r_p.zip , tsf50e_p.zip |
Вычисление полных эллиптических интегралов третьего рода П (x, k).
Функция SF50R производит вычисление интегралов вида:
π/2 П (x, k) = ∫ dt / (1 + x sin 2 t) (1 - k 2 sin 2 t) 1 / 2 0 для 0 ≤ k 2 ≤ 1 и x ≠ - 1
J.F.Hart, E.W.Cheney, C.L.Lawson et al, Computer Approximations, Wiley, New York, 1968.
REAL FUNCTION SF50R (X, RK2, IERR)
Параметры
X, RK2 - | заданные значения аргументов x и k2 соответственно (тип: вещественный); |
IERR - | целая переменная, служащая для сообщения об ошибках, обнаруженных в ходе работы функции; при этом: |
IERR=65 - | когда значение X pавно - 1; значение функции полагается равным 3.4E38; |
IERR=66 - | когда значение RK2 меньше 0 или больше или pавно 1; значение функции полагается равным 3.4E38. |
Версии
SF50D - | вычисление полных эллиптических интегралов третьего рода с повышенной точностью. |
Вызываемые подпрограммы
SF14R - SF14D | вычисление полных эллиптических интегралов первого рода с обычной и повышенной точностью (используются в SF50R и SF50D соответственно). |
SF15R - SF15D | вычисление полных эллиптических интегралов второго рода с обычной и повышенной точностью (используются в SF50R и SF50D соответственно). |
SF19R - SF19D | вычисление неполных эллиптических интегралов первого рода с обычной и повышенной точностью (используются в SF50R и SF50D соответственно). |
SF20R - SF20D | вычисление неполных эллиптических интегралов второго рода с обычной и повышенной точностью (используются в SF50R и SF50D соответственно). |
UTSF14 - | подпрограмма выдачи диагностических сообщений при работе функции SF50R. |
UTSF15 - | подпрограмма выдачи диагностических сообщений при работе функции SF50D. |
Замечания по использованию
Для функции SF50D параметры X и RK2 имеют тип DOUBLE PRECISION. Значение SF50D при IERR ≠ 0 полагается pавным 1.7D308. |
X = 1. RK2 = 0.5 Y = SF50R (X, RK2, IERR) Результаты: Y = 1.27312736674 , IERR = 0