California OPF Solver
Build a grid, solve dispatch, and see why prices separate.
This tool is a hands-on DC optimal power flow sandbox. You can add buses, connect them with branches,
place loads, generators, and storage, then solve a simplified hourly dispatch to see flows, congestion,
locational marginal prices, storage behavior, and unserved load.
Graph
Edit the network directly on the map, inspect buses and branches, and scrub across the 24-hour day.
Data
Review and edit all model tables, including resources, branches, dispatch, flows, and revenues.
Solve DC OPF
Run the simplified dispatch model after the network is connected and assumptions are ready.
How To Use
- Use + Bus to place a node, then add loads, generators, or storage from the left panel.
- Use + Branch to connect two buses, then set ratings and reactance from the branch panel.
- Click buses, resources, and branches to edit assumptions. Drag profile and cost charts for custom shapes.
- Use the hour slider or charts to scrub dispatch, load, prices, storage, and branch flows.
Model Concepts
- Buses are pricing and balance nodes. Loads consume power; generators and storage supply it.
- Branches move power between buses subject to forward and reverse transmission limits.
- LMP reflects the marginal cost of serving another MW at a bus under congestion and limits.
- Unserved load appears when demand cannot be met locally or imported through usable capacity.
Assumptions
The solver uses a linearized DC OPF: voltage magnitude, reactive power, losses, unit commitment, ramping,
reserves, and AC feasibility are not represented. Generator profiles define hourly availability, cost curves
approximate dispatch offers, storage follows power/energy/SOC constraints, and emergency/unserved-load variables
keep the model solvable while making infeasible cases visible.