This course provides students with a computational foundation for solving economic models numerically. The focus is on applying numerical methods to linear algebra, nonlinear analysis, and dynamic systems using Python. By the end of this course, students will be able to implement and analyze numerical algorithms relevant to economic modeling.
📌 Objective: Introduce students to numerical methods and Python for economic applications.
1.1 Introduction to Numerical Methods in Economics
Why numerical methods?
Overview of numerical approaches in economic modeling
Key computational tools: Python, NumPy, SciPy, and Matplotlib
1.2 Numerical Precision and Errors
Floating-point arithmetic and round-off errors
Conditioning and stability of numerical algorithms
1.3 Programming in Python for Economics
Basics of Python: data structures, loops, and functions
Vectorized computations with NumPy
Symbolic mathematics with SymPy
📌 Objective: Equip students with matrix-based numerical techniques to solve economic models.
2.1 Solving Systems of Linear Equations
Gaussian elimination, LU decomposition
Economic applications: General equilibrium models, Leontief input-output models
2.2 Matrix Operations and Their Economic Interpretation
Matrix inversion, determinants, rank
Economic applications: Linear regression and least squares estimation
2.3 Eigenvalues and Eigenvectors (Theory & Computational Aspects)
Spectral decomposition, diagonalization
Economic Applications:
Markov chains and transition matrices
Leontief input-output models
Preview for Part 4: Eigenvalues in dynamic stability analysis
📌 Connection to Part 4: Eigenvalue analysis will be applied to study stability of economic dynamics in Part 4.
📌 Objective: Introduce numerical techniques for solving nonlinear equations and optimization problems in economics.
3.1 Root-Finding Methods for Nonlinear Equations
Bisection method, Newton-Raphson method, fixed-point iteration
Economic applications: Market equilibrium computation
3.2 Unconstrained Optimization
Gradient-based methods (steepest descent, Newton’s method)
Economic applications: Utility maximization, firm profit maximization
3.3 Constrained Optimization
Lagrange multipliers, Kuhn-Tucker conditions
Numerical approaches: Penalty and interior-point methods
Economic applications: Constrained utility maximization, dynamic pricing
📌 Objective: Develop numerical approaches for solving dynamic economic models.
4.1 Numerical Methods for Solving Difference Equations
First- and second-order difference equations
Eigenvalues and stability analysis (linked to Part 2)
Economic applications: Growth models (Solow, Ramsey), OLG models
4.2 Numerical Solutions for Differential Equations
Euler method, Runge-Kutta methods
Phase diagrams and stability analysis using eigenvalues
Economic applications: Continuous-time dynamic optimization, DSGE models
4.3 Dynamic Programming and Bellman Equations
Value function iteration and policy function iteration
Applications in macroeconomics and finance
📌 Connection to Part 2: Eigenvalue analysis from Part 2 helps determine the stability of dynamic models in Part 4.
Qingkai Kong et al. (2021). Python Programming and Numerical Methods: A Guide for Engineers and Scientists. Online access
Numerical Methods & Computation
Robert Johansson (2018). Numerical Python. Online notebook
Svein Linge & Hans Petter Langtangen (2020). Programming for Computations - Python. Open access
Computational Economics
Kenneth Judd (1998). Numerical Methods in Economics. MIT Press.
Jeremy Greenwood & Ricardo Marto (2023). Numerical Methods for Macroeconomists with Julia and MATLAB.
Mario Miranda & Paul Fackler (2004). Applied Computational Economics and Finance.
Online Resources:
QuantEcon https://quantecon.org/ – Computational methods for economics (Python & Julia).
Juergen Jung (2024). Computational Economics. https://juejung.github.io/jdocs/Comp/html_new/