i want to solve a equation in a algorithm. this equation is ('x-sin(x)=b') .in this equation 'b' calculated of previous step. for example b=0.45.
when i run this, the answer is empty sym: 0-by-1.
but when I run (x-sin(x)=0.45) the answer is correct, means that this equation has numeric answer.
please help me to run this algorithm.
b=0.45
solve('x-sin(x)=b')
ans=
empty sym: 0-by-1
solve('x-sin(x)=0.45')
ans=1.4416

 Akzeptierte Antwort

Steven Lord
Steven Lord am 9 Jun. 2019

1 Stimme

Don't pass a char vector into solve. Build a symbolic equation and pass that into solve.
syms x
b = 0.45;
eq = x-sin(x) == b
sol = solve(eq)

3 Kommentare

madhan ravi
madhan ravi am 9 Jun. 2019
Bearbeitet: madhan ravi am 9 Jun. 2019
+1 , agree with Steven, passing a char vector was removed in later releases.
omid ghorbani
omid ghorbani am 10 Jun. 2019
thank you so much.
this answer is a 1*1 symbol. how can i chang this answer to double type.
Sonja Glas
Sonja Glas am 16 Okt. 2019
It should work with vpasolve instead of solve

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

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

Community Treasure Hunt

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

Start Hunting!

Translated by