Текст подпрограммы и версий
sf72r_p.zip
Тексты тестовых примеров
tsf72r_p.zip

Подпрограмма:  SF72R (модуль SF72R_p)

Назначение

Вычисление обратной функции двойного показательного распределения вероятностей.

Математическое описание

SF72R вычисляет значение  x такое, что  F (x, λ, A) = Р, где  F (x, λ, A) - функция двойного показательного распределения вероятностей:

                                     x
        F (x, λ, A) = λ/2  ∫ e - λ |z - A| dz ,   λ > 0
                                   -∞ 

Справочник по специальным функциям. Под ред. M.Абрамовица, И.Стеган. M.: "Hаука", 1979.

Использование

procedure SF72R(P :Real; RL :Real; A :Real; var X :Real;
                var IERR :Integer);

Параметры

P - заданное значение аргумента (тип: вещественный);
RL, A - параметры  λ, A обратной функции двойного показательного распределения (тип: вещественный);
X - вещественная переменная, содержащая вычисленное значение функции;
IERR - целая переменная, служащая для сообщения об ошибках; при этом:
IERR=65 - когда  λ ≤ 0;
IERR=66 - когда P < 0  либо P > 1;
  значение X в обоих случаях полагается равным нулю.

Версии: нет

Вызываемые подпрограммы

UTSF16 - подпрограмма выдачи диагностических сообщений при работе подпрограммы SF72R.

Замечания по использованию: нет

Пример использования

Unit tsf72r_p;
interface
uses
SysUtils, Math, { Delphi }
Lstruct, Lfunc, UtRes_p, SF72R_p;

function tsf72r: String;

implementation

function tsf72r: String;
var
IERR :Integer;
FX :Real;
begin
Result := '';  { результат функции }
SF72R(0.5,1.0,0.0,FX,IERR);
Result := Result + Format('%16.7f ',[FX]) + #$0D#$0A;
Result := Result + Format('%5d ',[IERR]) + #$0D#$0A;
UtRes('tsf72r',Result);  { вывод результатов в файл tsf72r.res }
exit;
end;

end.


Результаты:    FX  =  0.0 ,    IERR  =  0