RainbowStats™ · DSGE commands

COMPILE_DSGE

Compile coefficient matrices.

Syntax

M=COMPILE_DSGE(M)

Retain returned model updates

Always assign model-building results back to the model variable. Use M=ADD_DSGE_EQUATION(M,...), M=COMPILE_DSGE(M), M=SOLVE_DSGE(M) and M=SET_DSGE_INITIAL(M,...). Unassigned calls are not a reliable way to retain updates in the script evaluator. Model-building commands return a model; FORECAST_DSGE returns a presentation.

Complete runnable example

M=DSGE_MODEL()
M=ADD_DSGE_SHOCK(M,"EPS")
M=ADD_DSGE_EQUATION(M,"X=0.5*LAG(X,1)+EPS")
M=COMPILE_DSGE(M)
M=SOLVE_DSGE(M)
M=SET_DSGE_INITIAL(M,"X",2)
FORECAST_DSGE(M,12)

The first displayed point is 2, followed by 1 and 0.5. The registered EPS innovation is zero during this deterministic forecast.

Behavior and interpretation

Converts the current equations into coefficient matrices and returns the compiled model. Compilation does not solve the model and clears stale solution results. Follow it with M=SOLVE_DSGE(M) before forecasting.

Use matrix extracts to inspect the compiled representation, for example EXTRACT(M,"current_matrix"), EXTRACT(M,"lag_matrix"), EXTRACT(M,"lead_matrix") and EXTRACT(M,"constant_vector"). Transition and shock-impact matrices belong to the solved model.

Model extracts and prerequisites

Use EXTRACT(M,"key") on the retained model. Definition metadata such as equations and parameters can be inspected before solving; coefficient matrices require compilation; solution diagnostics, transition matrices and impulse-response results require a successful solve and may depend on model settings.

In parameter:name, setting:name and result:name, replace name with an actual name. For a registered shock EPS, the impulse-response key pattern is impulse_response_chart_EPS or impulse_response_data_EPS, subject to result availability. Do not treat registration as an applied forecast shock.

Error handling

If a build, compile or solve step returns an error or diagnostic string instead of a model, stop and correct that step. Do not assume that later commands can forecast an unchanged or unsolved model.

Available extracts

Save the command result in a variable, then use EXTRACT(result, "key"). Availability can depend on the input form and fitted model.

In indexed patterns such as beta:n, replace n with the required index.