# HANKEL_PDS Cholesky Factors Generating Positive Definite Symmetric Hankel Matrices

HANKEL_PDS is a C++ library which can compute a lower triangular matrix L which is the Cholesky factor of a positive definite (symmetric) Hankel matrix H, that is, H = L * L'.

A Hankel matrix is a matrix which is constant along all antidiagonals. A schematic of a 5x5 Hankel matrix would be:

```        a  b  c  d  e
b  c  d  e  f
c  d  e  f  g
d  e  f  g  h
e  f  g  h  i
```

Let J represent the exchange matrix, formed by reverse the order of the columns of the identity matrix. If H is a Hankel matrix, then J*H and J*H are Toeplitz matrices, and similarly in the other direction. Hence many algorithms that apply to one class can be easily adapted to the other.

### Languages:

HANKEL_PDS 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:

ASA006, a C++ library which computes the Cholesky factorization of a symmetric positive definite matrix, by Michael Healy. This is a MATLAB version of Applied Statistics Algorithm 6;

HANKEL_CHOLESKY, a C++ library which computes the upper Cholesky factor R of a nonnegative definite symmetric Hankel matrix H so that H = R' * R..

### Reference:

1. S Al-Homidan, M Alshahrani,
Positive Definite Hankel Matrices Using Cholesky Factorization,
Computational Methods in Applied Mathematics,
Volume 9, Number 3, 2009, pages 221-225.

### List of Routines:

• HANKEL_PDS_CHOLESKY_LOWER returns L such that L*L' is Hankel PDS.
• R8MAT_CHOLESKY_FACTOR computes the Cholesky factor of a symmetric matrix.
• R8MAT_PRINT prints an R8MAT.
• R8MAT_PRINT_SOME prints some of an R8MAT.
• R8VEC_UNIFORM_01 returns a unit pseudorandom R8VEC.
• TIMESTAMP prints the current YMDHMS date as a time stamp.

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

Last revised on 27 January 2017.