Текст подпрограммы и версий
sfa1r_p.zip  sfa1e_p.zip 
Тексты тестовых примеров
tsfa1r_p.zip  tsfa1e_p.zip 

Подпрограмма:  SFA1R (модуль SFA1R_p)

Назначение

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

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

Подпрограмма SFA1R вычисляет значение комплексной интегральной показательной функции

     W(k, z)  =  Re W + i Im W  =
                                         
                         =  zk  ez   ∫  e - t / zk  dt ,
                                        z

где  z  =  x + i y,  а  k - вещественный параметр.

Вычисления проводятся по следующим рекуррентным формулам для   n = 2, 3, 4, ...

             Dn  =  z / (z + m Dn - 1) ,
             Rn  =  (Dn - 1) Rn-1 ,
             Cn  =  Cn-1 + Rn , 

 где D1  =  R1  =  C1  =  1 ,
             m  =  k - 1 + (n - 2)/2 ,  если  n - четное 
             m  =  (n + 2)/2 ,           если  n - нечетное 

Вычисления прекращаются, когда модуль разности между Cn и Cn - 1 становится меньше заданной точности EPS.

Сходимость имеет место на всей комплексной плоскости, за исключением начала координат и отрицательной вещественной оси. Сходимость замедляется для  | z | < 0.05  и для некоторой области, зависящей от  k,  внутри полосы  | y | < 2,  x < 0 .

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

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

procedure SFA1R(X :Real; Y :Real; RK :Real; EPS :Real; var REW :Real;
                var RIMW :Real; var N :Integer);

Параметры

X, Y - вещественная и мнимая части заданного значения аргумента  z  (тип: вещественный);
RK - заданное значение параметра  k  (тип: вещественный);
EPS - заданная точность вычисления комплексной интегральной показательной функции (тип: вещественный);
         REW -
         RIMW  
вещественные переменные, которым присваиваются вычисленные вещественная и мнимая части комплексной интегральной показательной функции;
N - целая переменная, значение которой полагается равным количеству итераций по рекуррентным расчетным формулам, выполненным для достижения заданной точности EPS.

Версии

SFA1E - вычисление комплексной интегральной показательной функции в режиме расширенной (Extended) точности; при этом параметры X, Y, RK, EPS, REW, RIMW должны иметь тип Extended.

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

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

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

Unit tsfa1r_p;
interface
uses
SysUtils, Math, { Delphi }
Lstruct, Lfunc, UtRes_p, SFA1R_p;

function tsfa1r: String;

implementation

function tsfa1r: String;
var
N :Integer;
X,Y,RK,EPS,REW,RIMW :Real;
begin
Result := '';  { результат функции }
X := 1.0;
Y := 1.0;
RK := 1.0;
EPS := 0.000001;
SFA1R(X,Y,RK,EPS,REW,RIMW,N);
Result := Result + Format(' %16.7f %16.7f ',[REW,RIMW]) + #$0D#$0A;
Result := Result + Format('%5d ',[N]) + #$0D#$0A;
UtRes('tsfa1r',Result);  { вывод результатов в файл tsfa1r.res }
exit;
end;

end.


Результаты:

       REW = 0.6733211 , 
       RIMW = 0.1478637 ,  
       N = 34