Skip to content

GSYE-158: Add the PV RoI cash-flow and indicator engine - #615

Open
BigTava wants to merge 7 commits into
masterfrom
feature/GSYE-158-roi-engine
Open

BigTava wants to merge 7 commits into
masterfrom
feature/GSYE-158-roi-engine

Conversation

@BigTava

@BigTava BigTava commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Adds gsy_framework/sim_results/roi, a pure engine for D7.3 equations 5 to 16 with no I/O, covering annualisation, the yearly cash flow and balance, payback, discounted payback, NPV, IRR and LCOE.
  • Every suppressed indicator carries a cause, such as never_breaks_even, irr_not_unique or non_positive_benefit, and unusable inputs return no result with a stated reason.
  • Supports both inverter replacement treatments, discrete and reserve, and suppresses IRR when the cash flow changes sign more than once.
  • Tests check the yearly series and every indicator against reference values in a CSV fixture, plus the guard cases and the balance invariants.
  • LCOE is asset-level and ignores the ownership share, zero cash flows do not count as sign changes, and payback uses the first zero crossing.

@codecov

codecov Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 99.54751% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 68.83%. Comparing base (f542f9e) to head (596834e).
⚠️ Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #615      +/-   ##
==========================================
+ Coverage   67.61%   68.83%   +1.21%     
==========================================
  Files          88       95       +7     
  Lines        5571     5792     +221     
  Branches     1262     1302      +40     
==========================================
+ Hits         3767     3987     +220     
  Misses       1622     1622              
- Partials      182      183       +1     
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@BigTava
BigTava force-pushed the feature/GSYE-158-roi-engine branch 2 times, most recently from 0bf1a75 to b9a1159 Compare September 28, 2026 15:42
@BigTava BigTava mentioned this pull request Oct 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant