Solve Function - Having Difficulties

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.

 Respuesta aceptada

Stephan
Stephan el 4 de Jul. de 2019
syms x
xsol = solve(str2sym('x+4==2'),x)

1 comentario

SJ Won
SJ Won el 4 de Jul. de 2019
What's the reason people use quotes for the mathematical expression? Isn't it easier just using x+4==2 ?

Iniciar sesión para comentar.

Más respuestas (1)

Vaibhav Tomar
Vaibhav Tomar el 4 de Jul. de 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)

Categorías

Más información sobre Symbolic Math Toolbox en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 4 de Jul. de 2019

Respondida:

el 4 de Jul. de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by