我正在使用Matlab的solve
函数来查找函数df
的解,该函数在变量a
中是线性的。
我正在执行以下代码:
syms a;
df =(11282*a)/241 - 2*241^(1/2);
solve (df == 0,a);
它给了我错误:
??? Error using ==> char
Conversion to char from logical is not possible.
Error in ==> solve>getEqns at 165
vc = char(v);
Error in ==> solve at 67
[eqns,vars] = getEqns(varargin{:});
正如this link所建议的那样,我试图将solve
重写为(我不认为下面的代码会起作用,因为引用要求将表达式显式写入变量而不是函数姓名):
solve ('df = 0',a);
它报告了错误:
Warning: Explicit solution could not be found.
> In solve at 81
表达式df
将在执行期间确定,因此无法直接在变量中编写表达式。
我正在使用Matlab 2009b