|
Текст подпрограммы и версий 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