Effacer les filtres
Effacer les filtres

solving algebraic equations and characteristic vectors

1 vue (au cours des 30 derniers jours)
metin yilmaz
metin yilmaz le 7 Nov 2020
Commenté : Stephan le 7 Nov 2020
I am very new in matlab. I am struggling with warnings when I am trying to solve algebraic equaions. Would you please help me understand the situation?
When I do this operation: >> solve('x^2-5*x+6=0')
I take this warning, and I don't understand anything from it. What is character vector here?
  1. Warning: Support of character vectors will be removed in a future release. Character vectors can be used only for variable names and numbers. Instead, to create
What is characteristic vector here?
2.symbolic expressions first create symbolic variables using 'syms'. To evaluate character vectors and strings representing symbolic expressions, use 'str2sym'.
What does 2 says?
> In sym>convertExpression (line 1581)
In sym>convertChar (line 1486)
In sym>tomupad (line 1236)
In sym (line 215)
In solve>getEqns (line 406)
In solve (line 226)
Warning: Do not specify equations and variables as character vectors. Instead, create symbolic variables with syms.
> In solve>getEqns (line 446)
In solve (line 226)

Réponse acceptée

Stephan
Stephan le 7 Nov 2020
Modifié(e) : Stephan le 7 Nov 2020
Try:
syms x
sol = solve(x^2-5*x+6==0)
Character is a data type that is defined by '...' like you did. For symbolic expressions in future releases this support will be removed.
If you want to solve symbolic expressions you need to tell matlab what the symbolic variables are. For that use syms command.
  2 commentaires
metin yilmaz
metin yilmaz le 7 Nov 2020
Thank you but how many times shoud I enter syms command? In every new equation?
Stephan
Stephan le 7 Nov 2020
Only once

Connectez-vous pour commenter.

Plus de réponses (2)

Star Strider
Star Strider le 7 Nov 2020
The term MATLAB uses here is ‘character’, not ‘characteristic’.
A character vector is a vector make up of ASCII characters defined by single quotes at the beginning and end of the vector (see the char function).
This will do what you want, and not throw the warning:
syms x
xs = solve(x^2-5*x+6==0)
.
  1 commentaire
Star Strider
Star Strider le 7 Nov 2020
Enter the syms command only once, when you first need to declare the variables.
You will need to do that each time you begin a new session with the Sybolic Math Toolbox.

Connectez-vous pour commenter.


metin yilmaz
metin yilmaz le 7 Nov 2020
How many times should I enter syms command? In every new equation?

Community Treasure Hunt

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

Start Hunting!

Translated by