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 Commenti

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 il 31 Ago 2021
Modificato: Stephen23 il 31 Ago 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.

Accedi per commentare.

Risposte (0)

Prodotti

Richiesto:

il 31 Ago 2021

Commentato:

il 31 Ago 2021

Community Treasure Hunt

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

Start Hunting!

Translated by