Solve Function - Having Difficulties

1 回表示 (過去 30 日間)
SJ Won
SJ Won 2019 年 7 月 4 日
回答済み: Vaibhav Tomar 2019 年 7 月 4 日
I'm having trouble using the solve function and I don't understand the problem. I looked at other posts + documentation but I still don't see it.
>> x = solve('x+4==2',x)
Error using solve>getEqns (line 418)
List of equations must not be empty.
Error in solve (line 226)
[eqns,vars,options] = getEqns(varargin{:});
This is the input I entered and the error I'm receiving.

採用された回答

Stephan
Stephan 2019 年 7 月 4 日
syms x
xsol = solve(str2sym('x+4==2'),x)
  1 件のコメント
SJ Won
SJ Won 2019 年 7 月 4 日
What's the reason people use quotes for the mathematical expression? Isn't it easier just using x+4==2 ?

サインインしてコメントする。

その他の回答 (1 件)

Vaibhav Tomar
Vaibhav Tomar 2019 年 7 月 4 日
Quotes are necessary as it's a string.
You need to use str2sym
str2sym(symstr) evaluates symstr where symstr is a string representing a symbolic expression. Enter symbolic expressions as strings only when reading expressions from text files or when specifying numbers exactly. Otherwise, do not use strings for symbolic input.
Use:
x=sym('x')
solx= solve(str2sym('x+4==2'),x)

カテゴリ

Help Center および File ExchangeSymbolic Math Toolbox についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by