Создайте символьные матрицы

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

Циркулянтная матрица имеет свойство, что каждая строка получена из предыдущей путем цикличной перестановки записей один шаг вперед. Например, создайте символьную циркулянтную матрицу, элементами которой является aB, и c, использование команд:

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

Начиная с матричного A циркулянт, сумма элементов по каждой строке и каждому столбцу является тем же самым. Найдите сумму всех элементов первой строки:

sum(A(1,:))
ans =
a + b + c

Чтобы проверять, равняется ли сумма элементов первой строки сумме элементов второго столбца, используйте isAlways функция:

isAlways(sum(A(1,:)) == sum(A(:,2)))

Суммы равны:

ans =
  logical
   1

Из этого примера вы видите, что использование символьных объектов очень похоже на использование регулярного MATLAB® числовые объекты.

Сгенерируйте элементы при создании матрицы

sym функция также позволяет вам задать символьную матрицу или вектор, не имея необходимость задавать его элементы заранее. В этом случае, sym функция генерирует элементы символьной матрицы в то же самое время, когда она создает матрицу. Функция представляет все сгенерированные элементы с помощью той же формы: основа (который должен быть допустимым именем переменной), индекс строки и индекс столбца. Используйте первый аргумент sym задавать основу для имен сгенерированных элементов. Можно использовать любое допустимое имя переменной в качестве основы. Чтобы проверять, является ли имя допустимым именем переменной, используйте isvarname функция. По умолчанию, sym разделяет индекс строки и индекс столбца подчеркиванием. Например, создайте 2 4 матричный A с элементами A1_1, ..., A2_4:

A = sym('A', [2 4])
A =
[ A1_1, A1_2, A1_3, A1_4]
[ A2_1, A2_2, A2_3, A2_4]

Чтобы управлять форматом сгенерированных имен элементов матрицы, используйте %d в первом аргументе:

A = sym('A%d%d', [2 4])
A =
[ A11, A12, A13, A14]
[ A21, A22, A23, A24]

Создайте матрицу символьных чисел

Особенно эффективное использование sym должен преобразовать матрицу от числового до символьной формы. Команда

A = hilb(3)

генерирует 3х3 Гильбертову матрицу:

A =
    1.0000    0.5000    0.3333
    0.5000    0.3333    0.2500
    0.3333    0.2500    0.2000

Путем применения sym к A

A = sym(A)

можно получить точную символьную форму 3х3 Гильбертовой матрицы:

A =
[   1, 1/2, 1/3]
[ 1/2, 1/3, 1/4]
[ 1/3, 1/4, 1/5]

Для получения дополнительной информации о числовом к символьным преобразованиям смотрите Числовой к Символьному Преобразованию.

Похожие темы