CFDL

Energy: solar PPA microgrid

A solar microgrid selling under a long-term power purchase agreement, with production degradation and a fixed escalator on the contracted price.

Every number below is checked against an independent reference implementation on every commit — period by period, and on each metric, inside a declared tolerance. See benchmark methodology.

The case

A 2 MW solar and storage microgrid selling under a 25-year power purchase agreement, with production degrading each year and a fixed escalator on the contracted price. Level-pay project debt sits underneath.

The reference

Project-finance conventions for a contracted renewable asset: contracted offtake with degradation and escalation, operations and maintenance, and sculpted debt.

Not redistributable. The source cannot be published, so its conventions are recreated independently of the model and compared period by period.

What it exercises

Packenergy
Contract typesenergy.ppa, energy.storage_arbitrage, energy.om, energy.debt_service, energy.capex
Language featurespack contracts composing revenue, cost and debt on one asset
Conventionsproduction degradation, contracted price escalation, storage arbitrage margin, level-pay debt

The result

Present value 1,220,668.85, undiscounted total 5,771,865.78 and lifetime revenue 12,594,004.52.

Asserted: net cash flow per period, plus the three summary figures.

The delta

None: every period agrees inside a one-cent tolerance.

Run configuration

{
  "deterministic": {
    "annual_discount_rate": 0.08
  }
}

Verified results

Checked period by period: 1 series across 300 periods300 values in all, each within ±0.01 of the reference.

  • net_cash_flow

Summary metrics for the base run:

MetricValueTolerance
model.npv1,220,668.85±1
model.total5,771,865.78±1
domain.energy.revenue12,594,004.52±1
domain.energy.ebitda10,202,961.05±1
domain.energy.debt_service2,751,095.26±1
domain.energy.dscr3.708691±0.0001