Я создаю матрицу символических переменных (A
), а затем создаю выражение, используя переменные в этой матрице (X
).Я намереваюсь установить значение символа в определенном индексе в A
(например, в моем коде я делаю A(1,1) = 11
), и затем я хочу, чтобы это было отражено в выражении.Однако, когда я делаю subs(X)
, я обнаруживаю, что символ не заменяется.Есть ли способ, которым я могу достичь этого?
Ниже я пытаюсь сделать следующее:
>> A = sym('X', [2 2])
A =
[ X1_1, X1_2]
[ X2_1, X2_2]
>> X = A(1,1)*10 + A(2,2)*11
X =
10*X1_1 + 11*X2_2
>> A(1,1)=11
A =
[ 11, X1_2]
[ X2_1, X2_2]
>> subs(X)
ans =
10*X1_1 + 11*X2_2
Я, конечно, могу сделать X1_1 = 2
.Моя проблема в том, что это не поддается зацикливанию.Я хотел бы установить значения в цикле.Очевидно, что A(*,*)=*
поддается зацикливанию.Есть ли способ установить значение X1_1
косвенно?
Редактировать: Для этого я могу переопределить X
после установки значения A(*,*)
.Однако это не вариант для меня.Определение X
является очень дорогостоящей операцией.Делать это несколько раз не может быть и речи о моих потребностях.