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

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);

 Respuesta aceptada

Matt J
Matt J el 15 de Feb. de 2016
Editada: Matt J el 15 de Feb. de 2016
If func is a Function Handle, then the code you've shown should do exactly what you want.

3 comentarios

How do I make func a Function Handle?
Matt J
Matt J el 15 de Feb. de 2016
Editada: Matt J el 15 de Feb. de 2016
There are various ways, and they are explained at the link I gave you.
In this case if func is given in the form of a symbolic expression, then use matlabFunction() to turn it into a function handle.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Symbolic Math Toolbox en Centro de ayuda y File Exchange.

Preguntada:

el 15 de Feb. de 2016

Comentada:

el 15 de Feb. de 2016

Community Treasure Hunt

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

Start Hunting!

Translated by