User Tools

Site Tools


trainingtutorial:create_code

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
trainingtutorial:create_code [2009/12/22 15:02]
shona.weldon
trainingtutorial:create_code [2009/12/22 15:12] (current)
shona.weldon
Line 2: Line 2:
  
 The obvious way to create code is to just type it in but there are also some features in the [[trainingtutorial:​documenter_tour#​procedure editor dialogue]] that will help. The obvious way to create code is to just type it in but there are also some features in the [[trainingtutorial:​documenter_tour#​procedure editor dialogue]] that will help.
 +
 +For lots of tips on tool coding see: [[https://​www.whatiftechnologies.com/​doku.php?​id=how_tos|How Tos]]
  
 ===== Clicking in variable and informant names ===== ===== Clicking in variable and informant names =====
Line 9: Line 11:
 It is VERY important to note that the dimensions inside the square brackets "​[]"​ is ONLY guidance for the user and is completely ignored by the parser. ​ It can happen that these indicies get out of sync with the code and so they should be considered questionable and verified with a seeshape (varname[]) whenever you aren't sure. It is VERY important to note that the dimensions inside the square brackets "​[]"​ is ONLY guidance for the user and is completely ignored by the parser. ​ It can happen that these indicies get out of sync with the code and so they should be considered questionable and verified with a seeshape (varname[]) whenever you aren't sure.
  
-===== <​Ctrl>​ Double Click in left box =====+===== <​Ctrl>​ Double Click in left hand panel =====
 This operation gives you the properties dialog for whatever you select. ​ This is useful for checking shape, history, and notes information for variables and for checking element names for informants. This operation gives you the properties dialog for whatever you select. ​ This is useful for checking shape, history, and notes information for variables and for checking element names for informants.
  
Line 25: Line 27:
   * Multiplication is NOT "​Matrix"​ multiplication it is cell by cell multiplication with matching of the indicies. ​ When there is a dimension in    * Multiplication is NOT "​Matrix"​ multiplication it is cell by cell multiplication with matching of the indicies. ​ When there is a dimension in 
   * Nesting of tool calls works to any depth, however, it can only be done for the left most inputs of the inputs for example:   * Nesting of tool calls works to any depth, however, it can only be done for the left most inputs of the inputs for example:
 +
 +**Example 1** Nesting:
     * This works (because the sum is the first input to the booleq tool):     * This works (because the sum is the first input to the booleq tool):
 <​code>​A[] = booleq (sum (B[x]; dim=xName), 0) </​code>​ <​code>​A[] = booleq (sum (B[x]; dim=xName), 0) </​code>​
     * but this does not (because the sum is now the second input to the booleq tool)     * but this does not (because the sum is now the second input to the booleq tool)
 <​code>​A[] = booleq (0, sum (B[x]; dim=xName)) </​code>​ <​code>​A[] = booleq (0, sum (B[x]; dim=xName)) </​code>​
 +
 +**Example 2** Nesting with infix
     * Similarly for infix calling of tools, this works (because the sum is the first input to the "​+"​ tool):     * Similarly for infix calling of tools, this works (because the sum is the first input to the "​+"​ tool):
 <​code>​A[] = sum (B[x]; dim=xName) + 1 </​code>​ <​code>​A[] = sum (B[x]; dim=xName) + 1 </​code>​
-    * but this does not (because the sum is now the second input to the booleq ​tool)+    * but this does not (because the sum is now the second input to the "​+" ​tool)
 <​code>​A[] =1 + sum (B[x]; dim=xName) ​ </​code>​ <​code>​A[] =1 + sum (B[x]; dim=xName) ​ </​code>​
  
  
  
trainingtutorial/create_code.1261494159.txt.gz ยท Last modified: 2009/12/22 15:02 by shona.weldon