Examples
Examples
Try the starting example
- Available slots [PV kW,non-EV site load kW]; enter JSON
- [[5,2],[8,3],[2,3]]
- Aggregate charge limit (kW)
- 4
- Required grid-side charging energy (kWh)
- 10
- Slot duration (hours)
- 1
- Solar charging energy (kWh)
- 7
- Imported charging energy (kWh)
- 3
- Unfilled charging request (kWh)
- 0
- Slot allocation [charge,solar,grid] (JSON)
- [[4,3,1],[4,4,0],[2,0,2]]
Try another scenario
- Available slots [PV kW,non-EV site load kW]; enter JSON
- [[10,2],[2,1]]
- Aggregate charge limit (kW)
- 6
- Required grid-side charging energy (kWh)
- 15
- Slot duration (hours)
- 1
- Solar charging energy (kWh)
- 7
- Imported charging energy (kWh)
- 5
- Unfilled charging request (kWh)
- 3
- Slot allocation [charge,solar,grid] (JSON)
- [[6,6,0],[6,1,5]]
Calculation method
Calculation method
Solar charging energy (kWh)
For each slot charge min(remaining,limit×duration); solar=min(charge,max(0,PV−site load)×duration). Sum.
Imported charging energy (kWh)
Sum slot charge minus solar allocation.
Unfilled charging request (kWh)
Required minus sum allocated charging energy.
Slot allocation [charge,solar,grid] (JSON)
Apply earliest-slot greedy algorithm; all energies in kWh.
Symbols and units
- a
- Available slots [PV kW,non-EV site load kW]; enter JSON
- b
- Aggregate charge limit (kW)
- c
- Required grid-side charging energy (kWh)
- d
- Slot duration (hours)
Use the units shown. A list keeps the order in which you enter its values. The symbol ^ means “raised to the power of”.
Assumptions & limits
Assumptions & limits
- One aggregate fleet energy request available in every supplied slot. Greedy earliest charging; not a forecast optimizer. Supported limits: All numeric inputs and computed intermediates must remain finite. Supported numeric input magnitude is zero or 1e-12 through 1e12 in absolute value; reject values outside this bounded range. All lists/JSON record tables are limited to 100 records unless a stricter bound is stated; reject malformed record arity and wrong member types. All numeric values must be finite. Lists contain at most 100 records; required lists must be nonempty. Rates, probabilities and fractions are entered as fractions, not percentages; fractions must be between 0 and 1. Use a single consistent user-selected currency for all amounts; no exchange-rate conversion.
Are these inputs private?
These calculations run in your browser. A shared link contains the values you choose to share. Only questions submitted to the separate AI finder are sent to OpenAI.