Function handle as function input?

5 visualizaciones (últimos 30 días)
Payjay
Payjay el 23 de Mayo de 2017
Editada: Stephen23 el 24 de Mayo de 2017
Hello there, I have a function handle, for example f = @(x) x.^2 and I want to use this as a function input, something like (just schematic):
function scalar = fct(f(x));
scalar = int(@(x) f(x).*x^2);
end
Is that possible? Greets and thanks!

Respuesta aceptada

Rik
Rik el 23 de Mayo de 2017
Inside such a wrapper, I highly doubt that. But in principle it should be possible to do what you want. I haven't tested this code, but I think this should work. (After a peek at the doc for int, I suspect this would error, but the principle should hold, after all, f is just a variable, even if it is a weird variable because it is an anonymous function)
function scalar=fct(f)
temp=@(x) f(x).*x.^2;
scalar=int(temp);
end
  3 comentarios
Rik
Rik el 24 de Mayo de 2017
What exactly is the error you are getting here? Because as I understand it, int needs more inputs if the first input does not contain a symbolic variable. So is the problem occurring at the function call level, or inside the function fct?
Payjay
Payjay el 24 de Mayo de 2017
I am sorry youre answer worked! Thanks! And that what I wrote down above even works too! I have thousands nested functions and I understood the errors wrong ;-)

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Function Handles en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by