Difference between revisions of "Matlab cell array"

From Dynamo
Jump to navigation Jump to search
Line 8: Line 8:
 
Some basic examples:
 
Some basic examples:
  
<tt>a = {}</tt>
+
<tt>a = {};</tt>
  
 
creates an empty cell array called <tt>a</tt> in the memory workspace.
 
creates an empty cell array called <tt>a</tt> in the memory workspace.
  
<tt>a = {'hello','bye'}; </tt>
+
<tt>a = {'hello','bye'}; </tt>  
 +
 
 
creates a cell array that contains the strings <tt>hello</tt> and <tt>bye</tt>, so that  
 
creates a cell array that contains the strings <tt>hello</tt> and <tt>bye</tt>, so that  
  
Line 25: Line 26:
  
  
A complete description can be found in the [https://uk.mathworks.com/help/matlab/cell-arrays.html |matlab page]
+
A complete (and rather lengthy) description can be found in the [https://uk.mathworks.com/help/matlab/cell-arrays.html |matlab page]
  
 
== Cell arrays in ''Dynamo'' ==
 
== Cell arrays in ''Dynamo'' ==
 
Cell arrays are frequently of interest for ''Dynamo'' users that need to perform operations that are complicated or not available through the GUIs.
 
Cell arrays are frequently of interest for ''Dynamo'' users that need to perform operations that are complicated or not available through the GUIs.
  
=== Operating of models ===
+
=== Loops on models ===
  
  
  
 
=== Extracting model files from a catalogue ===  
 
=== Extracting model files from a catalogue ===  
The names of the model files in a catalogue can be easily extracted with the command line <tt>dcm</tt> utility
+
The names of the model files in a catalogue can be easily extracted with the command line <tt>dcm</tt> utility. In the command:
 +
 
 +
<tt>dcm myCatalogue -i * -l m -ws o </tt>
 +
 
 +
the flags have the meaning:
 +
# <tt>-i * </tt>
 +
#  <tt>-i * </tt>
 +
# <tt>-ws o </tt>
 +
 
 +
so that the order will show  on screen the names of all the models inside the catalogue <tt>myCatalogue</tt>.

Revision as of 12:39, 2 February 2017

The cell array is a Matlab container for the storage of series of objects in the memory workspace. Individuals elements are accessed or created with the curly bracket {} notation. Cell arrays are available both in Matlab and in the standalone versions of Dynamo.


Basic syntax

Some basic examples:

a = {};

creates an empty cell array called a in the memory workspace.

a = {'hello','bye'};

creates a cell array that contains the strings hello and bye, so that

disp(a{1}); will just write the string hello in the Matlab desktop ( or in the Dynamo standalone console).

Individual elements can be added through the {}notation:

a{3} = 'hi again';

will enlarge the cell array with a third element.


A complete (and rather lengthy) description can be found in the |matlab page

Cell arrays in Dynamo

Cell arrays are frequently of interest for Dynamo users that need to perform operations that are complicated or not available through the GUIs.

Loops on models

Extracting model files from a catalogue

The names of the model files in a catalogue can be easily extracted with the command line dcm utility. In the command:

dcm myCatalogue -i * -l m -ws o

the flags have the meaning:

  1. -i *
  2. -i *
  3. -ws o

so that the order will show on screen the names of all the models inside the catalogue myCatalogue.