gamma(3)

NAZWA
gamma, gammaf, gammal - funkcja gamma (a właściwie jej logarytm)

BIBLIOTEKA
Biblioteka matematyczna (libm, -lm)

SKŁADNIA
#include <math.h>

[[przestarzałe]] double gamma(double x);
[[przestarzałe]] float gammaf(float x);
[[przestarzałe]] long double gammal(long double x);

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

gamma():
    _XOPEN_SOURCE
        || /* Od glibc 2.19: */ _DEFAULT_SOURCE
        || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

gammaf(), gammal():
    _XOPEN_SOURCE >= 600 || (_XOPEN_SOURCE && _ISOC99_SOURCE)
        || /* Od glibc 2.19: */ _DEFAULT_SOURCE
        || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

OPIS
Funkcje te są przestarzałe, należy w zamian korzystać z funkcji, w zależności od potrzeb, tgamma(3) lub lgamma(3).

Definicję funkcji Gamma opisano w podręczniku tgamma(3).

  Wersja *BSD
Biblioteka libm w 4.4BSD i niektórych wersjach FreeBSD miała funkcję gamma(), która obliczała funkcję Gamma, tak jak można by się tego spodziewać.

  Wersja glibc
glibc ma funkcję gamma(), która jest odpowiednikiem lgamma(3) i oblicza logarytm naturalny funkcji Gamma.

WARTOŚĆ ZWRACANA
Zob. lgamma(3).

BŁĘDY
Zob. lgamma(3).

ATRYBUTY
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).
Interfejs | Atrybut | Wartość
gamma(), gammaf(), gammal() | Bezpieczeństwo wątkowe | MT-niebezpieczne race:signgam

STANDARDY
Brak.

HISTORIA
SVID 2.

Ze względu na historyczne różnice w zachowaniu, w poszczególnych systemach, funkcja ta nie jest określona w żadnym współczesnym standardzie.

4.2BSD miało gamma(), która obliczała ln(|Gamma(|x|)|), pozostawiając znak Gamma(|x|) w zewnętrznej liczbie signgam. W 4.3BSD nazwę zmieniono na lgamma(3), a w podręczniku systemowym zarzekano się, że:

"W pewnym momencie nazwa gamma zostanie odzyskana i użyta dla funkcji Gamma"

Stało się tak istotnie w 4.4BSD, gdzie gamma() oblicza funkcję Gamma (bez wpływu na signgam). Jednakże stało się to zbyt późno, stąd mamy teraz funkcję tgamma(3) — „true gamma” („prawdziwą funkcję gamma”).

ZOBACZ TAKŻE
lgamma(3), signgam(3), tgamma(3)

TŁUMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika są: 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.