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

 Accepted Answer

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 Comments

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

Sign in to comment.

More Answers (0)

Categories

Community Treasure Hunt

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

Start Hunting!