#!/usr/bin/env python # coding: utf-8 # ## Malthusian Model: Convergence # # Recall our Solow-Malthus model. The rate of growth of the labor force and population depends on luxury-adjusted income per worker $ y/\phi $ divided by subsistence $ y^{sub} $: # # >(1) $ \frac{dL/dt}{L} = \frac{d\ln(L)}{dt} = n = \beta \left( \frac{y}{\phi y^{sub}}-1 \right) $ # # Income per worker depends on the capital-output ratio $ \kappa $, the level of the useful ideas stock $ H $, and the amount of resource scarcity induced by the labor force $ L $: # # >(2) $ \ln(y) = \theta\ln(\kappa) + \ln(H) - \ln(L)/\gamma $ # # >(3) $ \frac{d\kappa}{dt} = (1-\alpha)s - (h + (1 - 1/\gamma)n + ֿֿ\delta)\kappa $ # # With the parameters $ \alpha $ and $\theta $—the capital share of income and the capital-intensity elasticity of income—related by: # # >(4) $ \theta = \frac{\alpha}{1-\alpha}$ and $ \alpha = \frac{\theta}{1+\theta} $ # # Substitute: # # >(5) $ \frac{1}{L}\frac{dL}{dt} = \frac{d\ln(L)}{dt} = n = \beta \left( \frac{\kappa^\theta H L^{-\gamma}}{\phi y^{sub}}-1 \right) $ # # >(6) $ \frac{d\kappa}{dt} = -(1-\alpha)(h + (1-1/\gamma)n +\delta)\kappa + (1-\alpha)s $ # # Define population-adjusted-for-ideas $ P $: # # >(7) $ P = L H^{-\gamma} $ # # Then we have two state variables—capital-intensity $ \kappa $, the capital-output ratio, and population-adjusted-for-ideas $ P $. We have two dynamic equations: The rate of change of population-adjusted-for-ideas $ P $ is a function of the capital-output ratio and itself: # # >(8) $ \frac{1}{P}\frac{dP}{dt} = p = \beta \left( \frac{\kappa^\theta }{P^{1/\gamma} \phi y^{sub}}-1 \right) -h\gamma $ # # And the rate of change of capital-intensity $ \kappa $ is a function of itself and of the rate of change of population-adjusted-for-ideas $ P $: # # >(9) $ \frac{d\kappa}{dt} = (1-\alpha)s -(1-\alpha)(\gamma h +\delta)\kappa -(1-\alpha)\left(1-\frac{1}{\gamma}\right)\left(\frac{1}{P}\frac{dP}{dt}\right)\kappa $ # The steady state is then: # # >(10) $ P^{*mal} = \frac{L}{H^\gamma} = \left[ \left( \frac{1}{\phi} \right) \left( \frac{\kappa^\theta }{ y^{sub}} \right) \left( \frac{1}{ 1 + h\gamma/\beta} \right) \right]^\gamma $ # # >(11) $ \kappa^{*mal} = \frac{s}{\gamma h + \delta} $ # # Define: # # >(12) $ P = \Pi P^{*mal} $ # # >(13) $ \kappa = k \kappa^{*mal} = k (s/(\delta + \gamma h)) $ # Then: # # >(14) $ \kappa^{*mal} \frac{dk}{dt} = \left[ (1-\alpha)s -(1-\alpha)((1-1/\gamma)p + \gamma h +\delta) k (s/(\delta + \gamma h)) \right] $ # # >(15) $ \frac{1}{\Pi}\frac{d\Pi}{dt} = p = \beta \Pi^{(-1/\gamma)} k^\theta (1 + \gamma h/\beta) - \beta - h \gamma $ # # >(16) $ \Pi^{(-1/\gamma)} = 1 - \frac{\Delta \Pi}{\gamma} $ # # >(17) $ k^\theta = 1 + \theta k $ # # >(18) $ \frac{1}{\Pi}\frac{d\Pi}{dt} = p = \beta (1 + \gamma h/\beta)\left[ 1 - \frac{\Delta \Pi}{\gamma} \right]\left[ 1 + \theta \Delta k \right] - \beta - h \gamma $ # # >(19) $ \frac{dk}{dt} = (1-\alpha)( \gamma h +\delta) - (1-\alpha)(1-1/\gamma)(1 + \Delta k) \frac{d\Pi}{dt} - (1-\alpha)(\delta + h \gamma)(1 + \Delta k) $ # # >(20) $ \frac{dk}{dt} = - (1-\alpha)(\delta + h \gamma)\Delta k - (1-\alpha)(1-1/\gamma)\frac{d\Pi}{dt} - (1-\alpha)(1-1/\gamma)\Delta k \frac{d\Pi}{dt} $ # # >(21) $ \frac{d\Pi}{dt} = -((\beta + \gamma h)/\gamma)\Delta \Pi + (\beta + \gamma h)\theta \Delta k $ # # # (20) and (21) are a linearized two-equation two state-variable system for $ k = \frac{\kappa}{\kappa^*} $ and $ \Pi = \frac{P}{P^{*mal}} $, with $ \kappa = K/Y $ the capital intensity of the economy, and $ P = L H^{-\gamma} $ the population/labor force adjusted for the ideas stock. # #   # **Memo**: $ \alpha = 1/2, \gamma = 2, \theta = 1, \delta = 0.05, \beta = 0.025, h=0.0005, h \gamma = 0.001, \delta + h \gamma = .051 $ # # >(20') $ \frac{dk}{dt} = - 0.0255\Delta k - 0.25\frac{d\Pi}{dt} - 0.25\Delta k \frac{d\Pi}{dt} $ # # >(21') $ \frac{d\Pi}{dt} = - 0.013\Delta \Pi + 0.026 \Delta k $ # >(22') $ \frac{dk}{dt} = - 0.032\Delta k + 0.00325 \Delta \Pi $ # #   # # ---- # In[22]: import numpy as np import pandas as pd P_vector = [] kappa_vector = [] P_vector = P_vector + [1.941371*.75] kappa_vector = kappa_vector + [1.980198] # In[23]: for i in range(0,100): P = (1-0.025-0.0005)*P_vector[i] + 0.025*kappa_vector[i] kappa = (1-0.02525)*kappa_vector[i]+0.05 P_vector = P_vector + [P] kappa_vector = kappa_vector + [kappa] malthus_converge_df = pd.DataFrame() malthus_converge_df['P'] = P_vector malthus_converge_df['kappa'] = kappa_vector print(malthus_converge_df) # ## Malthusian: Convergence # # # # ### Catch Our Breath—Further Notes: # # # # ---- # # # # # #
# # ---- # # * Weblog Support # * nbViewer # #