Code covered by the BSD License

### Highlights from Automatic Solution and Log Linearisation of DSGE Models

3.0
3.0 | 3 ratings Rate this file 6 Downloads (last 30 days) File Size: 3.7 KB File ID: #31693 Version: 1.3

# Automatic Solution and Log Linearisation of DSGE Models

### Tom Holden (view profile)

06 Jun 2011 (Updated )

Code to analytically log linearise DSGE models in Matlab. Requires the symbolic toolbox.

File Information
Description

------------------------------------------------------------
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 = 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
------------------------------------------------------------
------------------------------------------------------------

Required Products Symbolic Math Toolbox
MATLAB release MATLAB 7.12 (R2011a)
08 Jul 2016 Brian Dombeck

### Brian Dombeck (view profile)

Does not seem capable of handling equations without lags/leads, e.g. aggregate resource constraints. Useful as a check on log-linearization by hand.

08 Jul 2016 Brian Dombeck

### Brian Dombeck (view profile)

12 Feb 2013 Tom Holden

### Tom Holden (view profile)

I personally use Dynare almost exclusively. This is just for the rare times when people on insist on working with a log-linearised model.

Comment only
12 Feb 2013 osvaldo

### osvaldo (view profile)

What's the difference (advantage or disadvantage), between this model and dynare, do you recomend to use it for large DSGE models, does it provide a log-linearization result as equation.

06 Jun 2011 1.1

Removed mention of GPL from description.

01 Dec 2011 1.2

Typo correction (6 arguments are OK).

04 Jun 2012 1.3

Previous uploaded file accidentally contained both old and new code.