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


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 =
 
-50
 
 
k3 =
 
-9

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

   等號要用‘==’而不是‘=’

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

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

之前老是報錯:

錯誤使用 solve>getEqns (line 418)
List of equations must not be empty.

出錯 solve (line 226)
[eqns,vars,options] = getEqns(varargin{:});

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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM