Function handle as function input?

6 visualizzazioni (ultimi 30 giorni)
Payjay
Payjay il 23 Mag 2017
Modificato: Stephen23 il 24 Mag 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!

Risposta accettata

Rik
Rik il 23 Mag 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 Commenti
Rik
Rik il 24 Mag 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 il 24 Mag 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 ;-)

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Function Handles in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by