y0(3)

NAZWA
y0, y0f, y0l, y1, y1f, y1l, yn, ynf, ynl - funkcje Bessela drugiego rodzaju

BIBLIOTEKA
Biblioteka matematyczna (libm, -lm)

SKŁADNIA
#include <math.h>

double y0(double x);
double y1(double x);
double yn(int n, double x);

float y0f(float x);
float y1f(float x);
float ynf(int n, float x);

long double y0l(long double x);
long double y1l(long double x);
long double ynl(int n, long double x);

    Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):

y0(), y1(), yn():
    _XOPEN_SOURCE
        || /* Od glibc 2.19: */ _DEFAULT_SOURCE
        || /* glibc <= 2.19: */ _SVID_SOURCE || _BSD_SOURCE

y0f(), y0l(), y1f(), y1l(), ynf(), ynl():
    _XOPEN_SOURCE >= 600
        || (_ISOC99_SOURCE && _XOPEN_SOURCE)
        || /* Od glibc 2.19: */ _DEFAULT_SOURCE
        || /* glibc <= 2.19: */ _SVID_SOURCE || _BSD_SOURCE

OPIS
Funkcje y0() i y1() zwracają wartość w punkcie x funkcji Bessela drugiego rodzaju rzędów, odpowiednio, 0 i 1. Funkcja yn() zwraca wartość w punkcie x funkcji Bessela drugiego rodzaju rzędu n.

Wartość x musi być dodatnia.

Funkcje y0f(), y1f() i ynf() są wersjami przyjmującymi i zwracającymi wartości float. y01(), y1l() i ynl() są wersjami funkcji przyjmującymi i zwracającymi wartości long double.

WARTOŚĆ ZWRACANA
Funkcje te, gdy się zakończą pomyślnie, zwracają odpowiednie wartości funkcji Bessela drugiego rodzaju dla argumentu x.

Jeśli x wynosi NaN, to zwracane jest NaN.

Jeśli x jest ujemne, występuje błąd dziedziny i funkcje odpowiednio zwracają HUGE_VAL, -HUGE_VALF lub -HUGE_VALL. (POSIX.1-2001 w tych wypadkach zezwala również na zwracanie NaN).

Jeśli x jest równe 0.0, występuje błąd bieguna i funkcje odpowiednio zwracają -HUGE_VAL, -HUGE_VALF lub -HUGE_VALL.

Jeśli wartość wynikowa jest zbyt mała, to występuje błąd przekroczenia zakresu i funkcje zwracają 0.0.

Jeśli wartość wynikowa jest zbyt duża, występuje błąd przekroczenia zakresu i funkcje odpowiednio zwracają HUGE_VAL, -HUGE_VALF lub -HUGE_VALL. (POSIX.1-2001 w tych wypadkach zezwala również na zwracanie 0.0).

BŁĘDY
Informacje o tym, jak określić, czy wystąpił błąd podczas wywołania tych funkcji, można znaleźć w podręczniku math_error(7).

Mogą wystąpić następujące błędy:

Błąd dziedziny: x jest ujemne
    errno jest ustawiane na EDOM. Rzucany jest wyjątek niepoprawnej operacji zmiennoprzecinkowej (FE_INVALID).

Błąd bieguna: x jest równe 0.0
    errno jest ustawiane na ERANGE i rzucany jest wyjątek FE_DIVBYZERO (lecz zob. USTERKI).

Błąd zakresu: przekroczenie w dół wartości wynikowej
    errno jest ustawiane na ERANGE. fetestexcept(3) nie zwraca wyjątku FE_UNDERFLOW w takim wypadku.

Błąd zakresu: przekroczenie w górę wartości wynikowej
    errno jest ustawiane na ERANGE (ale patrz USTERKI). Rzucany jest wyjątek przekroczenia zakresu operacji zmiennoprzecinkowej (FE_OVERFLOW).

ATRYBUTY
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).
Interfejs | Atrybut | Wartość
y0(), y0f(), y0l() | Bezpieczeństwo wątkowe | MT-bezpieczne
y1(), y1f(), y1l() | Bezpieczeństwo wątkowe | MT-bezpieczne
yn(), ynf(), ynl() | Bezpieczeństwo wątkowe | MT-bezpieczne

STANDARDY

y0()
y1()
yn()
    POSIX.1-2008.

Pozostałe:
    BSD.

HISTORIA

y0()
y1()
yn()
    SVr4, 4.3BSD, POSIX.1-2001.

Pozostałe:
    BSD.

USTERKI
Przed glibc 2.19, funkcje te źle diagnozowały błędy bieguna: errno było ustawiane na EDOM, zamiast na ERANGE i nie był rzucany wyjątek FE_DIVBYZERO.

Przed glibc 2.17, nie było ustawiane errno dla: „Błąd zakresu: przekroczenie w dół wartości wynikowej”.

W glibc 2.3.2 i wcześniejszych, funkcje te nie rzucały wyjątku niepoprawnej operacji zmiennoprzecinkowej (FE_INVALID) w razie wystąpienia błędu dziedziny funkcji.

ZOBACZ TAKŻE
j0(3)

TŁUMACZENIE
Tłumaczenie niniejszej strony podręcznika: Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 (https://www.gnu.org/licenses/gpl-3.0.html) lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.