No description
- ProcessPoolExecutor with fork context: 4 workers each inherit the scenario df via copy-on-write. linprog/HiGHS doesn't release the GIL so threads were useless; processes get clean ~3.5× speedup. - Cross-scenario LP cache keyed on everything the LP depends on (demand, retail, PV size, saldering, η_rt) but NOT inflation or cost. Result: tweaking just inflation re-uses every LP — sub-100ms. Cold cold scenario went 75s → 17s; inflation tweak went 17s → 10ms. |
||
|---|---|---|
| data/raw | ||
| docs | ||
| scripts | ||
| src/pluginbattery | ||
| tests | ||
| .env.example | ||
| .gitignore | ||
| CLAUDE.md | ||
| Dockerfile | ||
| Procfile | ||
| pyproject.toml | ||
| README.md | ||
| uv.lock | ||
pluginbattery
Backtest the actual ROI of a home battery against real historical electricity prices and solar irradiance.
Answers: "If I had owned this battery (plug-in or installed) over the last N years, what would it have actually saved me?"
See CLAUDE.md for project intent, open decisions, and assumptions.