The engine

A deterministic engine you can actually audit

No black box. Every number traces to a documented physical or financial model, a versioned dataset, and a seeded random stream. Identical inputs always produce identical outputs.

01

Solar resource

Solar geometry → Hottel clear-sky envelope → seeded cloud modulation → Erbs diffuse split → isotropic POA transposition. Climate-differentiated, fully deterministic.

02

Load model

Archetype weekday/weekend/seasonal shapes scaled to peak, or your own 8760-hour CSV. Critical-load fractions for resilience framing.

03

Hourly dispatch

8,760-step chronological simulation with four selectable EMS policies, asymmetric storage losses, generator starts, fuel, and wet-stacking evidence.

04

Lifecycle economics

Explicit annual cash flows for capex, development, contingency, O&M, insurance, fuel, carbon, replacements, incentives, salvage, and decommissioning—with a matched baseline.

05

Sizing optimizer

Exhaustive coarse sweep, multi-start joint DER refinement, dispatch-policy co-optimization, and adverse-scenario robust selection.

06

Disturbance resilience

Fleet-unit failures, seeded Monte Carlo repairs, outage survival, and NPS fixed/local/global resilience measures with recovery curves.

Solar & physics

Real solar geometry, not a lookup

Hourly irradiance is built from first principles: solar declination and hour angle give the zenith; a Hottel clear-sky model sets the beam/diffuse envelope; a seeded daily clearness index introduces realistic cloud cover; Erbs splits global into beam and diffuse; and an isotropic transposition projects onto the tilted array. PV power applies an NOCT cell-temperature model and a temperature coefficient.

cos θz = sinφ·sinδ + cosφ·cosδ·cosω
P = P_rated · (POA/1000) · [1 + γ(T_cell − 25)] · derate
Dispatch & fuel

Generator fuel & part-load

Each hour, PV serves load first, surplus charges the battery, the battery covers the remaining deficit, and the selected EMS allocates the remaining deficit between storage and generation. Fuel is charged at the actual operating setpoint; minimum-load surplus is stored or dumped explicitly, and the max-SOC policy reports sub-minimum wet-stacking. Fleet unit counts drive independent disturbance failures and repair availability.

fuel [L/h] = a · P_rated + b · P_out
SOC limited by power, converter & usable depth

Validation ladder

You shouldn’t trust a model you can’t check. Here’s how every release is held to account.

Acceptance suite

Shipping today. Frozen 20-project suite re-run every release: energy balance < 0.1%, SOC bounds, strict 0% capacity shortage on every optimum.

Invariant checks

Shipping today. Energy balance, SOC propagation, fuel curve, and COE/NPC formula checks on every benchmark.

Cross-engine · planned

Planned. Identical cases run through independent reference engines (REopt.jl, PySAM) with a reported delta.

External anchoring · planned

Planned. Specific-yield checks vs PVGIS/PVWatts at real coordinates and published REopt cases.

Acceptance metricTargetThis engine
Annual energy-balance residual< 0.1% of load0.000% (measured)
Reproducibility (same inputs)exactexact — seeded RNG
Best design unmet load≤ constraint0.000% at 0% limit
Single 8,760-hour run< 60 s~10 ms in-browser
Full sizing searchbounded + non-blockingWeb Worker; stage/scenario counts reported
Run packageinputs + hashes + outputsemitted on every run

The roadmap

We ship the rigorous wedge first, then earn the right to the rest. We’re honest about what runs today.

Now

Robust multi-stage DER sizing

Exhaustive coarse search, multi-start joint refinement, policy co-optimization, risk-adjusted scenarios, and all-scenario feasibility. Shipping today.

Now

Granular lifecycle cost modeling

Editable owner, development, contingency, O&M escalation, carbon, replacement-learning, incentive, salvage, and decommissioning cash flows. Shipping today.

Now

Component disturbance + repair resilience

Deterministic or seeded Monte Carlo fleet failures, exponential repairs, NPS score parity, and REopt-style outage survival. Shipping today.

Next

True MILP core

Replace the grid sweep with a mixed-integer program (HiGHS / commercial solvers) for continuous-variable global optimality on generator commitment and storage.

Next

Physics-aware power flow

Unbalanced multiphase AC power flow validation so economic designs respect voltage and thermal limits on real feeders.

Later

Spatial array layout

Satellite/LiDAR roof & parcel modeling so the optimal capacity is verified to physically fit.

Later

Digital twin · IEEE 2030.7

Compile dispatch logic to standards-compliant controllers and run a live MPC twin against telemetry.

Later

EV fleet & V2G co-optimization

Treat connected fleets as dispatchable storage with route-feasibility constraints.