asa103, a MATLAB code which evaluates the digamma or psi function, by Jose Bernardo. This is a version of 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 MATLAB code which evaluates the trigamma function.

fn, a MATLAB 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.

test_values, a MATLAB code which contains sample values for a number of distributions.


Original FORTRAN77 version by Jose Bernardo; MATLAB 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 25 November 2018.