# WALSH Walsh and Haar Transforms

WALSH is a C library which implements versions of the Walsh and Haar transforms.

Note that the programs, as printed in the reference, had a few typographical errors. Several programs, in particular FHT and FRT, could not be made to perform as described in the text, and hence have been omitted.

### Licensing:

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

### Languages:

WALSH is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.

### Related Data and Programs:

HAAR, a C library which computes the Haar transform of data.

SFTPACK, a C library which implements the "slow" Fourier transform, intended as a teaching tool and comparison with the fast Fourier transform.

SINE_TRANSFORM, a C library which demonstrates some simple properties of the discrete sine transform.

WAVELET, a C library which does some simple calculations with wavelet transforms;

### Reference:

1. Ken Beauchamp,
Walsh functions and their applications,
Academic Press, 1975,
ISBN: 0-12-084050-2,
LC: QA404.5.B33.

### List of Routines:

• FFWT performs an in-place fast Walsh transform.
• FWT performs a fast Walsh transform.
• HAAR performs a Haar transform.
• HAARIN inverts a Haar transform.
• HNORM computes normalization factors for a forward or inverse Haar transform.
• I4_LOG_2 returns the integer part of the logarithm base 2 of an I4.
• I4_MAX returns the maximum of two I4's.
• I4_MIN returns the minimum of two I4's.
• I4_MODP returns the nonnegative remainder of I4 division.
• I4_POWER returns the value of I^J.
• I4_WRAP forces an I4 to lie between given limits by wrapping.
• R8VEC_COPY copies an R8VEC.
• R8VEC_COPY_NEW copies an R8VEC to a "new" R8VEC.
• R8VEC_UNIFORM_01_NEW returns a new unit pseudorandom R8VEC.
• TIMESTAMP prints the current YMDHMS date as a time stamp.
• WALSH performs a fast Walsh transform.

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

Last revised on 17 March 2011.