Текст подпрограммы и версий
sf12r_p.zip , sf12e_p.zip
Тексты тестовых примеров
tsf12r_p.zip , tsf12e_p.zip

Функция:  SF12R (модуль SF12R_p)

Назначение

Вычисление интеграла Доусона.

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

Функция SF12R производит вычисление интеграла

                   x
     y = e-x*x ∫ et*tdt
                  0 

для всех вещественных  x,  используя рациональные чебышевские аппроксимации.

W.Cody, K.A.Paciorek, H.C.Thacher, Chebyshev Approximations for Dawson's Integral, Math. Comp., 24, 1970.

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

function SF12R(X :Real): Real;

Параметры

X - заданное значение аргумента x (тип: вещественный).

Версии

SF12E - вычисление интеграла Доусона с расширенной (Extended) точностью.

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

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

  Функции SF12R и SF12E производят вычисления для всех  x,  представимых на машине типами Real и Extended соответственно.

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

Unit tsf12r_p;
interface
uses
SysUtils, Math, { Delphi }
Lstruct, Lfunc, UtRes_p, SF12R_p;

function tsf12r: String;

implementation

function tsf12r: String;
var
X,Y :Real;
begin
Result := '';  { результат функции }
X := -1.6;
Y := SF12R(X);
Result := Result + Format(' %20.16f %20.16f ',[X,Y]) + #$0D#$0A;
UtRes('tsf12r',Result);  { вывод результатов в файл tsf12r.res }
exit;
end;

end.


Результат:

       Y  =  -0.399939894324