How to input vector into a function handle

i have a function handle fx1=@(x,y,z) x*2+3*y+2z;
and a vector a=[1 2 3].
is there any possible way so that i can input a into fx, without changing a into a cell arrays?
thanks in advance

5 Kommentare

a = [1,2,3];
fx1 = @(x,y,z) x*2+3*y+2*z;
fx1(a(1),a(2),a(3))
ans = 14
thankyou before, but is there are any ways so they specifically specify each element in a into function's input?
i've done this, but in array's way that is fx1(a{:}) (i've converted the a before)
Stephen23
Stephen23 am 31 Aug. 2021
Bearbeitet: Stephen23 am 31 Aug. 2021
"but is there are any ways so they specifically specify each element in a into function's input?"
You are trying to generate a comma-separated list from one array. The two ways of generating a comma-separated list from one array (either from a cell array or from a structure array) are explained here:
yeah this is excatly what im looking for, heavy thanks mate
If you just happen to be generating the function handle using matlabFunction() in the Symbolic Math Toolbox, then see the 'vars' option: it is possible to arrange that the generated function takes its input from a vector instead of from from individual arguments.

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Produkte

Gefragt:

am 31 Aug. 2021

Kommentiert:

am 31 Aug. 2021

Community Treasure Hunt

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

Start Hunting!

Translated by