Is there a way in Matlab to recognize the variables and parametest of function from sting. For example I have a string: "a1*x+a2*x^2+y", and necessary to get a function where a1,a2 - constants and x, y - variables.

 Réponse acceptée

Star Strider
Star Strider le 25 Mar 2017

1 vote

Not that I am aware of.
The closest you can get to what you want to do (in this example of a polynomial) is the Symbolic Math Toolbox coeffs function, and even then you have tell it what the variables are:
syms a1 a2 x y
z = a1*x+a2*x^2+y;
[coefficients,variables] = coeffs(z, [x y])
coefficients =
[ a2, a1, 1]
variables =
[ x^2, x, y]

2 commentaires

Zak Kankin
Zak Kankin le 25 Mar 2017
Modifié(e) : Zak Kankin le 25 Mar 2017
Thanks! It works great for string in exactly if I want! '[coefficients,variables] = coeffs('a1*x+a2*x^2+y', [x y])'
coefficients = [ a2, a1, 1] variables = [ x^2, x, y]
Star Strider
Star Strider le 25 Mar 2017
My pleasure!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Characters and Strings 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