1. allocation-diagram
— supply→demand splits
Legacy family (USER-MANUAL.css). Segmented bars show how
one interval’s supply divides across demands.
One-hour allocation flow (MWh) — dummy data
Stage 1 Protect firm demand
Firm supply · P40 4 MWh
→
Trader sales · firm 3 MWh served
Firm remainder 1 MWh
Stage 2 Walk open demand by priority
Solar A · 65c 6 MWh
Solar B · 70c 4 MWh
Wind · 72c 5 MWh
↓ merit-order allocation
1 · Industrial 8 / 8 MWh
6
Solar A
2
Solar B
2 · Municipal 3 / 5 MWh
2
Wind
1
Firm
2
short
Solar Wind Firm Shortfall
2.
priority-prorata-diagram — tiers, then an equal-tier split
Priority first; pro-rata only within an equal tier — dummy data
Demand to serve 10.00 MW
Priority 10
Solar PPA A 3.00 MW served to
cap
7.00 MW remains
↓
Priority 20 equal tier
PPA B · weight 1 1.75 MW
PPA C · weight 3 5.25 MW
7.00 MW × 1 : 3 → 1.75 MW : 5.25 MW
↓
Priority 30
Solar PPA D 0.00 MW requirement
already met
3.
rule-example-diagram — time-lane scenario flows
Two hourly decisions produced by the rule set — dummy data
12:00 standard
Solar available 10 MWh
MW_CAP 8 →
Municipal · PRO_RATA 1:3 2 Water + 6
Clinic
+
Left for Industrial 2 MWh
23:00 off-peak
Wind available 10 MWh
SHAPE_MATCH →
Industrial night shift 6 MWh
below floor →
Commercial rejected 4 MWh spills
4. pricing-flow —
flow plus the money ledger
Allocation flow and price — 12:00 solar → factory — dummy data
12:00 standard
Solar PPA · priority 10 16,710 kWh
sent buy 65 c/kWh
DLF 0.966 → 568 kWh lost
Factory · priority 10 16,142 kWh
delivered sell 120 · wheel 15 c/kWh
Revenue R 19,370.23 16,142 × 120 ÷
100
Energy cost − R 10,861.50 16,710 ×
65 ÷ 100
Wheeling − R 2,421.28 16,142 × 15 ÷
100
Line margin R 6,087.45 37.7 c per
delivered kWh
5.
run-chart-example — inline-SVG mini charts
How the run-detail chart reads two scenarios — dummy data
Solar
/ contracted
supply Firm
or BESS
supply Demand
line Spill
Midday solar with network losses
12:00 · 16,142 kWh
delivered
08h 12h 16h
Read it: the solar band meets the demand line at noon;
the chart stacks delivered kWh.
Firm cover with a top-up gap
19:00 demand 5,000
3,000 supplied
17h 21h
Read it: the red ticks are the 2,000 kWh gap priced at
grid top-up.
Meter ladder — readings → intervals
dummy · register step + Δ
bars
t0 t3
Read it: the step is cumulative readings; the amber
bars are the interval deltas between them.
6. tab-sample —
annotated screen replica
Allocations sample view — dummy data
Hour 1
Kind 2
Sent 3
Delivered 4
Margin 5
12 SAST
ALLOCATION
16,710 kWh
16,142 kWh
R 6,088
1 Hour is the SAST settlement interval.
2 Kind identifies the line type.
3 Sent is injected energy; buy cost is charged on
it.
4 Delivered is energy after DLF losses.
5 Margin is the line’s realised Rand
contribution.
7. entity-map — object-model
cards
New family (manual.css).
From site to statement — the objects on the way — dummy data
Organization your company
→ owns 1‑n
Generator site an IPP plant
→ metered by
Meter 20-min readings
→ derives
Intervals wheeling consumption
Deal & money objects
Proposal terms before contract
Physical PPA wheeled energy deal
Settlement period one month, one contract
Statement one party’s filtered view
BRP registration the market seat
8. lifecycle-rail — state
machines
Proposal states — dummy data
PENDING
→ accept
ACCEPTED
→ creates draft PPA
NEGOTIATING
→ both sign
SIGNED
Also from PENDING:
DECLINED
EXPIRED
WITHDRAWN
SUPERSEDED
An expired proposal can be renewed up to its renewal limit — it returns
to PENDING.
9.
pipeline-spine — staged pipelines and the locator
Full form:
Settlement — five stages, writes only at the end — dummy data
1 Resolve meters → interval series
→
2 Match min(supply, demand) +
losses
→
3 Price tariff, TOU, escalation
→
4 Adjust spill, shortfall, banking
→
5 Ledger double entry, Σ = 0
Locator variant (--locator, tops every volume from
M1):
You are here
1 Setup
→
2 Deal
→
3 Strategy
→
4 Nominate
→
5 Market day
→
6 Settle
→
7 Statement
10. ledger-table — double
entry, Σ = 0
June line items — one PPA, one buyer — dummy data
Party
Line
kWh
Amount
Off-taker
Wheeled energy
16,142
− R 19,370.23
IPP
Energy sold
16,710
R 10,861.50
Trader
Margin
—
R 6,087.45
Eskom
Wheeling charge
16,142
R 2,421.28
Σ across all parties (must be zero)
R 0.00 ✓
Every rand a party pays appears as a rand another party receives — the
ledger nets to zero by construction.
11. clock-dial — the
system’s rhythms
The 24-hour clock and the month of jobs (SAST) — dummy data
00 06 12 18
01:00
Daily settlement runner
02:30
Nightly strategy re-forecast
03:00
Day-ahead bids built and submitted
05:00
Monthly IPP forecast (5th)
12:00
Fetch accepted schedule
Day-of-month jobs
1
2
3
4
5
6 7 8 9 10
11 12 13 14 15
16 17 18 19
20
21 22 23 24 25
26 27 28 29 30
31
12. topology-map — wheeling
paths
IPP → off-taker across two networks — dummy data
Transmission ≥ 132 kV
IPP · Solar 75 MW injects at 132 kV
→ TLF zone North
Injection meter 20-min kWh
→ UoS charged
Eskom Tx national grid
↓ DLF 0.966
Distribution 11–33 kV
Municipality wheeling-enabled
→ delivered
Factory NMD 5 MVA
← sold by
Trader licensed reseller