scipy.linalg.

hankel#

scipy.linalg.hankel(c, r=None)[источник]#

Построить матрицу Ганкеля.

Матрица Ганкеля имеет постоянные антидиагонали, с c в качестве первого столбца и r как его последняя строка. Если первый элемент r отличается от последнего элемента c, первый элемент r заменяется последним элементом c чтобы гарантировать, что антидиагонали остаются постоянными. Если r не указано, тогда r = zeros_like(c) предполагается.

Параметры:
carray_like

Первый столбец матрицы. Независимо от фактической формы c, она будет преобразована в одномерный массив.

rarray_like, необязательный

Последняя строка матрицы. Если None, r = zeros_like(c) предполагается. r[0] игнорируется; последняя строка возвращаемой матрицы — [c[-1], r[1:]]. Какой бы ни была фактическая форма r, он будет преобразован в одномерный массив.

Возвращает:
A(len(c), len(r)) ndarray

Матрица Ганкеля. Тип данных такой же, как у (c[0] + r[0]).dtype.

Смотрите также

toeplitz

матрица Тёплица

circulant

циркулянтная матрица

Примеры

>>> from scipy.linalg import hankel
>>> hankel([1, 17, 99])
array([[ 1, 17, 99],
       [17, 99,  0],
       [99,  0,  0]])
>>> hankel([1,2,3,4], [4,7,7,8,9])
array([[1, 2, 3, 4, 7],
       [2, 3, 4, 7, 7],
       [3, 4, 7, 7, 8],
       [4, 7, 7, 8, 9]])