2
這可能非常簡單,但我無法設置矩陣來解決使用符號對象的兩個線性方程。用MATLAB解決簡單的線性代數方程使用符號對象
方程是在表格上:
(1) a11*x1 + a12*x2 + b1 = 0
(2) a21*x1 + a22*x2 + b2 = 0
所以我有一個矢量{E}:
[ a11*x1 + a12*x2 + b1 ]
{E} = [ a21*x1 + a22*x2 + b2 ]
我想要得到的矩陣[A]和向量{B}這樣我可以求解方程,即
[A]*{X} + {B} = 0 => {X} = -[A]\{B}.
凡
[ x1 ]
{X} = [ x2 ]
[ a11 a12 ]
[A] = [ a21 a22 ]
[ b1 ]
{B} = [ b2 ]
矩陣[A]只是{E}的雅可比矩陣,但我必須在{E}上執行什麼操作才能得到{B},即不包含x的項?
這是我做了什麼:
x = sym('x', [2 1]);
a = sym('a', [2 2]);
b = sym('b', [2 1]);
E = a*x + b;
A = jacobian(E,x);
n = length(E);
B = -E;
for i = 1:n
for j = 1:n
B(i) = subs(B(i), x(j), 0);
end
end
X = A\B
我想一定是有功能的,這是否在同一行。
所以基本上我的問題是:我可以做什麼而不是那些for循環?
(我知道這是一件很簡單的,容易通過搜索發現,但問題是我不知道這是什麼所謂的,所以我不知道要尋找什麼。)
看,我知道這是非常簡單的事情。 :) 謝謝。你知道矩陣B被稱爲什麼嗎? (在我的報告中,我稱之爲什麼?) –
我稱之爲「不均勻性」或方程系統的「右手側」......而且,我更願意稱之爲矢量。 – Jan
是的,矩陣位是一個brainfart。 :) 再次感謝你。 –