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.

 Akzeptierte Antwort

madhan ravi
madhan ravi am 15 Mai 2019

0 Stimmen

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

1 Kommentar

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.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Symbolic Math Toolbox finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by