Skip to content

Allow a supplied initial distribution of wealth in the transition - #1209

Open
arihantlodha-cmd wants to merge 1 commit into
PSLmodels:masterfrom
arihantlodha-cmd:custom-initial-wealth-dist
Open

Allow a supplied initial distribution of wealth in the transition#1209
arihantlodha-cmd wants to merge 1 commit into
PSLmodels:masterfrom
arihantlodha-cmd:custom-initial-wealth-dist

Conversation

@arihantlodha-cmd

Copy link
Copy Markdown
Contributor

The time path solver initializes the t=0 distribution of household wealth from the steady-state distribution, scaled so its aggregate matches the steady-state B. That assumes the economy starts already at its steady-state age-wealth profile. For a country whose model start-year age structure is far from its steady state, such as a rapidly aging population, that profile is a poor initial condition and can leave a small resource-constraint residual in the first periods of the path.

This adds an optional hook to supply an observed initial distribution instead. A new boolean use_initial_b_dist gates a new SxJ array initial_b_dist; when the flag is set, get_initial_SS_values takes the shape of the initial wealth distribution from initial_b_dist rather than the steady state. The aggregate is still rescaled to the steady-state B, so only the cross-sectional shape is overridden. The default leaves the flag off and reproduces the previous initial_b exactly, so existing runs are unchanged.

Adds test_get_initial_SS_values_custom_dist covering the aggregate-preserving and shape-override behavior; the existing test_get_initial_SS_values regression cases and the parameter/util tests pass unchanged.

The time path solver initializes the t=0 distribution of household wealth
from the steady-state distribution, scaled so its aggregate matches the
steady-state B. That assumes the economy starts already at its steady-state
age-wealth profile. For a country whose model start-year age structure is
far from its steady state, such as a rapidly aging population, that profile
is a poor initial condition and can leave a small resource-constraint
residual in the first periods of the path.

This adds an optional hook to supply an observed initial distribution
instead. A new boolean use_initial_b_dist gates a new SxJ array
initial_b_dist; when the flag is set, get_initial_SS_values takes the shape
of the initial wealth distribution from initial_b_dist rather than the
steady state. The aggregate is still rescaled to the steady-state B, so only
the cross-sectional shape is overridden. The default leaves the flag off and
reproduces the previous initial_b exactly, so existing runs are unchanged.

Adds test_get_initial_SS_values_custom_dist covering the aggregate-preserving
and shape-override behavior.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant