matlab function "solve" couldn't solve correctly

syms x;
g=x.^2-sin(x+0.15);
s=solve(g==x)
hold on;
fplot(g);
fplot(x);
As above, the equation "x.^2-sin(x+0.15)==x" should have 2 answers. I can tell from the plot of g and x.
gx.png
While using the function " solve ", i could only get one answer as below.
Warning: Unable to solve symbolically. Returning a numeric approximation instead.
> In solve (line 304)
In test (line 3)
s =
-0.07234414896484352635594864867791
Does it happen when "solve" Unable to solve symbolically, or is there something with my way of solving this problem. Thank you guys in advance.

 Respuesta aceptada

madhan ravi
madhan ravi el 15 de Mayo de 2019
fsolve(matlabFunction(g-x),[-1,2])
% you can also use vpasolve() with random set to true in a loop to see the possibilities

1 comentario

jialin zhang
jialin zhang el 15 de Mayo de 2019
it works!!!!!! thank you very much. btw, i tried vpasolve() and it doesn't solve correctly as well. Seemed like fsolve() works better on this equation.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

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

Productos

Versión

R2017b

Etiquetas

Preguntada:

el 15 de Mayo de 2019

Comentada:

el 15 de Mayo de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by