Текст подпрограммы и версий sfg8r_p.zip sfg8e_p.zip |
Тексты тестовых примеров tsfg8r_p.zip tsfg8e_p.zip |
Вычисление логарифмической производной ψ (1 + x) гамма - функции.
Функция SFG8R вычисляет логарифмическую производную
ψ(1+x) = d (ln Г(1+x)) / dx = Г '(1+x) / Г(1+x)
гамма - функции. Функцию ψ называют еще
пси - функцией. Значения x - вещественные,
причем
x ≠ - 1, - 2, ... .
Янке Е., Эмде Ф., Леш Ф. Специальные функции. М.: Наука, 1977.
function SFG8R(var X :Real; var IERR :Integer): Real;
Параметры
X - | заданное значение аргумента, X ≠ - 1, - 2, ... (тип: вещественный); |
IERR - | целая переменная, служащая для сообщения об ошибках; при этом: |
IERR=65 - | когда заданное значение аргумента X равно целому отрицательному числу; в этом случае значение SFG8R полагается равным наибольшему положительному вещественному числу, представимому на используемой машине. |
Версии
SFG8E - | вычисление логарифмической производной ψ (1 + x) гамма - функции в режиме расширенной (Extended) точности; при этом параметр X должен иметь тип Extended. |
Вызываемые подпрограммы: нет
Замечания по использованию: нет
Unit tsfg8r_p; interface uses SysUtils, Math, { Delphi } Lstruct, Lfunc, UtRes_p, SFG8R_p; function tsfg8r: String; implementation function tsfg8r: String; var IERR :Integer; X,Y :Real; begin Result := ''; { результат функции } X := 0.0; Y := SFG8R(X,IERR); Result := Result + Format('%15.8f ',[Y]) + #$0D#$0A; Result := Result + Format('%5d ',[IERR]) + #$0D#$0A; UtRes('tsfg8r',Result); { вывод результатов в файл tsfg8r.res } exit; end; end. Результаты: IERR = 0, Y = -0.5772157