How umep-dev/suews works
SUEWS is an urban land-surface model, with SuPy providing Python and command-line interfaces for configuring and running neighbourhood-scale energy and water balance simulations. The primary workflow takes configuration and meteorological forcing through validation and model execution, then exposes simulation output for analysis. Separate branches cover configuration conversion, schema and knowledge access, and optional MCP access. The README documents the Fortran physics engine and major physical schemes; sampled source is incomplete, so internal links not established by the evidence are omitted.
Main entry points: _run.py Simulation control · src Fortran physics · suews_cli.py SUEWS CLI · server.py MCP server
Components 22
User interfaces
- Python API
src/supy/__init__.py - SUEWS CLI
src/supy/cmd/suews_cli.py
Simulation workflow
- YAML configuration
src/supy/data_model/core/config.py - Config validation
src/supy/data_model/validation/pipeline/orchestrator.py - Forcing preparation
src/supy/_load.py - Simulation control
src/supy/_run.py - Rust bridge
src/supy/_run_rust.py - Simulation output
src/supy/_run_output.py - Output analysis
src/supy/_post.py
Model capabilities
- Fortran physics
src/suews/src - Radiation schemes
src/supy/data_model/core/physics_families.py - Heat storage schemes
src/supy/data_model/core/physics_families.py - Building energy
src/supy/data_model/core/physics_families.py - Water balance
src/supy/data_model/core/hydro.py
Configuration and analysis
- Config conversion
src/supy/util/conversion_engine.py - Schema tools
src/supy/data_model/schema/registry.py - Knowledge pack
src/supy/knowledge/pack.py - Run diagnostics
src/supy/diagnostics/_checks.py
MCP integration
- MCP server
mcp/src/suews_mcp/server.py - MCP tools
mcp/src/suews_mcp/tools - MCP resources
mcp/src/suews_mcp/resources
Other components
- Model user
Connections 25
- Model user → Python API: uses
- Model user → SUEWS CLI: invokes
- Python API → Simulation control: runs simulation
- SUEWS CLI → Config validation: validates config
- SUEWS CLI → Simulation control: runs simulation
- YAML configuration → Config validation: validated by
- Config validation → Simulation control: checks config
- Simulation control → Forcing preparation: prepares inputs
- Simulation control → Rust bridge: invokes
- Rust bridge → Fortran physics: calls engine
- Fortran physics → Simulation output: produces
- Simulation control → Simulation output: returns output
- Simulation output → Output analysis: analyzed by
- Radiation schemes → Fortran physics: parameterizes
- Heat storage schemes → Fortran physics: parameterizes
- Building energy → Fortran physics: parameterizes
- Water balance → Fortran physics: parameterizes
- Model user → Config conversion: converts config
- Model user → Schema tools: queries schema
- Model user → Knowledge pack: queries knowledge
- Model user → Run diagnostics: checks run
- MCP server → MCP tools: registers tools
- MCP server → MCP resources: registers resources
- Model user → MCP server: connects via MCP
- MCP tools → SUEWS CLI: invokes CLI