OpenLibm/slatec/cgamr.f
Viral B. Shah c977aa998f Add Makefile.extras to build libopenlibm-extras.
Replace amos with slatec
2012-12-31 16:37:05 -05:00

36 lines
1 KiB
Fortran

*DECK CGAMR
COMPLEX FUNCTION CGAMR (Z)
C***BEGIN PROLOGUE CGAMR
C***PURPOSE Compute the reciprocal of the Gamma function.
C***LIBRARY SLATEC (FNLIB)
C***CATEGORY C7A
C***TYPE COMPLEX (GAMR-S, DGAMR-D, CGAMR-C)
C***KEYWORDS FNLIB, RECIPROCAL GAMMA FUNCTION, SPECIAL FUNCTIONS
C***AUTHOR Fullerton, W., (LANL)
C***DESCRIPTION
C
C CGAMR(Z) calculates the reciprocal gamma function for COMPLEX
C argument Z. This is a preliminary version that is not accurate.
C
C***REFERENCES (NONE)
C***ROUTINES CALLED CLNGAM, XERCLR, XGETF, XSETF
C***REVISION HISTORY (YYMMDD)
C 770701 DATE WRITTEN
C 861211 REVISION DATE from Version 3.2
C 891214 Prologue converted to Version 4.0 format. (BAB)
C***END PROLOGUE CGAMR
COMPLEX Z, CLNGAM
C***FIRST EXECUTABLE STATEMENT CGAMR
CGAMR = (0.0, 0.0)
X = REAL (Z)
IF (X.LE.0.0 .AND. AINT(X).EQ.X .AND. AIMAG(Z).EQ.0.0) RETURN
C
CALL XGETF (IROLD)
CALL XSETF (1)
CGAMR = CLNGAM(Z)
CALL XERCLR
CALL XSETF (IROLD)
CGAMR = EXP (-CGAMR)
C
RETURN
END