Skip to content

apply_inflation_to_V: True on full model yaml introduces dollar-year inconsistencies in Cornerstone pipeline #461

Description

@jvendries

Context

#460 adds apply_inflation_to_V: True to 2025_usa_cornerstone_full_model.yaml.

The flag inflates the Make table V from usa_base_io_data_year (2017) to model_base_year (2023) via industry price ratios. A separate config (2025_usa_cornerstone_full_model_A_commodity_price_index.yaml) already bundles this flag with scale_a_matrix_with_commodity_price_index: True, which leaves unclear how V inflation as implemented in #412 and refactored in #453 should interact with the default full-model scaling path alone.

Problem

With waste disaggregation on and default A scaling (summary ratio 2017→2022 + industry PI 2022→2023), turning on apply_inflation_to_V creates multiple dollar-year mismatches:

  1. Disagg base A (_derive_cornerstone_Aq_from_disaggregated)
    • q and x use uninflated 2017 V
    • Vnorm uses inflated 2023 V
    • A = Unorm(2017) @ Vnorm(2023) mixes years in the structural A matrix
    • scaled_q is 2017 while public derive_cornerstone_q() returns 2023 q
  2. Scaled A (derive_cornerstone_Aq_scaled default branch)
    • Scaling assumes base A is entirely 2017 detail dollars
    • Base A already embeds 2023 Vnorm when the flag is on
    • Risk of overlapping price effects (V row inflation + summary scale + industry PI on A)
  3. B (derive_cornerstone_B_via_vnorm)
    • A separate discussion topic (reconciling q used for A and B, but relevant here as well since this flag affects the values of A as the inflated V is used via Vnrom

See diagram below for a graphical representation of points 1-3 above in the pipeline:

Issues in pipeline figure Image

Unaffected paths

U, VA, Y, default derive_cornerstone_x(), and published uninflated V remain 2017 chain dollars.

Questions for discussion

References

  • derived_cornerstone.py: derive_cornerstone_q, _derive_cornerstone_Aq_from_disaggregated, derive_cornerstone_Aq_scaled, derive_cornerstone_B_via_vnorm
  • Comment at _derive_cornerstone_Aq_from_disaggregated (mixed dollar-year, intentional for now)
  • Bundled config: 2025_usa_cornerstone_full_model_A_commodity_price_index.yaml

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions