All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.13.1 - 2024-10-02 12:00:00
- Three new parameters to adjust government spending amounts in the case of
baseline_spending=True
:alpha_bs_G
: the proportional adjustment to the level of baseline spending on government consumption (time varying, default value is 1.0 for each model period)alpha_bs_T
: the proportional adjustment to the level of baseline spending on non-pension transfers (time varying, default value is 1.0 for each model period)alpha_bs_I
: the proportional adjustment to the level of baseline spending on infrastructure investment (time varying, default value is 1.0 for each model period)
0.13.0 - 2024-09-26 12:00:00
- Updates all of the documentation.
- Adds remittances to all instances of the household budget constraint
- Rewrites bequests and transfers components of household budget constraint in terms of individual variables in all instances
- Adds a household transfers section to
households.md
with subsections on bequests, remittances, government transfers, and universal basic income - Changes all instances of
$p_t Y_t$ to $Y_t - Updates the steady-state equilibrium algorithm description in
equilibrium.md
- Added updates to the government pensions descriptions in
government.md
and addedpensions
to all instances of the household budget constraint. - Updates the docstrings in
tax.py
for the wealth tax ETR and MTR functions. The code is right. I just thought there was a clearer specification of the equations in LaTeX.
- Adds remittances to the OG-Core code
- Adds aggregate remittances function
get_RM()
toaggregates.py
- Adds household remittances function
get_rm()
tohousehold.py
- Adds four new remittance parameters:
alpha_RM_1
,g_RM
,alpha_RM_T
,eta_RM
- We model aggregate remittances as a percent of GDP in the first period, then growing at a specified rate that can deviate from the country growth rate until the cutoff rule period, after which the remittance growth rate trends back to the long-run model growth rate (growth rate in population and productivity). We also model remittances in reforms as being a percentage of baseline GDP. In this way, if remittance parameters are not changed in the reform, remittances remain at their baseline levels. The only way they change is if their parameter values are changed.
- Adds 3 tests using the
test_get_RM()
function intest_aggregates.py
- Adds 4 tests using the
test_get_rm()
function intest_household.py
- Changes the
initial_guess_r_SS
in two tests intest_SS.py
because they were not solving with their current values
- Adds aggregate remittances function
- Increases
RC_SS
steady-state resource constraint tolerance from 1e-9 to 1e-8 because twotest_run_SS()
tests were failing intest_SS.py
with resource constraints errors just bigger than 1e-9 (-2.29575914e-09 for [Baseline, small open] and -2.29575914e-09 for [Reform, small open]). - Increases
RC_TPI
transition path resource constraint tolerance from 1e-5 to 1e-4 in because onetest_run_TPI_full_run()
test was failing intest_TPI.py
with a resource constraint error just bigger than 1e-5 (1.4459913381864586e-05 for[Baseline, M=3 non-zero Kg]
). - Updated two directory path references that were out of date in
test_run_example.py
. - Updated expected value tuples and dictionaries in
test_txfunc.py
.
0.12.0 - 2024-08-20 12:00:00
- Support for Python 3.12
0.11.17 - 2024-08-18 12:00:00
- Description of
alpha_I
in docs - Updates valid range of the nominal UBI parameters
- Extrapolate
alpha_I
inparameters.py
- Ensure
alpha_I
shape conforms inTPI.py
- Fix formatting of labels in
constants.py
0.11.16 - 2024-08-10 12:00:00
- Added parameter script
make_params.py
that generates a markdown file for the documentationparameters.md
. UpdatesMakefile
, and GitHub Actions (PR #963) - Updated debt-to-GDP plot labels (PR #962)
0.11.15 - 2024-07-30 12:00:00
- Make
OGcorePlots.mplstyle
importable from the package by adding it tosetup.py
0.11.14 - 2024-07-30 12:00:00
- Aesthetic updates to plotting functions in
parameter_plots.py
anddemographics.py
0.11.13 - 2024-07-28 12:00:00
- Added three new pension types to the model: (i) defined benefits system, (ii) notional defined contribution system, and (iii) points system.
- Fixes extrapolation of nested lists of tax function parameters.
0.11.11 - 2024-06-24 01:00:00
- Add new parameters for resource constraint tolerances for steady state and time path solution.
0.11.10 - 2024-06-17 01:00:00
- Add HSV to list of valid tax functions in
default_parameters.json
0.11.9 - 2024-06-12 01:00:00
- Update
demographics.py
in the case input prompt not work. - Add new utility to dump the parameters to a JSON file
0.11.8 - 2024-06-09 01:00:00
- Updates to
demographics.py
module to accept token for UN World Population Prospects database access or to download data from the Population-Data repository.
0.11.7 - 2024-06-07 01:00:00
- Heathcote, Storesletten, and Violante (2017) tax functions to
txfunc.py
0.11.6 - 2024-04-19 01:00:00
- Scatters parameters once in
TPI.py
- Removes Python 3.9 tests from
build_and_test.yml
0.11.5 - 2024-04-11 12:00:00
- Adds a list of file change event triggers to
build_and_test.yml
so that those tests only run when one of those files is changed. - Updates the codecov GH Action to version 4 and adds a secret token.
- Adds a list of file change event triggers to
deploy_docs.yml
anddocs_check.yml
, and limitsdocs_check.yml
to only run on pull requests.
0.11.4 - 2024-04-03 22:00:00
- Add a function to
utils.py
to shift lifetime profiles of parameters - Add a function to
utils.py
to compute percentage changes in non-stationary variables - Add more functionality to
parameters_plots.py
, allowing the user to plot parameters from multiple parameters objects together
0.11.3 - 2024-03-08 12:00:00
- Allow for
demographics.py
to save downloaded data directly. - Retrieve population data from the UN World Population Prospects database through CSV rather than JSON to avoid rate limit errors.
0.11.2 - 2024-02-17 12:00:00
- Updates
demographics.py
with more functionality across the time path. - Allow the user to have the population distribution from the initial period forward inferred from given fertility, mortality, and immigration rates (functionality to infer immigration from a given evolution of the population is retained, the user specifies what they want to do via arguments to the relevant function calls).
- Extends all series returned from the get_pop_objs() function over the full transition path of T+S periods (except those that apply only to a single period).
- Addresses Issues #900 and #899
0.11.1 - 2024-02-12 15:00:00
- Updated
setup.py
Python version requirement to bepython_requires=">=3.7.7, <3.12"
0.11.0 - 2024-02-06 15:00:00
- Allow
chi_n
parameter to vary over the time path (PR #897) - Create a demographics module in OG-Core (PR #896)
- Create a time varying ability matrix (PR # 895)
- Simplify the extrapolation of arrays over the time path (PR #891)
- Update the copyright year of documentation to 2024
0.10.10 - 2023-10-25 17:00:00
- Remove
surve_rate
parameter (PR #886) - Updates to
plot_2D_taxfunc
(PR #881)
0.10.9 - 2023-09-08 12:00:00
- PR #880 standardize the time path output length
- PR #878 fix tax function indexing, dimensions, and plotting. This PR also enables Python 3.11.
- PR #875 remove unused dependency
0.10.8 - 2023-04-22 12:00:00
- Adds a 2D monotonic smoothing spline tax function estimation to
txfunc.py
- Changes the tax function parameters objects from NumPy arrays to lists in order to accomodate the nonparametric functions that get passed with the
mono
andmono2D
options
0.10.7 - 2023-03-31 12:00:00
- Uses lists to pass and access effective tax rate objects
etr_params
and marginal tax rate objectsmtrx_params
andmtry_params
0.10.6 - 2023-02-15 12:00:00
- Uses 300 dpi when saving plots to disk
- Better labels of the
plot_industry_aggregates
plots
0.10.5 - 2023-02-14 12:00:00
- Fix to
SS.py
to use baseline solution on reform run if dimensions match - Fix to
test_basic.py
dimensions forr_gov_scale
0.10.4 - 2023-02-06 12:00:00
- New calibration section to documentation (PR #850)
- Allow government risk premia to vary across time path for parameters
r_gov_shift
andr_gov_scale
(PR #852)
0.10.3 - 2023-01-21 12:00:00
- Bug fixes for new tax function parameter estimation
0.10.2 - 2023-01-12 12:00:00
- Adds a new minimum value to the
r_gov_shift
parameter of -0.3
0.10.1 - 2023-01-05 12:00:00
- Removes hard coded year label in parameter_plots.plot_population_path() (PR #825)
- Fixes documentation (PR # 827)
- Adds "mono" specification to default_parameter.json and test_parameters.py (PR #830)
- Restricts Python version to be < 3.11 and removes the mkl dependency in environment.yml and setup.py (PR #833 and #840)
- Updates CI testing to include Mac, Windows, and Linux operating systems and Python 3.9 and 3.10, and solves some CI test issues (PR #836)
- Increases the maximum values for r_gov_shift and r_gov_scale in default_parameters.json (PR #838)
- Removes the mkl dependency from environment.yml and setup.py (PR #840)
0.10.0 - 2022-09-27 12:00:00
- Adds matrix of tax noncompliance parameters to households (PR #816)
- Incorporate input/output matrix mapping production goods to consumption goods (PR #818)
- Adds a new monotonic tax function estimation method to txfunc.py (PR #819)
0.9.2 - 2022-08-21 12:00:00
- Updates the form of the investments tax credit to be on a proxy for investment (depreciated capital) in order to satisfy theoretical requirements of static firms in each industry.
- Update the documentation
- Update the requirement for the m_wealth parameter in the wealth tax function to be strictly greater than zero.
0.9.1 - 2022-07-22 12:00:00
- Adds an investment tax credit parameter to the model
- Adds a boolean that allows the option to compute a reform using a stored baseline solution rather than recomputing the baseline
0.9.0 - 2022-06-30 12:00:00
- Adds multiple production industries to the model
0.8.2 - 2022-06-01 12:00:00
- Formatting of source code with black
- Last tag before extension of model to include multiple industries
0.8.1 - 2022-04-01 12:00:00
- Updates PyPI.org packaging setup and includes auto-publishing GH Action (PRs #790, #795, and #797)
- Cleans up documentation issues and old erroneous references to ogusa package (PR #797)
0.8.0 - 2022-02-18 12:00:00
- Adds a public capital good (i.e., infrastructure) used to produce private goods and services
- Adds a financial intermediary that links domestic and foreign savings to investment
- Improves multiprocessing with Dask
- Updates documentation
- Moves testing files outside of the ogcore package source files directory
- Tests functionality with Python 3.10.
- This is the first release of the OG-Core model (formerly the OG-USA model)
- Version [0.7.0] on August 30, 2021 was the first time that the OG-USA repository was detached from all of the core model logic, which was named OG-Core. Before this version, OG-USA was part of what is now the
OG-Core
repository. In the next version of OG-USA, we adjusted the version numbering to begin with 0.1.0. This initial version of 0.7.0, was sequential from what OG-USA used to be when the OG-Core project was called OG-USA. - Any earlier versions of OG-USA can be found in the
OG-Core
repository release history from v.0.6.4 (Jul. 20, 2021) or earlier.