Текст подпрограммы и версий ( Фортран )
sf18r.zip  sf18d.zip 
Тексты тестовых примеров ( Фортран )
tsf18r.zip  tsf18d.zip 
Текст подпрограммы и версий ( Си )
sf18r_c.zip  sf18d_c.zip 
Тексты тестовых примеров ( Си )
tsf18r_c.zip  tsf18d_c.zip 
Текст подпрограммы и версий ( Паскаль )
sf18r_p.zip , sf18e_p.zip
Тексты тестовых примеров ( Паскаль )
tsf18r_p.zip , tsf18e_p.zip

Подпрограмма:  SF18R

Назначение

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

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

SF18R вычисляет функции Кельвина первого рода (ber1 (x) и bei1(x)) и второго рода (ker1 (x) и kei1 (x)) первого порядка.

J.F.Hart, E.W.Cheney, C.L.Lawson et al, Computer Approximations, Wiley, New York, 1968.

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

    SUBROUTINE  SF18R (X, BER1, BEI1, AKEI1, AKER1, IERR) 

Параметры

X - заданное значение аргумента  x (тип: вещественный);
            BER1 -
            BEI1  
         AKER1  
         AKEI1  
вычисленные значения функций ber1 (x), bei1 (x), ker1 (x), kei1 (x) соответственно (тип :вещественный);
IERR - целая переменая, служащая для сообщения об ошибках, обнаруженных в ходе работы подпрограммы; при этом:
IERR= 1 - когда значение аргумента меньше 0.; значения AKER1 и AKEI1 полагаются равными 3.4E38;
IERR=66 - когда абсолютное значение аргумента больше 57.58; значения BER1 и BEI1 полагаются равными 0.; в случае, когда аргумент неотрицателен, AKER1 и AKEI1 также полагаются равными 0., иначе AKER1 и AKEI1 полагаются равными 3.4E38.

Версии

SF18D - вычисление функций Кельвина первого порядка с повышенной точностью.

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

       SF17R -
       SF17D  
подпрограммы вычисления производных функций Кельвина нулевого порядка с обычной и повышенной точностью (используются в SF18R и SF18D).
UTSF10 - подпрограмма выдачи диагностических сообщений при работе подпрограммы SF18R.
UTSF11 - подпрограмма выдачи диагностических сообщений при работе подпрограммы SF18D.

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

 

Для подпрограммы SF18D параметры X, BER1, BEI1, AKER1 и AKEI1 имеют тип DOUBLE PRECISION и абсолютное значение аргумента не должно превосходить 2.04E03. При нарушении этого условия значение IERR полагается равным 66 и для отрицательного X значения AKER1 и AKEI1 полагаются pавными 1.7D308.

При X = 0, BER1 = 0., BEI1 = 0., AKER1 = AKEI1 = - 3.4E38 (для SF18R) или - 1.7D308 (для SF18D).

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

         X = 0.4
         CALL  SF18R (X, BER1, BEI1, AKER1, AKEI1, IERR)

Результаты:

       BER1     =  -0.144230864453, 
       BEI1      =   0.138574135911, 
       AKER1  =  -1.88202405043, 
       AKEI1   =  -1.44430515029, 
       IERR      =   0