Variable pre-definition

6 views (last 30 days)
tomas
tomas on 24 Aug 2011
Answered: bharat suthar on 23 May 2020
Hello,
how can I pre-define list of variables (e.g. var_1,var_2,...,var_n) that have the same content, for example zeros(100). I thought [var_1,var_2,...var_n]=[zeros(100),zeros(100),...,zeros(100)]; could work, but I was wrong. Any idea is appreciated.
Thank you very much,
Tom

Accepted Answer

Amanda Galtman
Amanda Galtman on 24 Aug 2011
Try using the deal function:
[var_1, var_2, var_3] = deal(zeros(100));
HTH, Amanda
  2 Comments
tomas
tomas on 24 Aug 2011
That's it. Thank you Amanda :-)
Jan
Jan on 24 Aug 2011
This is correct, but not optimal for pre-allocation: After DEAL, the variables use shared data copies, which point to teh same memory. If you write to these variables, the sharing link must be released at first. Therefore a direct "var_1=zeros(100); var_2=zeros(100)" is slightly faster. But if it concerns 3 or 50 variables only, this delay can be neglected.

Sign in to comment.

More Answers (1)

bharat suthar
bharat suthar on 23 May 2020
Which of the following is a pre-defined variable in Matlab?

Categories

Find more on Quadratic Programming and Cone Programming 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!