我想用Matlab的符號工具箱解決未知x,y,z中的三個同時存在的非線性方程。下面的代碼有什麼問題?Matlab符號工具箱:我的代碼有什麼問題?
solve('(x/4 + y/2 + z/4)*(1/(8*x) + 1/(16*y) + 1/(8*z)) = 0.5774', ...
'(x/4 + y/4 + z/2)*(1/(4*x) + 1/(16*y) + 1/(16*z)) = 0.5774', ...
'(x/2 + y/4 + z/4)*(1/(8*x) + 1/(8*y) + 1/(16*z)) = 0.5774')
我得到以下錯誤:
??? Error using ==> subsref
Index exceeds matrix dimensions.
Error in ==> sym.subsref at 16
y = builtin('subsref',struct(x),a);
Error in ==> solve at 191
S.(char(symvars(j))) = R(:,j);
我用Matlab版本7.7.0.471。我對符號工具箱並不熟悉。我錯過了什麼?
我是否期待符號引擎太多?或者,有沒有更好的方法來解決上述方程? (一個數值解決方案可以。)
出於好奇,你從哪裏得到這些方程?你是否從特定類別的問題中推導出它們?如果我們知道你是如何來到這些方程的,那麼更多的人可能會提供幫助。在7.6提供了 – gnovice 2009-02-23 14:55:34
警告:無法找到明確的解決方案。 >解決於140 ans = [空符號] – Dani 2009-02-25 16:51:51