Замените элементами в символьных матрицах

Создайте 3х3 циркулянтную матрицу с помощью обратного сдвига.

syms a b c
M = [a b c; b c a; c a b]
M =
[ a, b, c]
[ b, c, a]
[ c, a, b]

Замените переменную b в этой матрице по выражению a + 1. Функция subs заменяет все элементы b в матричном M с выражением a + 1.

M = subs(M, b, a + 1)
M =
[     a, a + 1,     c]
[ a + 1,     c,     a]
[     c,     a, a + 1]

Также можно задать значение, чтобы заменить путем индексации в матрицу. Таким образом, чтобы заменить все элементы, значением которых является c, можно задать значение, чтобы заменить в качестве c, M(1,3) или M(3,1).

Замените все элементы, значением которых является M(1,3) = c с выражением a + 2.

M = subs(M, M(1,3), a + 2)
M =
[     a, a + 1, a + 2]
[ a + 1, a + 2,     a]
[ a + 2,     a, a + 1]

Совет

Чтобы заменить конкретный элемент матрицы с новым значением при хранении всех других элементов неизменными, используйте операцию присвоения. Например, M(1,1) = 2 заменяет только первый элемент матричного M со значением 2.

Найдите собственные значения и собственные вектора матрицы.

[V,E] = eig(M)
V =
[ 1,   3^(1/2)/2 - 1/2, - 3^(1/2)/2 - 1/2]
[ 1, - 3^(1/2)/2 - 1/2,   3^(1/2)/2 - 1/2]
[ 1,                 1,                 1]
 
E =
[ 3*a + 3,       0,        0]
[       0, 3^(1/2),        0]
[       0,       0, -3^(1/2)]

Замените символьный параметр a на значение 1.

subs(E, a, 1)
ans =
[ 6,       0,        0]
[ 0, 3^(1/2),        0]
[ 0,       0, -3^(1/2)]