Using a string to pass input argument to a function

14 views (last 30 days)
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 Comments
Stephen23
Stephen23 on 26 Feb 2021
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}

Sign in to comment.

Answers (1)

Steven Lord
Steven Lord on 26 Feb 2021
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.

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!