# Command Format

The commands have the following general syntax.

COMMAND ( qualifier ) {
parameter1 = value1
...
parameterN = valueN
}

where COMMAND is the name of the command, such as ANALYSIS or MATERIAL_MODEL; qualifier, including the surrounding parentheses, is a mandatory qualifier of the command; parameter1 to parameterN are the optional parameters of the command; and value1 to valueN are the corresponding values, which may be integers, reals, strings or arrays, of the parameters. An optional semicolon may be placed between parameters for clarity. If a command is given with no option, the brackets "{" and "}" may be omitted.

For example:
RUN

The input file is free format. Each command may be specified on a single line or spread across multiple lines. With the exception of double-quoted strings, all arguments are case insensitive. By convention, we write commands in upper case, for example, COORDINATE, parameters and their values in lower case, for example, type=constant_prandtl_number, and capitalize function names, for example, Read(...).

Except within double-quoted strings, all text after and including a pound (hash) sign is treated as a comment, hence ignored. For example,
ANALYSIS {
title = "Example problem # 1"
mode = static       # run as static for now
# change to dynamic for final run
}

The "#" in "Example problem # 1" is a part of the string value of the title. The other two hash signs and the text that follows them are treated as comments.

There are two types of commands: Functional Commands and Declarative Commands.