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

 Réponse acceptée

Steven Lord
Steven Lord le 9 Juin 2019

1 vote

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 commentaires

madhan ravi
madhan ravi le 9 Juin 2019
Modifié(e) : madhan ravi le 9 Juin 2019
+1 , agree with Steven, passing a char vector was removed in later releases.
omid ghorbani
omid ghorbani le 10 Juin 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 le 16 Oct 2019
It should work with vpasolve instead of solve

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Symbolic Math Toolbox dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by