Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simplify interchange dictionary processing #564

Merged
merged 3 commits into from
Apr 8, 2024
Merged

Conversation

SamWitty
Copy link
Contributor

@SamWitty SamWitty commented Apr 8, 2024

This small PR removes some utilities that were previously used to splice in parameter interventions into the processed output. Previously, the utilities were agnostic to whether the intervention was on a state or a parameter. This is nice for its generality, but unfortunately caused some issues when there were multiple parameters that shared the same substring. See the last cell in this notebook for an example: https://github.com/ciemss/pyciemss/blob/ac-opt-fixedInterventions/docs/source/optimize_interface.ipynb

Fortunately, it turns out that splicing in the intervention values is only necessary for the interventions on parameters; interventions on states are already correctly reflected in the simulation output. Therefore, we can simply remove the state/parameter agnostic code, and manually pass in the target column name.

@SamWitty SamWitty self-assigned this Apr 8, 2024
@SamWitty SamWitty added refactor awaiting review PR submitter awaiting code review from reviewer labels Apr 8, 2024
Copy link
Contributor

@anirban-chaudhuri anirban-chaudhuri left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me.

@anirban-chaudhuri anirban-chaudhuri merged commit f5454df into main Apr 8, 2024
5 checks passed
@anirban-chaudhuri anirban-chaudhuri deleted the sw-output branch April 8, 2024 22:23
anirban-chaudhuri added a commit that referenced this pull request Apr 8, 2024
* simplify intervention splicing

* lint

* removed test

Co-authored-by: Sam Witty <[email protected]>
SamWitty added a commit that referenced this pull request Apr 12, 2024
… specific interventions (#563)

* Adding fixed interventions as input to `optimize`

* Update optimize_interface.ipynb

* Adding integration utility to combine interventions

* Adding deepcopy for fixed interventions

* Update intervention_builder.py

* Sw output (#565)

* simplify intervention splicing

* lint

* removed test

---------

Co-authored-by: Sam Witty <[email protected]>

* Update optimize_interface.ipynb

* Adding tests for using fixed intervention with optimize

* Simplify interchange dictionary processing (#564) (#566)

* simplify intervention splicing

* lint

* removed test

Co-authored-by: Sam Witty <[email protected]>

* Update test_interfaces.py

* updating name for combining interventions

* Update ouu.py

* lint

* update tests to use new name for combining interventions

* lint

* Update optimize_interface.ipynb

---------

Co-authored-by: Sam Witty <[email protected]>
SamWitty added a commit that referenced this pull request Apr 29, 2024
… specific interventions (#563)

* Adding fixed interventions as input to `optimize`

* Update optimize_interface.ipynb

* Adding integration utility to combine interventions

* Adding deepcopy for fixed interventions

* Update intervention_builder.py

* Sw output (#565)

* simplify intervention splicing

* lint

* removed test

---------

Co-authored-by: Sam Witty <[email protected]>

* Update optimize_interface.ipynb

* Adding tests for using fixed intervention with optimize

* Simplify interchange dictionary processing (#564) (#566)

* simplify intervention splicing

* lint

* removed test

Co-authored-by: Sam Witty <[email protected]>

* Update test_interfaces.py

* updating name for combining interventions

* Update ouu.py

* lint

* update tests to use new name for combining interventions

* lint

* Update optimize_interface.ipynb

---------

Co-authored-by: Sam Witty <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting review PR submitter awaiting code review from reviewer refactor
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants