Automatic Solution and Log Linearisation of DSGE Models

Code to analytically log linearise DSGE models in Matlab. Requires the symbolic toolbox.
1.1K Downloads
Updated 4 Jun 2012

View License

------------------------------------------------------------
PURPOSE: Performs log-linearisation.
------------------------------------------------------------
SYNTAX: result = LogLin( VarEndoNames, VarExoNames, Parameters, Equations, SolveMode, EvalMode, EvalString, Digits );
------------------------------------------------------------
EXAMPLE: result = LogLin( { 'R', 'A' }, { 'EPSILON' }, { 'beta', 'rho' }, { 'beta * R * A / A(+1) = 1', 'A = A(-1) ^ rho * exp( EPSILON )' }, 2, 2 );
------------------------------------------------------------
OUTPUT: result: a cell array of log-linearised equations, with __d appended to variable names that are deviations from steady state.
------------------------------------------------------------
INPUT: VarEndoNames: a cell array of endogenous variable names
% VarExoNames: a cell array of exogenous variable names
% Parameters: a cell array of parameter names
% Equations: a cell array of equations, in Dynare notation
% SolveMode: specifies how the steady state is found
% SolveMode = 0 ---> the steady state is not found, instead __s is appended to the variable names
% SolveMode = 1 ---> the steady state is found analytically
% SolveMode = 2 ---> the steady state is found analytically, allowing all algebraic manipulations
% SolveMode = 3 ---> the steady state is found analytically, assuming real values
% SolveMode = 4 ---> the steady state is found numerically
% EvalMode: specifies any processing of the found equations
% EvalMode = 0 ---> no additional processing
% EvalMode = 1 ---> simplification
% EvalMode = 2 ---> simplification, allowing all algebraic manipulations
% EvalMode = 3 ---> numeric evaluation, to Digits precision
% EvalString: string of comma delimited equations, useful for specifying parameters or your own computed steady state values (e.g. 'beta=0.99,rho=1/2', or 'A=1')
Digits: (optional) the number of digits of accuracy for numerical compuations
------------------------------------------------------------
Copyright © 2011 Tom Holden ( http://www.tholden.org/ )
------------------------------------------------------------

Cite As

Tom Holden (2024). Automatic Solution and Log Linearisation of DSGE Models (https://www.mathworks.com/matlabcentral/fileexchange/31693-automatic-solution-and-log-linearisation-of-dsge-models), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2011a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.3.0.0

Previous uploaded file accidentally contained both old and new code.

1.2.0.0

Typo correction (6 arguments are OK).

1.1.0.0

Removed mention of GPL from description.

1.0.0.0