Текст подпрограммы и версий
sfa6r_c.zip  sfa6d_c.zip 
Тексты тестовых примеров
tsfa6r_c.zip  tsfa6d_c.zip 

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

Назначение

Вычисление функции Бесселя третьего рода (функции Ханкеля) Hn (x) целых порядков от вещественных аргументов.

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

Подпрограмма sfa6r_c вычисляет комплексно - значную функцию Бесселя третьего рода (функцию Ханкеля)

             Hn(x)     =     Jn(x)   ±   i Nn(x)     =     H1   ±   i H2

для  n ≥ 0 и вещественных значений  x . Здесь Jn (x) и Nn (x) - функции Бесселя первого и второго родов соответственно. Для вычисления Hn (x) используется разложение этой функции в ряд.

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

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

    int sfa6r_c (integer *n, real *x, real *h1, real *h2)

Параметры

n - заданный порядок функции Hn (x), n ≥ 0 (тип: целый);
x - заданное значение аргумента  x  (тип: вещественный);
h1, h2 - вещественные переменные, значения которых на выходе полагаются равными вещественной и мнимой части функции Hn (x) соответственно.

Версии

sfa6d_c - вычисление функции Бесселя третьего рода (функции Ханкеля) Hn (x) целых порядков от вещественных аргументов в режиме удвоенной точности; при этом параметры x, h1 и h2 должны иметь тип double.

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

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

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

int main(void)
{
    /* Local variables */
    extern int sfa6r_c(int *, float *, float *, float *);
    static int n;
    static float x, h1, h2;

    n = 3;
    x = 4.f;
    sfa6r_c(&n, &x, &h1, &h2);

    printf("\n %16.7e  %16.7e \n", h1, h2);
    return 0;
} /* main */


Результаты:      h1   =   0.4301715,       h2   =   -0.1820221