ALGAMS
Returns the logarithm of the absolute value of the gamma function and the sign of gamma.
Required Arguments
X — Argument for which the logarithm of the absolute value of the gamma function is desired. (Input)
ALGM — Result of the calculation. (Output)
S — Sign of gamma(X). (Output)
If gamma(X) is greater than or equal to zero, S = 1.0. If gamma(X) is less than zero, S = 1.0.
FORTRAN 90 Interface
Generic: CALL ALGAMS (X, ALGM, S)
Specific: The specific interface names are S_ALGAMS and D_ALGAMS.
FORTRAN 77 Interface
Single: CALL ALGAMS (X, ALGM, S)
Double: The double precision function name is DLGAMS.
Description
The function ALGAMS computes ln ∣Γ(x) and the sign of Γ(x). See GAMMA for the definition of Γ(x).
The result overflows if x is too large. The accuracy is worse than half precision if x is too close to a negative integer.
Comments
Informational Error
Type
Code
Description
3
2
Result of ALGAMS is accurate to less than one‑half precision because X is too near a negative integer.
Example
In this example, ln ∣Γ(1.85) and the sign of Γ(1.85) are computed and printed.
 
USE ALGAMS_INT
USE UMACH_INT
 
IMPLICIT NONE
! Declare variables
INTEGER NOUT
REAL VALUE, S, X
! Compute
X = 1.85
CALL ALGAMS(X, VALUE, S)
! Print the results
CALL UMACH (2, NOUT)
WRITE (NOUT,99998) X, VALUE
99998 FORMAT (' Log Abs(Gamma(', F6.3, ')) = ', F6.3)
WRITE (NOUT,99999) X, S
99999 FORMAT (' Sign(Gamma(', F6.3, ')) = ', F6.2)
END
Output
 
Log Abs(Gamma( 1.850)) = -0.056
Sign(Gamma( 1.850)) = 1.00