Solve Function - Having Difficulties

5 views (last 30 days)
SJ Won
SJ Won on 4 Jul 2019
Answered: Vaibhav Tomar on 4 Jul 2019
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.

Accepted Answer

Stephan
Stephan on 4 Jul 2019
syms x
xsol = solve(str2sym('x+4==2'),x)
  1 Comment
SJ Won
SJ Won on 4 Jul 2019
What's the reason people use quotes for the mathematical expression? Isn't it easier just using x+4==2 ?

Sign in to comment.

More Answers (1)

Vaibhav Tomar
Vaibhav Tomar on 4 Jul 2019
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)

Categories

Find more on Food Sciences in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!