@@ -4,7 +4,7 @@ jupytext:
4
4
extension : .md
5
5
format_name : myst
6
6
format_version : 0.13
7
- jupytext_version : 1.16 .1
7
+ jupytext_version : 1.17 .1
8
8
kernelspec :
9
9
display_name : Python 3 (ipykernel)
10
10
language : python
@@ -267,6 +267,7 @@ def solve(model, T):
267
267
A1 = np.eye(T+1, T+1) - δ * np.eye(T+1, T+1, k=1)
268
268
A2 = np.eye(T+1, T+1) - np.eye(T+1, T+1, k=-1)
269
269
270
+ # Assume γ* = 1
270
271
b1 = (1-δ) * μ_seq + np.concatenate([np.zeros(T), [δ * π_end]])
271
272
b2 = μ_seq + np.concatenate([[m0], np.zeros(T)])
272
273
@@ -326,7 +327,7 @@ T1 = 60
326
327
μ_star = 0
327
328
T = 80
328
329
329
- μ_seq_1 = np.append(μ0*np.ones(T1+1 ), μ_star*np.ones(T-T1))
330
+ μ_seq_1 = np.append(μ0*np.ones(T1), μ_star*np.ones(T-T1+1 ))
330
331
331
332
cm = create_cagan_model(μ_seq=μ_seq_1)
332
333
@@ -493,32 +494,32 @@ cm1 = create_cagan_model(μ_seq=μ_seq_2_path1)
493
494
π_seq_2_path1, m_seq_2_path1, p_seq_2_path1 = solve(cm1, T)
494
495
495
496
# continuation path
496
- μ_seq_2_cont = μ_star * np.ones(T-T1)
497
+ μ_seq_2_cont = μ_star * np.ones(T-T1+1 )
497
498
498
- cm2 = create_cagan_model(m0=m_seq_2_path1[T1+1 ],
499
+ cm2 = create_cagan_model(m0=m_seq_2_path1[T1],
499
500
μ_seq=μ_seq_2_cont)
500
- π_seq_2_cont, m_seq_2_cont1, p_seq_2_cont1 = solve(cm2, T-1- T1)
501
+ π_seq_2_cont, m_seq_2_cont1, p_seq_2_cont1 = solve(cm2, T-T1)
501
502
502
503
503
504
# regime 1 - simply glue π_seq, μ_seq
504
- μ_seq_2 = np.concatenate((μ_seq_2_path1[:T1+1 ],
505
+ μ_seq_2 = np.concatenate((μ_seq_2_path1[:T1],
505
506
μ_seq_2_cont))
506
- π_seq_2 = np.concatenate((π_seq_2_path1[:T1+1 ],
507
+ π_seq_2 = np.concatenate((π_seq_2_path1[:T1],
507
508
π_seq_2_cont))
508
- m_seq_2_regime1 = np.concatenate((m_seq_2_path1[:T1+1 ],
509
+ m_seq_2_regime1 = np.concatenate((m_seq_2_path1[:T1],
509
510
m_seq_2_cont1))
510
- p_seq_2_regime1 = np.concatenate((p_seq_2_path1[:T1+1 ],
511
+ p_seq_2_regime1 = np.concatenate((p_seq_2_path1[:T1],
511
512
p_seq_2_cont1))
512
513
513
514
# regime 2 - reset m_T1
514
- m_T1 = (m_seq_2_path1[T1] + μ0) + cm2.α*(μ0 - μ_star)
515
+ m_T1 = (m_seq_2_path1[T1-1 ] + μ0) + cm2.α*(μ0 - μ_star)
515
516
516
517
cm3 = create_cagan_model(m0=m_T1, μ_seq=μ_seq_2_cont)
517
- π_seq_2_cont2, m_seq_2_cont2, p_seq_2_cont2 = solve(cm3, T-1- T1)
518
+ π_seq_2_cont2, m_seq_2_cont2, p_seq_2_cont2 = solve(cm3, T-T1)
518
519
519
- m_seq_2_regime2 = np.concatenate((m_seq_2_path1[:T1+1 ],
520
+ m_seq_2_regime2 = np.concatenate((m_seq_2_path1[:T1],
520
521
m_seq_2_cont2))
521
- p_seq_2_regime2 = np.concatenate((p_seq_2_path1[:T1+1 ],
522
+ p_seq_2_regime2 = np.concatenate((p_seq_2_path1[:T1],
522
523
p_seq_2_cont2))
523
524
```
524
525
0 commit comments