How to evaluate a user input function at a given point?

3 views (last 30 days)
I'm unsure how to evaluate a given function at a given point X. Hypothetically, the user can input any function using any letter as a desired variable. How can I evaluate the function at the initial point given. I was thinking I could use the syms command. However, I'm unsure of what letter variable they would use. For instance, if the function was x+1 vs y+1, how can I ensure that the "initialX" is evaluated in place of x or y in the given function?
function y = randFunc(initialX, func)
y = func(initialX);
display(y);

Accepted Answer

Matt J
Matt J on 15 Feb 2016
Edited: Matt J on 15 Feb 2016
If func is a Function Handle, then the code you've shown should do exactly what you want.
  3 Comments
Matt J
Matt J on 15 Feb 2016
Edited: Matt J on 15 Feb 2016
There are various ways, and they are explained at the link I gave you.
Walter Roberson
Walter Roberson on 15 Feb 2016
In this case if func is given in the form of a symbolic expression, then use matlabFunction() to turn it into a function handle.

Sign in to comment.

More Answers (0)

Categories

Find more on Symbolic Math Toolbox in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!