toeplitz

Символьная матрица Теплица

Синтаксис

Описание

пример

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

пример

toeplitz(r) генерирует симметричную матрицу Теплица, если r реально. Если r является комплексным, но его первый элемент действителен, тогда этот синтаксис генерирует матрицу Гермитова Теплица, сформированную из r. Если первый элемент r не реально, тогда получающаяся матрица - Hermitian от главной диагонали, означая что <reservedrangesplaceholder7> <reservedrangesplaceholder6> <reservedrangesplaceholder5>     = сопряженный (T <reservedrangesplaceholder3> <reservedrangesplaceholder2>) для <reservedrangesplaceholder1> ≠ <reservedrangesplaceholder0>.

Примеры

Сгенерируйте матрицу Теплица

Сгенерируйте матрицу Теплица из этих векторов. Поскольку эти векторы не являются символическими объектами, вы получаете результаты с плавающей точкой.

c = [1 2 3 4 5 6];
r = [1 3/2 3 7/2 5];
toeplitz(c,r)
ans =
    1.0000    1.5000    3.0000    3.5000    5.0000
    2.0000    1.0000    1.5000    3.0000    3.5000
    3.0000    2.0000    1.0000    1.5000    3.0000
    4.0000    3.0000    2.0000    1.0000    1.5000
    5.0000    4.0000    3.0000    2.0000    1.0000
    6.0000    5.0000    4.0000    3.0000    2.0000

Теперь преобразуйте эти векторы в символьный объект и сгенерируйте матрицу Теплица:

c = sym([1 2 3 4 5 6]);
r = sym([1 3/2 3 7/2 5]);
toeplitz(c,r)
ans =
[ 1, 3/2,   3, 7/2,   5]
[ 2,   1, 3/2,   3, 7/2]
[ 3,   2,   1, 3/2,   3]
[ 4,   3,   2,   1, 3/2]
[ 5,   4,   3,   2,   1]
[ 6,   5,   4,   3,   2]

Сгенерируйте матрицу Теплица из вектора

Сгенерируйте матрицу Теплица из этого вектора:

syms a b c d
T = toeplitz([a b c d])
T =
[       a,       b,       c,       d]
[ conj(b),       a,       b,       c]
[ conj(c), conj(b),       a,       b]
[ conj(d), conj(c), conj(b),       a]

Если вы задаете, что все элементы действительны, то получившаяся матрица Теплица симметрична:

syms a b c d real
T = toeplitz([a b c d])
T =
[ a, b, c, d]
[ b, a, b, c]
[ c, b, a, b]
[ d, c, b, a]

Для дальнейших расчетов очистите допущения путем воссоздания переменных с помощью syms:

syms a b c d

Сгенерируйте теплиц с комплексными числами

Сгенерируйте матрицу Теплица из вектора, содержащего комплексные числа:

T = toeplitz(sym([1, 2, i]))
T =
[  1, 2, 1i]
[  2, 1, 2]
[ -1i, 2, 1]

Если первый элемент вектора действителен, то получившаяся матрица Теплица является Эрмитовой:

isAlways(T == T')
ans =
  3×3 logical array
   1   1   1
   1   1   1
   1   1   1

Если первый элемент не действителен, то получившаяся матрица Теплица является Эрмитовой вне основной диагонали:

T = toeplitz(sym([i, 2, 1]))
T =
[ 1i, 2, 1]
[ 2, 1i, 2]
[ 1, 2, 1i]
isAlways(T == T')
ans =
  3×3 logical array
     0     1     1
     1     0     1
     1     1     0

Используйте векторы с конфликтующим первым элементом

Сгенерируйте матрицу Теплица, используя эти векторы, чтобы задать первый столбец и первую строку. Потому что первые элементы этих векторов разные, toeplitz выдает предупреждение и использует первый элемент столбца:

syms a b c
toeplitz([a b c], [1 b/2 a/2])
Warning: First element of given column does not match first element of given row. 
Column wins diagonal conflict.
 
ans =
[ a, b/2, a/2]
[ b,   a, b/2]
[ c,   b,   a]

Входные параметры

свернуть все

Первый столбец матрицы Теплица, заданный в виде вектора или символьного вектора.

Первая строка матрицы Теплица, заданная в виде вектора или символьного вектора.

Подробнее о

свернуть все

Теплиц

Матрица Теплица является матрицей, которая имеет постоянные значения вдоль каждой нисходящей диагонали слева направо. Для примера матрица T является симметричным Теплицем матрицей:

T=(t0t1t2tkt1t0t1t2t1t0t0t1t2t1t0t1tkt2t1t0)

Совет

  • Вызывающие toeplitz для числовых аргументов, которые не являются символьными объектами, MATLAB® toeplitz функция.

См. также

Введенный в R2013a