-
Notifications
You must be signed in to change notification settings - Fork 50
Transport improvements for 2025-W44 #447
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
Draft
khaeru
wants to merge
64
commits into
main
Choose a base branch
from
transport/2025-w44
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
3c6c62d to
bd49756
Compare
bd49756 to
1be671a
Compare
7 tasks
7a6303d to
bc4ca5e
Compare
khaeru
added a commit
that referenced
this pull request
Nov 18, 2025
b4bd5ae to
2e4fe45
Compare
khaeru
added a commit
that referenced
this pull request
Nov 21, 2025
b133d02 to
ecde703
Compare
dcab36b to
81fee17
Compare
81fee17 to
fee6358
Compare
fee6358 to
23eaa2f
Compare
- Incorporate features from .transport.plot.Plot. - New attributes strage, single. - Remove url attribute. - Add PlotFromIAMC, PlotTimeSeries subclasses; adjust existing plots. - New COMMON global collection of plotnine elements. - Move items from .transport.plot: LabelFirst, change level of matplotlib logger. - New functions collect() and prepare_computer(). - Use prepare_computer() in callback(); remove PLOTS global.
- Use in .transport.build instead of hard-coded string.
- Add assert_all_passed() method. - Record number of checks in total and passing.
- Static and dynamic collections of checks of model build data previously in .tests.model.transport.test_build. - Simplify .test_build.test_debug().
- Add input dataflow to .transport.data.
- Add a test.
e3d6c90 to
db8473b
Compare
- Use in .transport.check.CHECKS. - Add a test.
- Add checks to .transport.check.CHECKS. - Add to .test_build.test_debug()
- Exposes Config(…, extra_modules=…) functionality on existing Config instances.
db8473b to
6365f04
Compare
- Add ScenarioCodeAnnotations.extra_modules. - Set extra_modules for non-materials and materials variants. - Bump version 1.2.1 → 1.3.0. - Adjust labels and data file contents prepared using the new codes. - Adjust tests.
- Add tests.
- Drop PRICE_EMISSION_URL. - Adjust and expand tests.
6365f04 to
ee6020a
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
mix-models transporton UniCC.New scenario labels
The PR extends the set of MESSAGEix-Transport scenario codes or labels. Previously, for each SSP, there were 3, for instance:
SSP2—a baseline.SSP2 tax—an arbitrary, exponentially increasing price, same in all regions.SSP2 exo price—using PRICE_EMISSION data drawn from base model scenarios.These are now extended in the following 2 ways:
Materials-enabled scenarios with an
Mprefix, e.g.M SSP2,M SSP2 tax, etc. These activate the code inmessage_ix_models.model.transport.materialthat adds/modifies data for MESSAGEix-Materials integration.Full set of
… exo pricescenarios.Instead of a single, handpicked source scenario for emission price trajectories, now every available file in
data/transport/R12/price-emission/*.csvis selectable. The different price emission source scenarios are now identified by a short suffix likea1b2, that is a hash of the (unique) full scenario URL.So for instance
SSP2 exo priceis nowSSP2 exo price 2e17, still using prices from "SSP_SSP2_v5.3.1/SSP2 - Low Emissions#2". Likewise:LED-SSP2 exo price→LED-SSP2 exo price 1aa5, prices from "SSP_LED_v5.3.1/SSP2 - Very Low Emissions#2".SSP1 exo price→SSP1 exo price 4c35, prices from "SSP_SSP1_v5.3.1/SSP1 - Low Emissions#2"SSP3 exo price→SSP3 exo price c536, prices from "SSP_SSP3_v5.3.1/baseline_1000f#1"SSP4 exo price→SSP4 exo price 853b, prices from "SSP_SSP4_v5.3.1/SSP4 - Low Overshoot#2"SSP5 exo price→SSP5 exo price 6321, prices from "SSP_SSP5_v5.3.1/SSP5 - Low Overshoot#2"These additions are available for (a) all the SSPs and (b) all the
DIGSY-…scenarios, since we are using the latter in CircEUlar runs for 2025-W48 #462 for CircEUlar.In short, to run any of these scenarios: edit .github/workflows/transport.yaml as usual. Where one previously would have used the labels like
SSP2, now one can also/instead use labels like:M SSP2 exo price 2e17: SSP2, materials enabled, exogenous price as mentioned above for this short hash.DIGSY-BEST-C exo price 2e17: DIGSY input data, SSP2, no materials (because noMprefix), same price.As before, the IIASA_ECE_CL_TRANSPORT_SCENARIO(1.3.0).xml file (note the new version #) can be inspected/searched to check exactly which settings will be applied for a given label.
Other notes for usage
2e174a335cad3888How to review
TBA
PR checklist