Skip to content

Add alternative-scenario toggle to gen_aec_data notebook #107

@alxsmith

Description

@alxsmith

What

Add a high-level toggle (ALTERNATIVE_SCENARIO) to the config cell of gen_aec_data.qmd that switches the alternative HP adoption scenario between two modes:

  • "hp_factor" (current behavior): BAU cumulative adoption scaled by heat_pump_adoption_factor
  • "rie_high": uses Cumulative_High directly from the RIE adoption forecast Google Sheet

The toggle threads through all downstream code: adoption rate percentages (hp_pct_total), market-share lags (hp_hp_count_lag), the adoption chart, and ultimately the 8760 load curve generation via uniform_adoption.

Why

We need to compare BAU against the RIE High forecast (from the Google Sheet) as an alternative to our custom HP-factor scaling. Having a single toggle avoids duplicating the entire notebook and makes it easy to re-run with either assumption.

How

  1. Add ALTERNATIVE_SCENARIO = "hp_factor" in the INPUT PARAMS cell, next to heat_pump_adoption_factor.
  2. In the adoption-rates cell (~line 152), branch hp_pct_total on the toggle:
    • "hp_factor": heat_pump_adoption_factor * bau_hp_counts / total_num_homes (current logic)
    • "rie_high": get_adoption_forecast_num_homes(..., col_name="Cumulative_High") / total_num_homes
  3. In the adoption chart cell (~line 161), branch hp_rates_cumulative:
    • "hp_factor": current growth-scaling logic
    • "rie_high": high_cumulative directly
  4. In the hp_count_lag cell (~line 217), branch hp_hp_count_lag:
    • "hp_factor": bau_hp_count_lag * heat_pump_adoption_factor (current logic)
    • "rie_high": compute lags from Cumulative_High series
  5. Everything downstream (hp_pct_upgrade_1, hp_scenario, df_hp_loads, GSheet output) consumes these variables unchanged.

Deliverables

  • ALTERNATIVE_SCENARIO toggle added to config cell with "hp_factor" and "rie_high" options
  • All three branching points implemented (adoption rates, chart data, market-share lags)
  • Notebook runs end-to-end with both toggle values

Metadata

Metadata

Assignees

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