MATLAB: Recognize function from string

functionstringstruct

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.

Best Answer

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]