Documentation of ModelSolver. A Python class for analysing dynamic algebraic models
Working paper
Permanent lenke
https://hdl.handle.net/11250/3126915Utgivelsesdato
2024-02Metadata
Vis full innførselSamlinger
- Notater / Documents [400]
Sammendrag
This paper documents the Python class ModelSolver. ModelSolver lets the user define a model object in
terms of equations and endogenous variables. It contains methods to solve the model subject to data (in a
Pandas DataFrame), as well as analysing the model using graph theory and network plots.
What sets ModelSolver apart from other similar solvers is that it does not require the equations of the
model to be written in any particular way, or that the user associates equations with endogenous variables.
Most other solvers require that either 1) the model is normalised (i.e., that the model is written in terms of
endogenous variables), or 2) that the user explicitly associates equations with endogenous variables. This
is non-trivial for models with lots of equations. ModelSolver, however, reads equations in whatever form
they may be written, and performs the necessary analyses, without any input from the user other than lists
of equations and endogenous variables.
ModelSolver was developed to facilitate solving an input-output model for the Norwegian monthly national
accounts. 1
It analyses and solves the model’s more than 15,500 equations over more than 30 periods in
under a minute on a laptop computer.