Version 0.60.x (development). The current line modernizes the interpolation pipeline, scenario storage, and analysis tools on the way to v1.0. The v0.50 release (“half-way-there”) is frozen and receives fixes only.
Status legend: [✓] done · [~] in progress · [ ] planned.
Current status (July 2026)
-
v0.50 — frozen reference release (fixes only)
-
v0.60.x — active development:
interp_mod()pipeline, scenario storage, analysis tools
What’s implemented
- [✓] Four solver backends — GLPK, Julia/JuMP, Python/Pyomo,
GAMS
- [✓] Refactored interpolation pipeline (
interp_mod(), spec-driven recipe engine)
- [✓] Scenario storage (Arrow/SQLite) and analysis
(
levcost(),report(),autoplot())
- [✓] Dependency setup & checks (
en_setup(),en_check_dependencies(),en_check_packages())
- [~] multimod-based equation rendering (GAMS → AST → LaTeX; proof of concept)
Roadmap / next steps
Model API
- [~] Refactor
newConstraint(). User-defined constraints currently compile to GAMS-dialect text; move them to a language-neutral representation so every backend renders from a single definition (aligned with the multimod AST).
Base-code simplification
- [~] Reduce duplication across the parallel technology /
storage / trade entity systems (the triplicated capacity / EAC
/ fixed-O&M skeletons) toward a more unified, parameterized process
form.
- [~] Finish the
interp_mod()recipe/registry engine — route the remaining inline mapping construction through the engine and retire the legacyinterpolate_model().
Integration with multimod
- [~] Single-source model. Drive both the equation
documentation and the executable model code (LaTeX / GLPK / JuMP /
Pyomo) from one definition via multimod’s read → AST
→ write chain, replacing the manual cross-engine mirroring of the model
templates.
Milestones
-
v0.50 — frozen “half-way-there” reference
release (fixes only)
-
v0.60.x — current development: interpolation
pipeline, scenario storage, analysis
-
v1.0 — CRAN release; stabilized model, classes, and
API
- v1.0+ — multimod integration; nested regions & time (geoscales / timescales)
Contributing & support
Contributions, issues, and ideas are welcome.
- GitHub: https://github.com/optimal2050/energyRt
- Issues: https://github.com/optimal2050/energyRt/issues
- Website: https://energyRt.org
