The Stacked Time Method
Dynamic models consist of difference equations linking periods: \[ f(x_{t-1}, x_t, x_{t+1}) = 0 \]
To solve the system \(F(X) = 0\), we need to anchor the start and the end of the simulation:
\[ \begin{align*} f(x_0, x_1, x_2) &= 0 \quad \text{(Initial boundary)} \\ f(x_1, x_2, x_3) &= 0 \\ \vdots \\ f(x_{T-1}, x_T, x^*) &= 0 \quad \text{(Terminal boundary)} \end{align*} \]
Consider an economy forced to transition from polluting to clean energy.
Firms face adjustment costs to changing capital. How will they react to the announcement?
How do we compute this?
This provides a deterministic trajectory showing the macro-financial effects of climate policy!
In other parts of this course, we split models into:
(Where \(s\) are states, \(x\) are controls, and \(z\) are exogenous variables.)
How do we take this two-part system and bridge it back to the general difference equation form \(F(y_{t-1}, y_t, y_{t+1}) = 0\) from earlier?
We define a combined variable vector \(y_t = \begin{bmatrix} s_t \\ x_t \end{bmatrix}\). We can then stack the rules into a single generic function \(F\):
\[ F(y_{t-1}, y_t, y_{t+1}, z_t) = \begin{bmatrix} s_t - g(s_{t-1}, x_{t-1}, z_t) \\ f(s_t, x_t, x_{t+1}, s_{t+1}) \end{bmatrix} = \begin{bmatrix} 0 \\ 0 \end{bmatrix} \]
Notice how the top block is backward-looking (depends on \(y_{t-1}, y_t\)) and the bottom block is forward-looking (depends on \(y_t, y_{t+1}\)), but the combined system exactly matches \(F(y_{t-1}, y_t, y_{t+1}) = 0\).
How does this explicit separation affect the Stacked Time approach compared to an arbitrary system \(F(y_{t-1}, y_t, y_{t+1}) = 0\)?
Variable Condensation: Sometimes, you can evaluate the transition function \(g\) recursively or substitute it algebraically into \(f\), significantly reducing the dimension of the stacked Jacobian.
Boundary Condition Clarity: The formal separation clearly allocates boundary conditions: the initial period requires a fixed state \(s_0\), while the terminal date \(T+1\) targets a steady state condition for \((s, x)\).
Block Solving Structure: Advanced Newton solvers can exploit the explicit state / control division to reorder the Jacobian elements into a beautifully banded structure, making the inversion step even faster.