y0, y0f, y0l, y1, y1f, y1l, yn, ynf, ynl - funkcje Bessela drugiego rodzaju
Math library (
libm,
-lm)
#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);
y0(),
y1(),
yn():
_XOPEN_SOURCE
|| /* Since 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)
|| /* Since glibc 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _SVID_SOURCE || _BSD_SOURCE
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.
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).
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 is set to ERANGE and an
FE_DIVBYZERO exception is raised (but see BUGS).
- 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 is set to ERANGE (but see BUGS). An
overflow floating-point exception ( FE_OVERFLOW) is raised.
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-Safe |
y1(), y1f(), y1l() |
Bezpieczeństwo wątkowe |
MT-Safe |
yn(), ynf(), ynl() |
Bezpieczeństwo wątkowe |
MT-Safe |
Funkcje zwracające wartość typu
double są
zgodne z SVr4, 4.3BSD, POSIX.1-2001, POSIX.1-2008. Pozostałe funkcje
są funkcjami niestandardowymi istniejącymi także w
systemach BSD.
Before glibc 2.19, these functions misdiagnosed pole errors:
errno was
set to
EDOM, instead of
ERANGE and no
FE_DIVBYZERO
exception was raised.
Before glibc 2.17, did not set
errno for "range error: result
underflow".
In glibc 2.3.2 and earlier, these functions do not raise an invalid
floating-point exception (
FE_INVALID) when a domain error occurs.
j0(3)
Autorami polskiego tłumaczenia niniejszej strony podręcznika
są: Andrzej Krzysztofowicz <
[email protected]>, Robert
Luberda <
[email protected]> i Michał Kułach
<
[email protected]>
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 lub nowszej. Nie przyjmuje się
ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy
zgłaszać na adres listy dyskusyjnej
[email protected]