The Digamma or Psi Function

ASA103 is a C++ library which evaluates the digamma or psi function, by Jose Bernardo.

ASA103 is Applied Statistics Algorithm 103. Source code for many Applied Statistics Algorithms is available through STATLIB.


The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.


ASA103 is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version and a Python version.

Related Data and Programs:

ASA121, a C++ library which evaluates the trigamma function.

FN, a C++ library which approximates elementary and special functions using Chebyshev polynomials; functions include Airy, Bessel I, Bessel J, Bessel K, Bessel Y, beta, confluent hypergeometric, cosine integral, Dawson's integral, digamma (psi), error, exponential integral, gamma, hyperbolic cosine integral, hyperbolic sine integral, incomplete gamma, log gamma, logarithmic integral, Pochhammer, psi, sine integral, Spence; by Wayne Fullerton.

TEST_VALUES, a C++ library which contains sample values for a number of distributions.

TOMS708, a FORTRAN90 library which includes routines to evaluate the digamma function.


Original FORTRAN77 version by Jose Bernardo; C++ version by John Burkardt.


  1. Jose Bernardo,
    Algorithm AS 103: Psi ( Digamma ) Function,
    Applied Statistics,
    Volume 25, Number 3, 1976, pages 315-317.

Source Code:

Examples and Tests:

List of Routines:

You can go up one level to the C++ source codes.

Last revised on 18 January 2008.