From 5d8fbb0b139c5ccde8d4961ad4e6becfb29e20e1 Mon Sep 17 00:00:00 2001 From: yuki <1401895664m@gmail.com> Date: Thu, 8 May 2025 12:39:48 +0800 Subject: [PATCH 1/4] I have modified the code comments, main body content and website address of samuelson.md --- lectures/samuelson.md | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/lectures/samuelson.md b/lectures/samuelson.md index 475ef65..4207043 100644 --- a/lectures/samuelson.md +++ b/lectures/samuelson.md @@ -23,7 +23,7 @@ kernelspec: :depth: 2 ``` -除了Anaconda中已有的库外,本讲座还需要以下库: +除了Anaconda中已有的库外,这节课程还需要以下库: ```{code-cell} ipython --- @@ -76,11 +76,11 @@ from cmath import sqrt - 凯恩斯式*消费函数*,表明t时期的消费等于一个常数乘以t-1时期的国民产出。 - 投资*加速器*,表明t时期的投资等于一个称为*加速系数*的常数乘以t-1时期和t-2时期产出之差。 -消费加投资加政府购买构成了*总需求*,这自动引致相等数量的*总供给*。 +消费加投资加政府购买构成了*总需求*,这自然而然对应相等数量的*总供给*。 -(关于线性差分方程的内容请参见[这里](https://en.wikipedia.org/wiki/Linear_difference_equation)或{cite}`Sargent1987`的第九章。) +(关于线性差分方程的内容请参见[这里](https://baike.baidu.com/item/%E5%B8%B8%E7%B3%BB%E6%95%B0%E7%BA%BF%E6%80%A7%E9%80%92%E6%8E%A8%E6%95%B0%E5%88%97/8017610)或{cite}`Sargent1987`的第九章。) -Samuelson使用该模型分析了边际消费倾向和加速系数的特定值如何可能导致国民产出出现暂时性的*商业周期*。 +Samuelson使用该模型分析了边际消费倾向和加速系数的特定值如何在一定概率上导致国民产出出现暂时性的*商业周期*。 可能的动态特性包括: @@ -169,7 +169,7 @@ $$ 我们通常会设置参数$(a,b)$,使得从任意一对初始条件$(\bar Y_{-1}, \bar Y_{-2})$开始,国民收入$Y_t$在$t$变大时会收敛到一个常数值。 -我们感兴趣的是研究 +我们感兴趣的是: - $Y_t$在收敛到其**稳态**水平过程中的暂时波动 - 其收敛到稳态水平的**速率** @@ -300,13 +300,13 @@ $$ \end{aligned} $$ -其中$v$和$\theta$是必须选择的常数,以满足$Y_{-1}, Y_{-2}$的初始条件。 +其中$v$和$\theta$是确定的常数,可以通过$Y_{-1}, Y_{-2}$的初始条件得到。 这个公式表明,当根为复数时,$Y_t$表现出具有**周期**$\check p = \frac{2 \pi}{\omega}$和**衰减因子**$r$的振荡。 我们称$\check p$为**周期**,是因为在这段时间内,余弦波$\cos(\omega t + \theta)$恰好完成一个完整的周期。 -(请画一个余弦函数来说服自己这一点) +(请画一个余弦函数来辅助自己理解) **注释:** 遵循{cite}`Samuelson1939`,我们要选择模型的参数$a, b$,使得特征多项式的(可能是复数的)根$\lambda_1, \lambda_2$的绝对值都严格小于1: @@ -335,13 +335,13 @@ $$ * 在某个时间点G的一次性跳跃 * 在某个时间点发生的G的永久性跳跃 -我们继续使用萨缪尔森乘数-加速器模型作为实验室来制作一个简单的面向对象编程示例。 +我们继续将萨缪尔森的乘数-加速器模型作为实验工具,用来构建一个简单的面向对象编程示例。 决定下一期$Y_{t+1}$的"状态"现在不仅仅是当前值$Y_t$,还包括滞后一期的值$Y_{t-1}$。 -这需要比索洛模型类定义更多的记录工作。 +因此这比在 Solow 模型的类定义中所需的记录工作要稍微多一些。 -我们使用萨缪尔森乘数-加速器模型作为载体,来教授如何逐步为类添加更多功能。 +我们以萨缪尔森的乘数-加速器模型为例,说明如何逐步为类添加功能。 我们希望在类中有一个方法可以自动生成模拟,既可以是非随机的($\sigma=0$)也可以是随机的($\sigma > 0$)。 @@ -476,7 +476,7 @@ categorize_solution(1.3, -.4) ### 绘制路径的函数 -对于我们接下来的工作,以下是一个有用的函数 +我们再定义一个对接下来的工作很有用的函数 ```{code-cell} ipython3 def plot_y(function=None): @@ -551,7 +551,7 @@ def y_nonstochastic(y_0=100, y_1=80, α=.92, β=.5, γ=10, n=80): plot_y(y_nonstochastic()) ``` -### 反向工程参数以生成阻尼周期 +### 反向推导参数以生成阻尼周期 下一个单元格编写的代码以极坐标形式的一对共轭复数的模 $r$ 和相位 $\phi$ 作为输入 @@ -563,7 +563,7 @@ $$ - 然后反向推导出能生成这些根的 $(a,b)$ 和 $(\rho_1, \rho_2)$ 对 ```{code-cell} ipython3 -### 反向工程周期的代码 +### 反向推导周期的代码 ### y_t = r^t (c_1 cos(ϕ t) + c2 sin(ϕ t)) ### @@ -672,9 +672,9 @@ def y_nonstochastic(y_0=100, y_1=80, α=.9, β=.8, γ=10, n=80): plot_y(y_nonstochastic()) ``` -### 反向工程复数根:示例 +### 反向推导复数根:示例 -下一个单元研究反向工程复数根的含义。 +下一个单元研究反向推导复数根的含义。 我们将生成一个周期为10的**无阻尼**循环 @@ -684,7 +684,7 @@ r = 1 # 生成无阻尼、非爆炸性循环 period = 10 # 时间单位中的循环长度 ϕ = 2 * math.pi/period -## 应用反向工程函数f +## 应用反向推导函数f ρ1, ρ2, a, b = f(r, ϕ) @@ -783,7 +783,7 @@ r = .97 period = 10 # 时间单位中的周期长度 ϕ = 2 * math.pi/period -### 应用反向工程函数f +### 应用反向推导函数f ρ1, ρ2, a, b = f(r, ϕ) From 367655fe82bc5da10ed2a02889caf88310fde410 Mon Sep 17 00:00:00 2001 From: yuki <1401895664m@gmail.com> Date: Thu, 8 May 2025 14:16:28 +0800 Subject: [PATCH 2/4] I have modified the code comments, main body content and website address of samuelson.md --- lectures/samuelson.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/lectures/samuelson.md b/lectures/samuelson.md index 4207043..2838660 100644 --- a/lectures/samuelson.md +++ b/lectures/samuelson.md @@ -105,8 +105,8 @@ Samuelson使用该模型分析了边际消费倾向和加速系数的特定值 * $\{I_t\}$ 是投资率的序列,是另一个关键内生变量。 * $\{Y_t\}$ 是国民收入水平的序列,也是一个内生变量。 -- $a$ 是凯恩斯消费函数 $C_t = a Y_{t-1} + \gamma$ 中的边际消费倾向。 -- $b$ 是"投资加速器"$I_t = b (Y_{t-1} - Y_{t-2})$ 中的"加速系数"。 +- $a$ 是凯恩斯消费函数 $C_t = \alpha Y_{t-1} + \gamma$ 中的边际消费倾向。 +- $b$ 是"投资加速器"$I_t = \beta (Y_{t-1} - Y_{t-2})$ 中的"加速系数"。 - $\{\epsilon_{t}\}$ 是一个独立同分布的标准正态随机变量序列。 - $\sigma \geq 0$ 是一个"波动性"参数 --- 当设定 $\sigma = 0$ 时, 我们将得到最初要研究的非随机情况。 @@ -116,7 +116,7 @@ Samuelson使用该模型分析了边际消费倾向和加速系数的特定值 ```{math} :label: consumption -C_t = a Y_{t-1} + \gamma +C_t = α Y_{t-1} + \gamma ``` 和投资加速器 @@ -124,7 +124,7 @@ C_t = a Y_{t-1} + \gamma ```{math} :label: accelerator -I_t = b (Y_{t-1} - Y_{t-2}) +I_t = β (Y_{t-1} - Y_{t-2}) ``` 以及国民收入恒等式 @@ -136,15 +136,15 @@ Y_t = C_t + I_t + G_t ``` - 参数 $a$ 是人们的收入*边际消费倾向* - - 方程 {eq}`consumption` 表明人们会消费每增加一美元收入中的 $a \in (0,1)$ 部分。 -- 参数 $b > 0$ 是投资加速系数 - 方程 + - 方程 {eq}`consumption` 表明人们会消费每增加一美元收入中的 $\alpha \in (0,1)$ 部分。 +- 参数 $\beta > 0$ 是投资加速系数 - 方程 {eq}`accelerator` 表明当收入增加时人们会投资实物资本,当收入减少时会减少投资。 方程 {eq}`consumption`、{eq}`accelerator` 和 {eq}`income_identity` 推导出以下关于国民收入的二阶线性差分方程: $$ -Y_t = (a+b) Y_{t-1} - b Y_{t-2} + (\gamma + G_t) +Y_t = (\alpha+\beta) Y_{t-1} - \beta Y_{t-2} + (\gamma + G_t) $$ 或 @@ -155,7 +155,7 @@ $$ Y_t = \rho_1 Y_{t-1} + \rho_2 Y_{t-2} + (\gamma + G_t) ``` -其中 $\rho_1 = (a+b)$ 且 $\rho_2 = -b$。 +其中 $\rho_1 = (\alpha+\beta)$ 且 $\rho_2 = -\beta$。 为完成这个模型,我们需要两个**初始条件**。 @@ -167,7 +167,7 @@ $$ Y_{-1} = \bar Y_{-1}, \quad Y_{-2} = \bar Y_{-2} $$ -我们通常会设置参数$(a,b)$,使得从任意一对初始条件$(\bar Y_{-1}, \bar Y_{-2})$开始,国民收入$Y_t$在$t$变大时会收敛到一个常数值。 +我们通常会设置参数$(\alpha,\beta)$,使得从任意一对初始条件$(\bar Y_{-1}, \bar Y_{-2})$开始,国民收入$Y_t$在$t$变大时会收敛到一个常数值。 我们感兴趣的是: @@ -187,7 +187,7 @@ $$ ```{math} :label: second_stochastic -Y_t = G_t + a (1-b) Y_{t-1} - a b Y_{t-2} + \sigma \epsilon_{t} +Y_t = \gamma + G_t + (α+β) Y_{t-1} - β Y_{t-2} + \sigma \epsilon_{t} ``` ### 模型的数学分析 @@ -911,7 +911,7 @@ class Samuelson(): .. math:: - Y_t = + \alpha (1 + \beta) Y_{t-1} - \alpha \beta Y_{t-2} + Y_t = + (α + β) Y_{t-1} - β Y_{t-2} 参数 ---------- From 3e672e3a6eede89818c39e797348386ae9ed741b Mon Sep 17 00:00:00 2001 From: Humphrey Yang Date: Thu, 15 May 2025 12:21:15 +1000 Subject: [PATCH 3/4] minor updates --- lectures/samuelson.md | 110 ++++++++++++++++++++++-------------------- 1 file changed, 57 insertions(+), 53 deletions(-) diff --git a/lectures/samuelson.md b/lectures/samuelson.md index 2838660..0396dee 100644 --- a/lectures/samuelson.md +++ b/lectures/samuelson.md @@ -34,17 +34,17 @@ tags: [hide-output] ## 概述 -本讲将创建保罗·萨缪尔森著名的乘数加速模型的非随机和随机版本 {cite}`Samuelson1939`。 +本讲将介绍保罗·萨缪尔森著名的乘数加速模型,包括其非随机和随机两个版本 {cite}`Samuelson1939`。 -在此过程中,我们将扩展[面向对象编程第二讲](https://python-programming.quantecon.org/python_oop.html)中的索洛模型类示例。 +在此过程中,我们将扩展[面向对象编程第二讲](https://python-programming.quantecon.org/python_oop.html#example-the-solow-growth-model)中的索洛模型类示例。 -我们的目标是: +本讲的主要目标包括: -* 提供面向对象编程和类的更详细示例 -* 回顾一个著名模型 -* 回顾线性差分方程,包括确定性和随机性两种 +* 通过萨缪尔森模型深入学习面向对象编程和类的使用 +* 深入理解这个经典的经济学模型 +* 复习线性差分方程的相关知识,包括非随机和随机两种情况 -让我们从一些标准导入开始: +让我们从一些标准的导入开始: ```{code-cell} ipython import matplotlib.pyplot as plt @@ -57,7 +57,7 @@ plt.rcParams["figure.figsize"] = (11, 5) #设置默认图形大小 import numpy as np ``` -我们还将使用以下内容来完成下面描述的各种任务: +我们还将使用以下Python库: ```{code-cell} ipython from quantecon import LinearStateSpace @@ -70,27 +70,27 @@ from cmath import sqrt ### 萨缪尔森模型 -萨缪尔森使用*二阶线性差分方程*来表示一个基于三个组成部分的国民产出模型: +萨缪尔森(Samuelson)使用*二阶线性差分方程*来表示一个基于三个组成部分的国民产出模型: - *国民产出恒等式*,表明国民产出或国民收入是消费、投资和政府购买的总和。 -- 凯恩斯式*消费函数*,表明t时期的消费等于一个常数乘以t-1时期的国民产出。 -- 投资*加速器*,表明t时期的投资等于一个称为*加速系数*的常数乘以t-1时期和t-2时期产出之差。 +- 凯恩斯式的*消费函数*,表明$t$时期的消费等于一个常数乘以$t-1$时期的国民产出。 +- 投资*加速器*,表明$t$时期的投资等于一个称为*加速系数*的常数乘以$t-1$时期和$t-2$时期产出之差。 -消费加投资加政府购买构成了*总需求*,这自然而然对应相等数量的*总供给*。 +消费、投资和政府购买的总和构成了*总需求*,根据供需平衡,这必然对应了相同数量的*总供给*。 (关于线性差分方程的内容请参见[这里](https://baike.baidu.com/item/%E5%B8%B8%E7%B3%BB%E6%95%B0%E7%BA%BF%E6%80%A7%E9%80%92%E6%8E%A8%E6%95%B0%E5%88%97/8017610)或{cite}`Sargent1987`的第九章。) -Samuelson使用该模型分析了边际消费倾向和加速系数的特定值如何在一定概率上导致国民产出出现暂时性的*商业周期*。 +萨缪尔森使用该模型分析了边际消费倾向和加速系数的特定值如何在一定概率上导致国民产出出现暂时性的*商业周期*。 -可能的动态特性包括: +可能的动态特性包括以下几种: -* 平稳收敛到一个固定的产出水平 +* 动态平稳收敛到一个固定的产出水平 * 最终收敛到固定产出水平的衰减商业周期 * 既不衰减也不发散的持续性商业周期 后面我们将介绍一个扩展模型,在国民收入恒等式右侧加入一个随机冲击项,代表总需求的随机波动。 -这一修改使国民产出受到二阶*随机线性差分方程*的支配,在适当的参数值下,会产生反复出现的不规则商业周期。 +这一修改使国民产出受到二阶*随机线性差分方程*的影响,在适当的参数值下,会产生反复出现的不规则商业周期。 (关于随机线性差分方程的内容,请参见{cite}`Sargent1987`的第XI章。) @@ -105,8 +105,8 @@ Samuelson使用该模型分析了边际消费倾向和加速系数的特定值 * $\{I_t\}$ 是投资率的序列,是另一个关键内生变量。 * $\{Y_t\}$ 是国民收入水平的序列,也是一个内生变量。 -- $a$ 是凯恩斯消费函数 $C_t = \alpha Y_{t-1} + \gamma$ 中的边际消费倾向。 -- $b$ 是"投资加速器"$I_t = \beta (Y_{t-1} - Y_{t-2})$ 中的"加速系数"。 +- $\alpha$ 是凯恩斯消费函数 $C_t = \alpha Y_{t-1} + \gamma$ 中的边际消费倾向。 +- $\beta$ 是"投资加速器" $I_t = \beta (Y_{t-1} - Y_{t-2})$ 中的"加速系数"。 - $\{\epsilon_{t}\}$ 是一个独立同分布的标准正态随机变量序列。 - $\sigma \geq 0$ 是一个"波动性"参数 --- 当设定 $\sigma = 0$ 时, 我们将得到最初要研究的非随机情况。 @@ -116,7 +116,7 @@ Samuelson使用该模型分析了边际消费倾向和加速系数的特定值 ```{math} :label: consumption -C_t = α Y_{t-1} + \gamma +C_t = \alpha Y_{t-1} + \gamma ``` 和投资加速器 @@ -124,7 +124,7 @@ C_t = α Y_{t-1} + \gamma ```{math} :label: accelerator -I_t = β (Y_{t-1} - Y_{t-2}) +I_t = \beta (Y_{t-1} - Y_{t-2}) ``` 以及国民收入恒等式 @@ -135,7 +135,7 @@ I_t = β (Y_{t-1} - Y_{t-2}) Y_t = C_t + I_t + G_t ``` -- 参数 $a$ 是人们的收入*边际消费倾向* +- 参数 $\alpha$ 是人们的收入*边际消费倾向* - 方程 {eq}`consumption` 表明人们会消费每增加一美元收入中的 $\alpha \in (0,1)$ 部分。 - 参数 $\beta > 0$ 是投资加速系数 - 方程 {eq}`accelerator` 表明当收入增加时人们会投资实物资本,当收入减少时会减少投资。 @@ -169,20 +169,20 @@ $$ 我们通常会设置参数$(\alpha,\beta)$,使得从任意一对初始条件$(\bar Y_{-1}, \bar Y_{-2})$开始,国民收入$Y_t$在$t$变大时会收敛到一个常数值。 -我们感兴趣的是: +也就是说,我们感兴趣的是: - $Y_t$在收敛到其**稳态**水平过程中的暂时波动 -- 其收敛到稳态水平的**速率** +- 及其收敛到稳态水平的**速率** -到目前为止所描述的确定性版本的模型——意味着没有随机冲击影响总需求——只有暂时的波动。 +到目前为止我们讨论的是模型的非随机版本,即没有随机冲击影响总需求的情况。在这种情况下,模型只会产生暂时的波动。 -我们可以通过在总需求中加入随机冲击,将模型转换为具有持续不规则波动的模型。 +为了使模型更贴近现实,我们可以在总需求中引入随机冲击,这样就能产生持续的、不规则的经济波动。 ### 模型的随机版本 我们通过在方程{eq}`second_order`的右侧加入一个**冲击**或**扰动**的随机过程$\{\sigma \epsilon_t \}$,创建模型的**随机**版本, -导致**二阶标量线性随机差分方程**: +由此得出**二阶标量线性随机差分方程**: ```{math} :label: second_stochastic @@ -269,9 +269,9 @@ $$ 其中 $c_1$ 和 $c_2$ 是取决于两个初始条件和 $\rho_1, \rho_2$ 的常数。 -当根为复数时,进行以下计算是有用的。 +当根为复数时,以下的计算将非常有用。 -注意到 +注意 $$ \begin{aligned} @@ -308,7 +308,7 @@ $$ (请画一个余弦函数来辅助自己理解) -**注释:** 遵循{cite}`Samuelson1939`,我们要选择模型的参数$a, b$,使得特征多项式的(可能是复数的)根$\lambda_1, \lambda_2$的绝对值都严格小于1: +**注释:** 遵循{cite}`Samuelson1939`,我们要选择模型的参数$\alpha, \beta$,使得特征多项式的(可能是复数的)根$\lambda_1, \lambda_2$的绝对值都严格小于1: $$ | \lambda_j | < 1 \quad \quad \text{对于 } j = 1, 2 @@ -322,7 +322,7 @@ $$ 该函数需要我们输入$Y_{-1}, Y_{-2}$的初始条件。 -该函数会检查$a, b$的设置是否使得$\lambda_1, \lambda_2$的绝对值(也称为"模")小于1。 +该函数会检查$\alpha, \beta$的设置是否使得$\lambda_1, \lambda_2$的绝对值(也称为"模")小于1。 该函数还会告诉我们根是否为复数,如果是复数,则会返回它们的实部和虚部。 @@ -332,8 +332,8 @@ $$ 我们编写函数的方式允许我们输入几种简单形式的$\{G_t\}$路径,例如: -* 在某个时间点G的一次性跳跃 -* 在某个时间点发生的G的永久性跳跃 +* 在某个时间点$G$的一次性跳跃 +* 在某个时间点发生的$G$的永久性跳跃 我们继续将萨缪尔森的乘数-加速器模型作为实验工具,用来构建一个简单的面向对象编程示例。 @@ -573,15 +573,15 @@ def f(r, ϕ): 并创建特征多项式的 ρ1 和 ρ2,其中 r exp(j ϕ) 和 r exp(- j ϕ) 是复根。 - 返回验证这些根的乘数系数 a 和加速器系数 b。 + 返回验证这些根的乘数系数 α 和加速器系数 β。 """ g1 = cmath.rect(r, ϕ) # 生成两个复根 g2 = cmath.rect(r, -ϕ) ρ1 = g1 + g2 # 隐含的 ρ1, ρ2 ρ2 = -g1 * g2 - b = -ρ2 # 反向推导验证这些的 a 和 b - a = ρ1 - b - return ρ1, ρ2, a, b + β = -ρ2 # 反向推导验证这些的 α 和 β + α = ρ1 - β + return ρ1, ρ2, α, β ## 现在让我们在示例中使用这个函数 ## 这里是示例参数 @@ -592,9 +592,9 @@ period = 10 # 时间单位中的周期长度 ## 应用函数 -ρ1, ρ2, a, b = f(r, ϕ) +ρ1, ρ2, α, β = f(r, ϕ) -print(f"a, b = {a}, {b}") +print(f"α, β = {α}, {β}") print(f"ρ1, ρ2 = {ρ1}, {ρ2}") ``` @@ -609,7 +609,7 @@ print(f"ρ1, ρ2 = {ρ1}, {ρ2}") ### 使用Numpy求根 -我们将使用numpy来计算特征多项式的根 +我们将使用`numpy`来计算特征多项式的根 ```{code-cell} ipython3 r1, r2 = np.roots([1, -ρ1, -ρ2]) @@ -621,7 +621,7 @@ print(f"r, ϕ = {r}, {ϕ}") print(f"p1, p2 = {p1}, {p2}") # print(f"g1, g2 = {g1}, {g2}") -print(f"a, b = {a}, {b}") +print(f"α, β = {α}, {β}") print(f"ρ1, ρ2 = {ρ1}, {ρ2}") ``` @@ -686,15 +686,15 @@ period = 10 # 时间单位中的循环长度 ## 应用反向推导函数f -ρ1, ρ2, a, b = f(r, ϕ) +ρ1, ρ2, α, β = f(r, ϕ) # 去掉虚部,使其成为y_nonstochastic的有效输入 -a = a.real -b = b.real +α = α.real +β = β.real -print(f"a, b = {a}, {b}") +print(f"α, β = {α}, {β}") -ytemp = y_nonstochastic(α=a, β=b, y_0=20, y_1=30) +ytemp = y_nonstochastic(α=α, β=β, y_0=20, y_1=30) plot_y(ytemp) ``` @@ -713,10 +713,10 @@ sympy.solve(z**2 - r1*z - r2, z) ``` ```{code-cell} ipython3 -a = Symbol("α") -b = Symbol("β") -r1 = a + b -r2 = -b +α = Symbol("α") +β = Symbol("β") +r1 = α + β +r2 = -β sympy.solve(z**2 - r1*z - r2, z) ``` @@ -1053,9 +1053,13 @@ class Samuelson(): ax.grid() # 在图中添加参数值 - paramstr = f'$\\alpha={self.α:.2f}$ \n $\\beta={self.β:.2f}$ \n \ - $\\gamma={self.γ:.2f}$ \n $\\sigma={self.σ:.2f}$ \n \ - $\\rho_1={self.ρ1:.2f}$ \n $\\rho_2={self.ρ2:.2f}$' + paramstr = f''' + $\\alpha={self.α:.2f}$ + $\\beta={self.β:.2f}$ + $\\gamma={self.γ:.2f}$ + $\\sigma={self.σ:.2f}$ + $\\rho_1={self.ρ1:.2f}$ + $\\rho_2={self.ρ2:.2f}$''' props = dict(fc='white', pad=10, alpha=0.5) ax.text(0.87, 0.05, paramstr, transform=ax.transAxes, fontsize=12, bbox=props, va='bottom') @@ -1344,7 +1348,7 @@ pure_multiplier.plot_irf(100) ## 总结 -在本讲中,我们编写了函数和类来表示萨缪尔森(1939)乘数-加速器模型的非随机和随机版本,该模型在{cite}`Samuelson1939`中有所描述。 +在本讲中,我们编写了函数和类来表示萨缪尔森乘数-加速器模型的非随机和随机版本,该模型在{cite}`Samuelson1939`中有所描述。 我们看到不同的参数值会导致不同的输出路径,这些路径可能是平稳的、发散的或振荡的。 From b13423f909e43a25b12437d12c89ae3b4209170d Mon Sep 17 00:00:00 2001 From: Humphrey Yang Date: Thu, 15 May 2025 12:22:50 +1000 Subject: [PATCH 4/4] minor updates --- lectures/samuelson.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lectures/samuelson.md b/lectures/samuelson.md index 0396dee..ff03465 100644 --- a/lectures/samuelson.md +++ b/lectures/samuelson.md @@ -437,14 +437,14 @@ param_plot() plt.show() ``` -该图显示了在萨缪尔森模型中由差分方程参数对$(\rho_1 = (a+b), \rho_2 = - b)$所隐含的$(\lambda_1, \lambda_2)$根对所在的区域,这些区域表示: +该图显示了在萨缪尔森模型中由差分方程参数对$(\rho_1 = (\alpha + \beta), \rho_2 = - \beta)$所隐含的$(\lambda_1, \lambda_2)$根对所在的区域,这些区域表示: - $(\lambda_1, \lambda_2)$是复数且模小于$1$ - 在这种情况下,$\{Y_t\}$序列呈现衰减振荡。 - $(\lambda_1, \lambda_2)$都是实数,但其中一个严格大于$1$ - 这导致爆炸性增长。 - $(\lambda_1, \lambda_2)$都是实数,但其中一个严格小于$-1$ - 这导致爆炸性振荡。 - $(\lambda_1, \lambda_2)$都是实数且绝对值都小于$1$ - 在这种情况下,会平滑地收敛到稳态,没有衰减循环。 -稍后我们将在图上用红色标记显示由$(a,b)$设置所隐含的特定点。 +稍后我们将在图上用红色标记显示由$(\alpha, \beta)$设置所隐含的特定点。 ### 描述特征多项式含义的函数 @@ -560,7 +560,7 @@ $$ $$ - 代码假设这两个复数是特征多项式的根 -- 然后反向推导出能生成这些根的 $(a,b)$ 和 $(\rho_1, \rho_2)$ 对 +- 然后反向推导出能生成这些根的 $(\alpha, \beta)$ 和 $(\rho_1, \rho_2)$ 对 ```{code-cell} ipython3 ### 反向推导周期的代码 @@ -785,14 +785,14 @@ period = 10 # 时间单位中的周期长度 ### 应用反向推导函数f -ρ1, ρ2, a, b = f(r, ϕ) +ρ1, ρ2, α, β = f(r, ϕ) # 去掉虚部,使其成为y_nonstochastic的有效输入 -a = a.real -b = b.real +α = α.real +β = β.real -print(f"a, b = {a}, {b}") -plot_y(y_stochastic(y_0=40, y_1 = 42, α=a, β=b, σ=2, n=100)) +print(f"α, β = {α}, {β}") +plot_y(y_stochastic(y_0=40, y_1 = 42, α=α, β=β, σ=2, n=100)) ``` ## 政府支出