Using a string to pass input argument to a function

Hi,
I have to use the function ndgrid different times, each time with a different number of input and output arguments.
I would like to make all automatic, so i tried to concatenate in a string what i have to pass as argument both in output and input but it doesn't work.
Here is the code I used.
[output]=ndgrid(=input);
where
input is {'[table{1,1}(1,2) table{1,1}(1,3)], [table{1,1}(2,2) table{1,1}(2,3)], [table{1,2}(1,2) table{1,2}(1,3)]'}
and
output is {'p11, p12, p21'}
any ideas of how I can make it works?

2 commentaires

C = {1:3,4:6,7:9}
C = 1x3 cell array
{1×3 double} {1×3 double} {1×3 double}
[C{:}] = ndgrid(C{:})
C = 1x3 cell array
{3×3×3 double} {3×3×3 double} {3×3×3 double}
Thanks, now it works!

Connectez-vous pour commenter.

Réponses (1)

Steven Lord
Steven Lord le 26 Fév 2021

1 vote

Use comma-separated lists (CSL). The "How to Use the Comma-Separated Lists" section on that page shows both how to use CSL to pass inputs into a function and how to accept outputs returned from a function.

Catégories

En savoir plus sur Characters and Strings dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by