теплиц

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

Синтаксис

toeplitz(c,r)
toeplitz(r)

Описание

пример

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

пример

toeplitz(r) генерирует симметричную матрицу Теплица, если r действителен. Если r является комплексным, но его первый элемент действителен, то этот синтаксис генерирует Эрмитовую матрицу Теплица, сформированную из r. Если первый элемент r не действителен, то получившаяся матрица является Эрмитовой от основной диагонали, означая что T i j = сопряженный (T j i) для i ≠ j.

Примеры

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

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

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