Error returned with solve function
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Hello!
I'm a bit puzzled when trying to solve a simple equation, taken as an example from the Matlab documentation:
syms a b c x
solve(a*x^2 + b*x + c == 0)
This returns:
??? Error using ==> char Conversion to char from logical is not possible.
Error in ==> solve>getEqns at 189 vc = char(v);
Error in ==> solve at 67 [eqns,vars] = getEqns(varargin{:});
Quite the opposite to what the example displays.
How can I solve this? Uku
0 Commenti
Risposte (1)
Walter Roberson
il 7 Lug 2012
You are using an older version of MATLAB that evaluates the truth of the comparison expression (creating a logical) before it calls solve()
Alternately, you might have assignments to a, b, c, and x before the solve() call, and if those assignments are all numeric values then the "symbolness" of the variables would be over-written, leaving a*x^2 + b*x + c as being a numeric variable, whose numeric value would be compared to 0 and that result passed to solve()
0 Commenti
Vedere anche
Categorie
Scopri di più su Equation Solving in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!