-
Notifications
You must be signed in to change notification settings - Fork 11
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
Add hector adapter #92
Comments
Copying first set of discussions from email
It's completely up to you (@openclimatedata worked out how to do the C distribution for pyhector so you could copy/use that https://github.com/openclimatedata/pyhector). We basically have 2 patterns in OpenSCM:
CICEROSCMPY should just work. CICEROSCM requires the binary, but that's included in the package. The binary only works on linux systems. If you're on linux and it's still not working, probably best to make an issue and tag maritsandstad (she is generally very responsive).
Neither really. OpenSCM-Runner just does the running (take a bunch of different model configs, run the model, return the results from each run). Then users can process them however they want. We tend to use process_over from scmdata but you could use whatever (https://scmdata.readthedocs.io/en/latest/notebooks/summary-statistics.html#process-over).
Good question.
Any: the idea is that the adapters deal with conversion from emissions' input units (whatever they may be) into the emissions required by the model. We generally use ScmRun's unit conversion for this (https://scmdata.readthedocs.io/en/latest/notebooks/scmrun.html#unit-conversion) but you are free to use whatever unit conversion set up you want before the data gets passed to Hector. |
Cheers, great to see plans for OpenSCM extension! I had tried a (long) while ago (unsuccessfully) to get Pyhector running in OpenSCM-Runner (#24 (comment)). As for Pyhector, there is still some work needed to update Pyhector with Hector 3 (openclimatedata/pyhector#63). |
Just to answer the ciceroscm part. I did add a Windows executable at some point, but whether that still works, I don't know. I'm not particularly interested in updating that though... |
Re ciceroscm - @maritsandstad & @znicholls good news I was able to get cicero running with the open scm-runner, there were additional dependencies we needed install first. Sorry about that! Re pyhector - @znicholls & @rgieseke that is a good point about pyhector unfortunately I don't think we have the resources to contribute to the pyhector to V3 update and integrate it here. we will probably follow MAGICC's set or something, I plan on talking to our open source software mastermind Chris Vernon next week. @znicholls Thanks for your answers! They were really helpful! |
FWIW, the Pyhector v3 update is almost done. A few minor things to clean up and check, then I'll make a new release. |
@rgieseke that is awesome! |
Hello, opening this conversation back up as we have an adapter for Hector that's working by calling a built version of Hector akin to the cicero solution. I understand packaging binaries isn't the solution we're looking for, but I'm lacking experience here on what to do.
^ Is this the path I should be exploring? Users could download and build Hector independently and somehow direct openscm-runner to find that build? Here's the fork I've been working off of and how the Hector executable gets called: |
This is what I would do (put pre-built binaries somewhere and point users to them) if the pyhector option is a non-starter for you. |
The motivation
Adds hector the set of models that can be used by OpenSCM-Runner
The proposed solution
Add
openscm_runner.adapaters.Hector
. @kdorheim, @claudiatebaldi, and @noahprime will lead implementation.This issue will act as the overarching issue for tracking this implementation. We can split out further issues as needed.
The text was updated successfully, but these errors were encountered: