BMT workflow (model.bmt)
The acronym “BMT” refers to a configuration of MESSAGEix-GLOBIOM that combines all 3 of the MESSAGEix-Buildings (B), MESSAGEix-Materials (M), and MESSAGEix-Transport (T) model variants.
In bmt.workflow.generate(), each variant is added as follows:
Materials (M) — load a baseline that already includes MESSAGEix-Materials (step
M); there is no separate materials build step yet.Transport (T) — build MESSAGEix-Transport on the cloned materials scenario via
transport.workflow.add_steps()andtransport.build.main(), using thetransportsection ofdata/bmt/config.yaml`.Buildings (B) — in step
BMT built, callbuildings.build.main()(imported inbmt.workflowasbuild_B) on theMT solvedscenario.Other BMT extensions — add power-sector material intensity with
bmt.utils.build_PM()(BMTX built); later steps prepare MACRO calibration and solve with MESSAGE-MACRO.
The current module model.bmt includes:
bmt.workflow.generate()—generates aWorkflowthat chains steps to build all 3 variants on a base scenario. See the function documentation for complete details.bmt.cli—the mix-models bmt run CLI subcommand used to invoke the workflow. For example:mix-models bmt run --from="base" "BMTX baseline macro reported" --dry-run
See mix-models bmt run --help for options.
bmt.config—handling for configuration, which is read from a filedata/bmt/config.yaml. See the module documentation for a description of the file format.
Code reference
Buildings-Materials-Transport workflow. |