Introduction to SYMB

Scripting a model in OnScale offers a wide range of advantages over a more graphical approach:

  • Parameterisation of model inputs to allow rapid design modifications
  • Greater control of simulation conditions
  • Batch processing

For creating transient simulations, scripting affords users much greater control and flexibility with not only parameters and model set-up, but also with the chronology of the simulation. For example, both static and dynamic models can be ran in a single simulation. All that is required is for the user to issue two commands to turn on/off static simulation conditions.

The symb language is an interpretive language that was developed specifically to handle I/O communication with the Flex family of codes. It is a high level language that is based on FORTRAN and allows users to:

  • Define variables
  • Issue Flex specific commands
  • Data I/OPerform mathematical operations
  • Perform logic (if, else, goto, procedures)
  • Facilities the creation of Input Files (*.flxinp)

Behaviours of SYMB

  1. Only the first 200 columns of an input line are read.
  2. Command lines whose parameter list would exceed 200 characters may be continued on subsequent lines by placing an “&” character at the end of each line which is to be continued. There is no limit to the number of continuation lines which can be used to form a single command input line.
  3. Up to 300 input parameters may be placed on a single command line.
  4. All input parameters on a command line must be separated by one or more blank spaces
  5. Input parameters must appear on the command line in the order specified by the command's definition.
  6. An * (asterisk) character as an input parameter's value denotes a default value.
  7. All input parameters left blank at the end of a command line are automatically assigned default values.
  8. Blank lines are ignored.
  9. A floating point input parameter begins with a +(plus), -(minus), .(decimal point), or numeric character (0-9). An integer input parameter begins with a +(plus), -(minus), or numeric character. A character string must either begin with an alphabetic character (A-Z) or be enclosed in single quotes (').
  10. Character data inputs are a maximum of 20 characters long unless otherwise noted. No embedded blanks are allowed.