MATLAB利用solve函式解多元一次方程組

2022-06-11 11:54:11 字數 826 閱讀 1336

matlab求解多元方程組示例:

syms k1 k2 k3;

[k1 k2 k3] = solve(-3-k3==6, 2-k1-k2+2*k3==11, 2*k1+k2-k3+1==6)

或者用[k1 k2 k3] = solve(『-3-k3=6』, 『2-k1-k2+2*k3=11』, 『2*k1+k2-k3+1=6』)

另外,可以指定未知數為哪個

[k1 k2 k3] = solve(『-3-k3=6』, 『2-k1-k2+2*k3=11』, 『2*k1+k2-k3+1=6』,k1,k2,k3)

結果:

k1 = 23

k2 =

-50k3 =

-9

注意:等式不用引號,按其他示例加上引號會報錯;

等號要用『==』而不是『=』

總結:1.使用引號,用=;

2.不使用引號,用==;

之前老是報錯:

錯誤使用 solve>geteqns (line 418

)list of equations must not be empty.

出錯 solve (line

226)

[eqns,vars,options] = geteqns(varargin);

原因是用了引號,等式變成字串,我這個版本的matlab似乎無法識別

解決在Matlab的solve函式中使用引數的問題

我們在使用matlab的solve這樣函式時,經常遇到這樣的情況,就是方程中含有一些已知引數以便加以控制,但是如何才能得到數值解?舉例如下 var1 100 要解var1 x 2 20 x 0這個方程,如果直接寫 solve var1 x 2 20 x 0 x 是不能得到正確解的。輸出結果為 ans...

matlab學習筆記009之solve函式

matlab中solve函式主要是用來求解線性方程組的解析解或者精確解。對於得出的結果是符號變數,可以通過vpa 得出任意位數的數值解!solve函式的語法定義主要有以下四種 solve eq solve eq,var solve eq1,eq2,eqn g solve eq1,eq2,eqn,va...

solve函式程式詳解 NOIP2004 提高組

此題為筆試題的讀程式題。題目程式 如下 includeusing namespace std int number,ndata,data 100 sum void solve int s,int sign,int n int i for i s i number ndata sum 0 for i ...