AboutΒΆ
MORPHE2US stands for Municipal Optimization for Renewable Projects in Hydrogen & Energy Efficient Utility Solutions.
It is an Excel-based techno-economic modeling framework designed to support municipalities in identifying location-specific, cost-optimal pathways to decarbonize their energy systems.
PurposeΒΆ
MORPHE2US helps cities and regions explore decarbonization pathways by converting techno-economic data into optimization-ready inputs for SpineOpt.
The tool provides a structured Excel interface that makes it possible to define technologies, demands, and system constraints, which are parsed via Python into .json files compatible with Spine Toolbox and SpineOpt.
providing an optimization-based approach to:
Key FeaturesΒΆ
β Flexible Technology Definition: Include supply, conversion, and storage technologies
π Spatial Flexibility: Model municipalities with multiple districts and building archetypes
β± Temporal Resolution: Support for single-year snapshots or multi-year transition pathways
π¦ Infrastructure Options: Represent both existing infrastructure (brownfield) and new investments (greenfield)
π‘ Sector Coupling: Gas, electricity, heat, and hydrogen in a single optimization
π Community-Driven: Active SpineOpt GitHub forum for bug reports, improvements, and knowledge sharing
ArchitectureΒΆ
The Excel model outputs a .json file that can be imported directly into a Spine database to run simulations using the open-source SpineOpt energy modeling framework.
MORPHE2US consists of three main components:
Excel Workbook: User-friendly input interface for defining model specifications
Python Pipeline: Parses Excel and
.jsondata into a model-ready formatSpine Toolbox + SpineOpt: Executes the optimization and visualizes results
Where to go nextΒΆ
flowchart TD
A[Techno-economic inputs:<br> Prepare technologies, <br> demands, costs, etc...]
A --> B[**Excel Interface:** <br> Define commodities, <br> units, storages, <br> connections, etc...]
B --> C[Python parser: <br> Reads Excel + external <br> time series JSON/CSV <br> -> Outputs SpineOpt JSON]
C --> D[Spine Toolbox: <br> Import JSON <br> Manage database]
D --> E[SpineOpt Optimization: <br> Solves model]
E --> F[Results & external <br> visualization: <br> Python/Excel, <br> limited Spine GUI]
Getting Started β install prerequisites and set up folders:
β 2_getting_started.mdModel Components β what each Excel sheet controls:
β 3_model_components.mdBuilding a Model β take your filled Excel +
data/*.json, run the parser, importoutput.json:
β 4_building_a_model.mdRunning a Model β select a solver in Spine Toolbox and execute SpineOpt:
β 5_running_a_model.mdAnalyzing a Model β inspect tables, export to CSV/Excel, external plotting:
β 6_analyzing_a_model.md
Ready to jump in? Start at Building a Model if your Excel and JSON files are already prepared.