MuPAD® notebooks are not recommended. Use MATLAB® live scripts instead.
MATLAB live scripts support most MuPAD functionality, though there are some differences. For more information, see Convert MuPAD Notebooks to MATLAB Live Scripts.
[t-k, …,t k], <
[t-k, …,t k], <
linalg::toeplitz(m, n, [t-k,
..., t-1, t0, t1,
..., tk]) returns the m×n Toeplitz
linalg::toeplitz(n, [t-k, ...,
tk]) returns the square Toeplitz
matrix of dimension n×n.
A number of entries [t-k, …, tk] must be an odd number 2 k + 1. There must be at least k diagonal bands above the diagonal and k diagonal bands below the diagonal: k must satisfy k ≤ min(m, n) - 1. Entries with matrix indices (i, j) satisfying |i - j| > k are set to 0.
Toeplitz matrices of dimension n×n can
be inverted with O(n2) operations.
linalg::toeplitz(c, r) generates a nonsymmetric
Toeplitz matrix having
c as its first column and
its first row. If the first elements of
a warning and uses the first element of the column.
linalg::toeplitz(r) generates a symmetric
Toeplitz matrix if
r is real. If
complex, but its first element is real, then this syntax generates
the Hermitian Toeplitz matrix formed from
the first element of
r is complex, then the resulting
matrix is Hermitian off the main diagonal, meaning that Tij = conjugate(Tji) for i ≠ j.
When you use matrices in MuPAD® computations, both computational efficiency and memory use can depend on whether the matrix is sparse or dense. The first two syntaxes are optimized for generating sparse matrices and, therefore, these syntaxes are preferable. For details about improving performance when working with matrices, see Use Sparse and Dense Matrices.
Construct a 4×4 Toeplitz matrix with three bands:
linalg::toeplitz(4, [-1, 2, 1])
Construct a 3×5 Toeplitz matrix with symbolic entries:
linalg::toeplitz(3, 5, [a, b, c])
Construct a Toeplitz matrix by using a vector to specify its first row. For a real vector, the resulting matrix is symmetric:
r := matrix([1, 2, 3]): linalg::toeplitz(r)
For a complex vector, the resulting matrix is Hermitian off the main diagonal:
r := matrix([1 + I, 2 + I, 3 + I]): T := linalg::toeplitz(r); htranspose(T)
Construct a Toeplitz matrix by using two vectors to specify its first column and first row:
c := matrix([1, a/2, b/2]): r := [1, a, b]: linalg::toeplitz(c, r)
If the first elements of the vectors differ,
a warning and uses the first element of the column:
c := matrix([1, a/2, b/2]): r := [2, a, b]: linalg::toeplitz(c, r)
Warning: First element of given column does not match first element of given row. Column wins diagonal conflict. [linalg::toeplitz]
Row and column dimensions of the matrix: positive integers.
expressions or elements of the component ring
Vector specifying the first column of a Toeplitz matrix.
Vector specifying the first row of a Toeplitz matrix.
Matrix of the domain