toeplitz#
- scipy.linalg.toeplitz(c, r=None)[source]#
Construct a Toeplitz matrix.
The Toeplitz matrix has constant diagonals, with c as its first column and r as its first row. If r is not given,
r == conjugate(c)
is assumed.The documentation is written assuming array arguments are of specified “core” shapes. However, array argument(s) of this function may have additional “batch” dimensions prepended to the core shape. In this case, the array is treated as a batch of lower-dimensional slices; see Batched Linear Operations for details.
- Parameters:
- carray_like
First column of the matrix.
- rarray_like, optional
First row of the matrix. If None,
r = conjugate(c)
is assumed; in this case, if c[0] is real, the result is a Hermitian matrix. r[0] is ignored; the first row of the returned matrix is[c[0], r[1:]]
.
- Returns:
- A(len(c), len(r)) ndarray
The Toeplitz matrix. Dtype is the same as
(c[0] + r[0]).dtype
.
See also
circulant
circulant matrix
hankel
Hankel matrix
solve_toeplitz
Solve a Toeplitz system.
Notes
The behavior when c or r is a scalar, or when c is complex and r is None, was changed in version 0.8.0. The behavior in previous versions was undocumented and is no longer supported.
Examples
>>> from scipy.linalg import toeplitz >>> toeplitz([1,2,3], [1,4,5,6]) array([[1, 4, 5, 6], [2, 1, 4, 5], [3, 2, 1, 4]]) >>> toeplitz([1.0, 2+3j, 4-1j]) array([[ 1.+0.j, 2.-3.j, 4.+1.j], [ 2.+3.j, 1.+0.j, 2.-3.j], [ 4.-1.j, 2.+3.j, 1.+0.j]])