Chapter 4: Gamma Function and Related Functions

ALBETA

This function evaluates the natural logarithm of the complete beta function for positive arguments.

Function Return Value

ALBETA — Function value.   (Output)
ALBETA returns ln β(A, B) = ln(Γ(A) Γ(B)/ Γ(A + B)).

Required Arguments

A — The first argument of the BETA function.   (Input)
For real arguments, A must be greater than zero.

B — The second argument of the BETA function.   (Input)
For real arguments, B must be greater than zero.

FORTRAN 90 Interface

Generic:                              ALBETA (A, B)

Specific:                             The specific interface names are S_ALBETA, D_ALBETA, and C_ALBETA.

FORTRAN 77 Interface

Single:                                ALBETA (A, B)

Double:                              The double precision function name is DLBETA.

Complex:                            The complex name is CLBETA.

Description

ALBETA computes ln β(a, b) = ln β(b, a). See BETA for the definition of β(ab).

For real arguments, the function ALBETA is defined for a > 0 and b > 0. It returns accurate results even when a or b is very small. It can overflow for very large arguments; this error condition is not detected except by the computer hardware.

For complex arguments, the arguments a, b and a + b must not be close to negative integers (even though some combinations ought to be allowed). The arguments should not be so large that the logarithm of the gamma function overflows (presumably an improbable condition).

Comments

Note that ln β(A, B) = ln β(B, A).

Example 1

In this example, ln β(2.2, 3.7) is computed and printed.

 

      USE ALBETA_INT

      USE UMACH_INT

 

      IMPLICIT   NONE

!                                 Declare variables

      INTEGER    NOUT

      REAL       A, VALUE, X

!                                 Compute

      A     = 2.2

      X     = 3.7

      VALUE = ALBETA(A, X)

!                                 Print the results

      CALL UMACH (2, NOUT)

      WRITE (NOUT,99999) A, X, VALUE

99999 FORMAT (' ALBETA(', F6.3, ',', F6.3, ') = ', F8.4)

      END

Output

 

ALBETA( 2.200, 3.700) =  -3.0928

Additional Example

Example 2

In this example, ln β(1.7 + 2.2i, 3.7 + 0.4i) is computed and printed.

 

      USE ALBETA_INT

      USE UMACH_INT

 

      IMPLICIT   NONE

!                                 Declare variables

      INTEGER    NOUT

      COMPLEX    A, B, VALUE

!                                 Compute

      A     = (1.7, 2.2)

      B     = (3.7, 0.4)

      VALUE = ALBETA(A, B)

!                                 Print the results

      CALL UMACH (2, NOUT)

      WRITE (NOUT,99999) A, B, VALUE

99999 FORMAT (' ALBETA((', F6.3, ',', F6.3, '), (', F6.3, ',', F6.3, &

           ')) = (', F6.3, ',', F6.3, ')')

      END

Output

 

ALBETA(( 1.700, 2.200), ( 3.700, 0.400)) = (-3.280,-2.659)



http://www.vni.com/
PHONE: 713.784.3131
FAX:713.781.9260