ProjectDrawdown / solutions

The mission of Project Drawdown is to help the world reach “Drawdown”— the point in the future when levels of greenhouse gases in the atmosphere stop climbing and start to steadily decline, thereby stopping catastrophic climate change — as quickly, safely, and equitably as possible.
https://www.drawdown.org/
Other
216 stars 91 forks source link

grid mix initialization #462

Closed denised closed 3 years ago

denised commented 3 years ago

This is a little different than other integrations so far in that there is a definite place where researchers intervene in the process. So this is my first approach for setting an initial value for something with the assumption that the user will alter it before proceeding. (the Jupyter notebook doesn't convey this yet.) The value they set is immediately saved to an integration-version of the file, so it will be re-used if the user exits and restarts the integration, but can also be cleaned up with the rest if they want to start over.

denised commented 3 years ago

Yikes, I thought switching to a new branch would cause only the new commits to be included in the PR, but I guess it doesn't work that way. I will kill the old PR to avoid conflicts.

So this PR also includes other work to load values from various places...

danielmk commented 3 years ago

I don't understand where and how the researcher is supposed to intervene? If intervening is required, it might be a better idea to raise an error if input is lacking instead of supplying a default. For the development stage a default is probably okay though.

denised commented 3 years ago

That's a good idea. Instead of initializing with a default projected value, start with "You can't proceed until you have set the current grid mix, and here's how to get a default projection".

-- Denise Draper @.***

On Thu, Sep 23, 2021, at 2:03 AM, Daniel Müller-Komorowska wrote:

I don't understand where and how the researcher is supposed to intervene? If intervening is required, it might be a better idea to raise an error if input is lacking instead of supplying a default. For the development stage a default is probably okay though.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/ProjectDrawdown/solutions/pull/462#issuecomment-925628260, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAKAMTVOFTGFLL7D5MIDNWTUDLUM5ANCNFSM5ETEKUAA.

denised commented 3 years ago

Updates: implemented the suggested interaction if grid mix is missing; added testmode data and loading for some cases, and calculating updated PDS Energy TAM (though I don't write it out yet). Also added a utility to factory.py to translate commonly used titles of solutions to their module name.