SIM

 

Introduction

SIM solves the model dynamically, i.e. lagged endogenous variables use simulated values. The simulated values are placed in the Work bank, thereby overwriting previous values of the endogenous variables. The default solving method is Gauss-Seidel.

 

You may solve goals/means by indicating these with the ENDO/EXO commands. The Newton method is used in that case. When goals are removed later on (UNFIX command), the solve method reverts to Gauss-Seidel.

 

SIM may also solve a model with leaded endogenous variables. The Fair-Taylor method is used in that case.

 

 

Syntax

SIM < period > period ;

 

period

(Optional). For instance "2010 2020" or "2010q1 2020q4". If inside the <> field, the period is local to the current statement, if outside the period will be changed globally. If no period is given, global time will be used.

 

Example

To increase all exogenious prices by 1% in 2011-2020, and see the effects on private consumption (pcp) and wages (lna):

 

READ <pcim> lang11;

LIST + #pm pm01 pm2 pm3r pm59 pm7b pm7y pms pmt;

LIST + #pe pee2 pee59 peet peesq;

TIME 2011 2020;

UPD <2011 2020> #pm * 1.01;

UPD <2011 2020> #pe * 1.01;

SIM;

MULPRT pcp lna;

 

The result shows the difference between the values running (Work bank) and values in the baseline bank (lang11) for the variables pcp and lna.

 

If you need to solve goals/means, you can use the ENDO and EXO commands to change status of exogenous and endogenous variables, and perform a SIM afterwards. In that case, the solve method will be automatically changed to the Newton algorithm (and changed back if the goals/means are removed).

 

There are many options regarding SIM: please see under OPTION (in the "OPTION solve ..." section). Or type "OPTION solve ?".

 

 

Note

A single-equation static simulation can be performed with the RES command (for instance to check historical residuals).

 

If you want to change to the Newton algorithm manually, you can use 'OPTION solve method = newton'. It typically runs a bit slower, but is generally much more robust (and precise)

 

Static simulation (one period does not affect the next period) can be obtained by setting "OPTION static = yes".

 

 

Related

options

 

OPTION solve data ignoremissing = no; [yes|no]

OPTION solve data init = yes; [yes|no]

OPTION solve data init growth = yes; [yes|no]

OPTION solve data init growth min = -0.02;

OPTION solve data init growth max = 0.06;

OPTION solve failsafe = no; [yes|no]

OPTION solve forward fair conv = conv1; [conv1|conv2]

OPTION solve forward fair conv1 rel = 0.0001;

OPTION solve forward fair conv1 abs = 0.0001;

OPTION solve forward fair conv2 trel = 0.0001;

OPTION solve forward fair conv2 tabs = 1.0;

OPTION solve forward fair damp = 0.5;

OPTION solve forward method = fair; [fair|none]

OPTION solve forward terminal = const; [const|growth|none]

OPTION solve forward fair itermax = 200;

OPTION solve forward fair itermin = 10;

OPTION solve gauss conv = conv1;

OPTION solve gauss conv1 rel = 0.0001;

OPTION solve gauss conv1 abs = 0.0001;

OPTION solve gauss conv2 trel = 0.0001;

OPTION solve gauss conv2 tabs = 1.0;

OPTION solve gauss conv ignorevars = yes; [yes|no]

OPTION solve gauss damp = 0.5;

OPTION solve gauss dump = no; [yes|no]

OPTION solve gauss itermax = 200;

OPTION solve gauss itermin = 10;

OPTION solve gauss reorder = yes; [yes|no]

OPTION solve method = gauss; [gauss|newton]

OPTION solve newton backtrack = yes; [yes|no]

OPTION solve newton invert = lu; [lu|iter]

OPTION solve newton itermax = 200;

OPTION solve newton updatefreq = 15;

OPTION solve print details = no; [yes|no]

OPTION solve print iter = no; [yes|no]

OPTION solve static = no; [yes|no]

 

 

Related

commands

MODEL, RES, EFTER, EXO, ENDO