RainbowStats™ · DSGE commands
SOLVE_DSGE
Solve the defined system.
Syntax
M=SOLVE_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
Compiles if needed and solves through the installed linear solver. On success the returned model contains the policy rule and named solution results. It requires a nonempty valid system; success depends on consistency, rank and the solver's solution conditions.
Inspect EXTRACT(M,"solver_summary"), EXTRACT(M,"stability") and EXTRACT(M,"policy_residual") before interpreting the solution. A numerical solution does not itself establish economic identification or empirical fit. This command does not perform Bayesian estimation or nonlinear solution.
Adding equations or shocks clears the solution. Solve the revised model again before forecasting.
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.
modelsummaryequationsparameterssettingsslideshowparameter:namesetting:nameresult:namelead_matrixcurrent_matrixlag_matrixshock_matrixconstant_vectortransition_matrixshock_impact_matrixintercept_vectoreigenvaluesspectral_radiuspolicy_residualsolver_iterationsstabilitysolver_summaryimpulse_response_chart_SHOCKimpulse_response_data_SHOCK
In indexed patterns such as beta:n, replace n with the required index.