m2scideclare ============ Giving tips to help M2SCI... Description ~~~~~~~~~~~ The main difficulty for M2SCI ( `mfile2sci`) is to find what variables are: dimensions, type... To help this tool, just add comments beginning with `%m2scideclare` in the M-file to convert, ( `%m2sciassume` was used in previous Scilab versions and is now obsolete). The syntax of this command is: `%m2scideclare variable_name|dimensions|data_type|property` with : + + variable_name: name of the variable declared. It can be a Struct field (e.g. `x(1,2).name`) or describe the contents of a Cell using syntax `x(1,2).entries`. NOTE that for Cells and Structs, `*` can be used as an index (see examples below). + dimensions: dimensions of the variable declared separated by blanks, if a dimension is unknown, replace it by `?`. NOTE that String dimensions must be similar to Matlab ones e.g. `1 6` for character string 'string'. + data_type: data type of the variable which can be: m2scideclare data type Scilab "equivalent" type Double 1 Boolean 4 Sparse 5 Int 8 Handle 9 String 10 Struct Matlab struct (16) Cell Matlab cell (17) Void No type (0) ? Unknown type + property: property of the variable which can be: m2scideclare property Scilab "equivalent" Real Real data Complex Complex data ? Unknown property This field is ignored for following datatypes: `Cell`, `Struct`, `String` and `Boolean`. All data given by `m2scideclare` are compared with infered data, in case of conflict, infered data are kept and a warning message is displayed. If you are sure about your data, report a bug. Some examples are given below: + + `%m2scideclare var1|2 3|Double|Real`var1 is declared as a 2x3 Double matrix containing real data + `%m2scideclare var2|2 3 10|Double|Complex`var2 is declared as a 2x3x10 Double hypermatrix containing complex data + `%m2scideclare var3(1,2).name|1 10|String|?`var3 is declared as a Struct array containing a 1x10 character string in field 'name' of struct at index (1,2) + `%m2scideclare var4(1,5).entries|1 ?|Boolean|?`var4 is declared as a Cell containing a row boolean vector at index (1,5) + `%m2scideclare var4(1,6).entries|? ?|Int|?`var4 is declared as a Cell containing a row boolean vector at index (1,5) and integer data at index (1,6) + `%m2scideclare var5(*,*).name|1 ?|String|?`var5 is declared as a Struct array containing a 1xn character string in all fields 'name' + `%m2scideclare var6(2,*).entries|1 3|Double|Real`var6 is declared as a Cell array containing a 1x3 double vector in each element of its second row