Skip to content
Snippets Groups Projects
Select Git revision
  • efa6c6c682b7fbd69bcc4b8daf89800f50eba9e4
  • master default protected
  • 6.x protected
  • madysson
  • 5.x protected
  • asm
  • time-varying-information-set
  • 4.6 protected
  • dynare_minreal
  • dragonfly
  • various_fixes
  • 4.5 protected
  • clang+openmp
  • exo_steady_state
  • declare_vars_in_model_block
  • julia
  • error_msg_undeclared_model_vars
  • static_aux_vars
  • slice
  • aux_func
  • penalty
  • 6.4 protected
  • 6.3 protected
  • 6.2 protected
  • 6.1 protected
  • 6.0 protected
  • 6-beta2 protected
  • 6-beta1 protected
  • 5.5 protected
  • 5.4 protected
  • 5.3 protected
  • 5.2 protected
  • 5.1 protected
  • 5.0 protected
  • 5.0-rc1 protected
  • 4.7-beta3 protected
  • 4.7-beta2 protected
  • 4.7-beta1 protected
  • 4.6.4 protected
  • 4.6.3 protected
  • 4.6.2 protected
41 results

the-model-file.rst

Blame
  • the-model-file.rst 418.67 KiB

    The model file

    Conventions

    A model file contains a list of commands and of blocks. Each command and each element of a block is terminated by a semicolon (;). Blocks are terminated by end;.

    If Dynare encounters an unknown expression at the beginning of a line or after a semicolon, it will parse the rest of that line as native MATLAB code, even if there are more statements separated by semicolons present. To prevent cryptic error messages, it is strongly recommended to always only put one statement/command into each line and start a new line after each semicolon. [1]

    Most Dynare commands have arguments and several accept options, indicated in parentheses after the command keyword. Several options are separated by commas.

    In the description of Dynare commands, the following conventions are observed:

    • Optional arguments or options are indicated between square brackets: ‘[]’;
    • Repeated arguments are indicated by ellipses: “...”;
    • Mutually exclusive arguments are separated by vertical bars: ‘|’;
    • INTEGER indicates an integer number;
    • INTEGER_VECTOR indicates a vector of integer numbers separated by spaces, enclosed by square brackets;
    • DOUBLE indicates a double precision number. The following syntaxes are valid: 1.1e3, 1.1E3, 1.1d3, 1.1D3. In some places, infinite Values Inf and -Inf are also allowed;
    • NUMERICAL_VECTOR indicates a vector of numbers separated by spaces, enclosed by square brackets;
    • EXPRESSION indicates a mathematical expression valid outside the model description (see :ref:`expr`);
    • MODEL_EXPRESSION (sometimes MODEL_EXP) indicates a mathematical expression valid in the model description (see :ref:`expr` and :ref:`model-decl`);
    • MACRO_EXPRESSION designates an expression of the macro processor (see :ref:`macro-exp`);
    • VARIABLE_NAME (sometimes VAR_NAME) indicates a variable name starting with an alphabetical character and can’t contain: ‘()+-*/^=!;:@#.’ or accentuated characters;
    • PARAMETER_NAME (sometimes PARAM_NAME) indicates a parameter name starting with an alphabetical character and can’t contain: ‘()+-*/^=!;:@#.’ or accentuated characters;
    • LATEX_NAME (sometimes TEX_NAME) indicates a valid LaTeX expression in math mode (not including the dollar signs);
    • FUNCTION_NAME indicates a valid MATLAB function name;
    • FILENAME indicates a filename valid in the underlying operating system; it is necessary to put it between quotes when specifying the extension or if the filename contains a non-alphanumeric character;

    Variable declarations