Skip to content

add option to vary parameter#1244

Merged
lisazeyen merged 12 commits intomasterfrom
vary-parameters
Sep 12, 2024
Merged

add option to vary parameter#1244
lisazeyen merged 12 commits intomasterfrom
vary-parameters

Conversation

@lisazeyen
Copy link
Copy Markdown
Contributor

@lisazeyen lisazeyen commented Aug 29, 2024

.## Changes proposed in this Pull Request
Add option to modify any parameter by a setting in the config called vary
following the syntax component carrier parameter one can modify any static values of a component. This is helpful for creating different scenarios and also would allow to remove all quite a few settings in the config (e.g. co2_network_cost_factor, aviation_demand_factor, gas_distribution_grid_cost_factor,...)

Checklist

  • I tested my contribution locally and it seems to work fine.
  • Code and workflow changes are sufficiently documented.
  • Changed dependencies are added to envs/environment.yaml.
  • Changes in configuration options are added in all of config.default.yaml.
  • Changes in configuration options are also documented in doc/configtables/*.csv.
  • A release note doc/release_notes.rst is added.

@fneum
Copy link
Copy Markdown
Member

fneum commented Aug 29, 2024

@lisazeyen
Copy link
Copy Markdown
Contributor Author

lisazeyen commented Aug 29, 2024

I think like this it is more flexible, because you can vary everything (e.g. also component loador other attributes than costs and potentials). Also it allows to modify depending on the investment period.

But one should decide for either one of the definitions and also clean up the settings in the config before merging and move them to adjustments or vary...

@koen-vg
Copy link
Copy Markdown
Contributor

koen-vg commented Sep 2, 2024

In my humble opinion I think it would a little confusing to have both adjustments and vary config sections - arguably there is already an intimidating number of different ways of adjusting the configuration.

@lisazeyen
Copy link
Copy Markdown
Contributor Author

Thanks a lot for your suggestions @koen-vg and @fneum . I still think it is useful to be able to more flexibly modify the components and attributes. For example, with the current implementation in the master branch the load cannot be modified and only specific attributes. Also it is not possible to have a modification depending on the investment period, which can be very useful. I have adapted now the existing function maybe_adjust_costs_and_potentials to work more flexibly, including the option to vary by a factor or to set an absolute value. Let me know, what you think about this!

@koen-vg
Copy link
Copy Markdown
Contributor

koen-vg commented Sep 12, 2024

I definitely see the appeal of being able to adjust any attribute, also depending on the investment horizon (and choosing relative or absolute adjustments)! I think it made a lot of sense to build this into the adjustments config.

If you ask me, I would at this point just get rid of the maybe_adjust_costs_and_potentials function (calling modify_attribute directly), since it really only serves as thin scaffolding to modify_attribute. Can just be less confusing to people that don't know the history of the maybe_adjust_costs_and_potentials function. But even without this change the PR looks good to me :)

@lisazeyen lisazeyen enabled auto-merge (squash) September 12, 2024 12:50
@lisazeyen lisazeyen disabled auto-merge September 12, 2024 14:01
@lisazeyen lisazeyen merged commit 1b97a16 into master Sep 12, 2024
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.

3 participants