# HANKEL

## Purpose:

Generates a Hankel matrix.

## Syntax:

HANKEL(c, r)

 c - A series, the first column of the output array. r - Optional. A series, the last row of the output array. If not specified, the first element of the last row equals the last column value and the remaining values are all 0.

## Returns:

An array, a Hankel matrix.

## Example:

c = {1, 2, 3};

h = hankel(c);

h == {{1, 2, 3},

{2, 3, 0},

{3, 0, 0}}

The first row and column of h is identical to c.

## Example:

c = {1, 2, 3};

r = {3, 8, 9};

h = hankel(c, r);

h == {{1, 2, 3},

{2, 3, 8},

{3, 8, 9}}

The last row is identical to r and the first column is identical to c.

## Remarks:

For column c and row r, a Hankel matrix takes the form:

c[1]   c[2]   c[3]  ...  r[1]

c[2]   r[1]   r[1]  ...  r[2]

c[3]   r[2]   r[2]  ...  r[3]

.      .      .   .      .

.      .      .     .    .

.      .      .       .  .

c[n]   r[n-2] r[n-1] ... r[n]

If r is not specified, a square Hankel matrix is returned where c represents the first row and column. The elements below the first anti-diagonal are zero such that:

If r is specified, an unsymmetric Hankel matrix is returned where the first column is c and the last row is r such that:

In this case, if c[end] r[1], c[end] is used as the last element.