看一眼
syms x y z
A=[1 -2 x;2 1 y;-3 1 z]
rref(A)
這是一個增廣矩陣,我需要最終輸出
1 0 | (x 2y)/5
0 1 | (y-2x)/5
0 0 | z x y
但是rref()會產生這個
1 0 0
0 1 0
0 0 1
任何建議如何獲得預期的輸出?
uj5u.com熱心網友回復:
只要符號變數被限制在你的增廣矩陣的右半邊,你就可以進行如下操作。假設 [A|B] 是您的增廣矩陣。然后,您可以執行以下操作。
M = rref([A, eye(size(A,1))]);
C = M(:,(size(A,2) 1):end) * B;
在這種情況下,C 是將 M 帶到其 RREF 的行操作應用于符號矩陣 B 的結果。
這是一個產生您最初預期的結果的修改。
syms x y z
A=[1 -2;2 1;-3 1];
B=[x;y;z];
[m,n] = size(A);
M = [eye(m),zeros(m,n)];
M(:,1:n) = A;
M(:,(m 1):end) = eye(m,n);
P = M(:,n 1:end);
R = rref(M);
C = R(:,n 1:end)/P*B;
disp(C)
結果:
x/5 (2*y)/5
y/5 - (2*x)/5
x y z
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/426534.html
標籤:matlab
上一篇:LongFor回圈執行時間
