Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ gamma(3m) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

exp(3M)

matherr(3M)

values(5)



gamma(3M)               LIBRARY FUNCTIONS               gamma(3M)



NAME
     gamma, lgamma - log gamma function

SYNOPSIS
     cc [flag ...] file ...  -lm [library ...]

     #include <math.h>

     double gamma (double x);

     double lgamma (double x);

     extern int signgam;

DESCRIPTION
     gamma and lgamma return
          ln(|Γ~(x)|)

     whereoo
|
~
~(x) is defined as ∫ e-ttx-1dt 0 The sign of Γ~(x) is returned in the external integer signgam. The argument x may not be a non-positive integer. The following C program fragment might be used to calculate Γ~: if ((y = gamma(x)) > LNMAXDOUBLE) error(); y = signgam * exp(y); where LNMAXDOUBLE is the least value that causes exp to return a range error, and is defined in the values.h header file. SEE ALSO exp(3M), matherr(3M), values(5). DIAGNOSTICS For non-positive integer arguments HUGE is returned and errno is set to EDOM. A message indicating SING error is printed on the standard error output. If the correct value would overflow, gamma and lgamma return HUGE and set errno to ERANGE. Except when the -Xc compilation option is used, these error-handling procedures may be changed with the function matherr. When the -Xa or -Xc compilation options are used, HUGEVAL is returned instead of HUGE and no error messages are printed. 1

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026