asa103, a FORTRAN90 code which evaluates the digamma or psi function, by Jose Bernardo.

The code is Applied Statistics Algorithm 103.


The computer code and data files described and made available on this web page are distributed under the MIT 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 FORTRAN90 code which evaluates the trigamma function.

FN, a FORTRAN90 code 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.

SPECFUN, a FORTRAN90 code which computes special functions, including the Psi or Digamma function.

TEST_VALUES, a FORTRAN90 code which contains sample values for a number of distributions.

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


Original FORTRAN77 version by Jose Bernardo; FORTRAN90 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:

Last revised on 28 August 2021.