Passing function with parameters to another function

Hi,
I am trying to create a function that accepts another function with its own parameters e.g. Func1(@(x)Func2(x,para1,para2,...etc)) Is this possible in Matlab? If yes, how?

2 comentarios

I actually found the solution for this. just using the function handle inside the body of the function.

Iniciar sesión para comentar.

Respuestas (1)

KSSV
KSSV el 17 de Oct. de 2017
f1 = @(x,y) x(y) ;
f2 = @(y) sin(y) ;
f1(f2,pi/2)

3 comentarios

This helps but the answer is: f1 = @(x,a) x.^2 + a; f2 = @(func,b) 2*func(10) - b; Call f2 ( @(x) f1(func,a),b)

Why do u have to put a dot in x.^2 + a;.I am new to Matlab

KSSV
KSSV el 1 de Jul. de 2020
If x is an array to get element by element square, you have to put . i.e .^

Iniciar sesión para comentar.

Categorías

Etiquetas

Preguntada:

el 17 de Oct. de 2017

Comentada:

el 1 de Jul. de 2020

Community Treasure Hunt

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

Start Hunting!

Translated by