OPT-36 round 4: count only charge control will make; Solar first drain at the night base
Review F1: a slot after B's run counts only if no slot from the expensive
hours on is cheaper (control plans B's charge left in the cheapest window
ahead), and x 0.95 of B's charge is stored. Three-price night: 1ac7fe9 left
the expensive hours 2.61 kWh short; now 0.
Review F2: a Solar first battery's drain until the expensive hours reads each
hour at no less than the night base (the profile is net of the sun). Read net,
a dark morning drained the battery the plan still counted; A's level fell,
the cheap run moved and was lost before it started (+0.40 EUR per 3 days).
The two real-price replays now cost what 0.20.0 does.
F3: the ux54 sweep's peak limit is 15 kW (the option's top). F4: the rest
comes from the grid (EN/NL). F5: CHANGELOG and DECISIONS wording.
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude
parent
1ac7fe98d7
commit
eb9ccc2730
@@ -912,9 +912,9 @@ t22 = at(22, 0, 5)
|
||||
# OPT-36: the plan counts B's charge under the peak limit, the tab's curve
|
||||
# charges at the batteries' ratings. Walked along the curve, B runs ahead of
|
||||
# the plan and A's level falls behind the tab's block. A limit that does not
|
||||
# bind (20 kW) makes the curve the charge control plans.
|
||||
# bind (15 kW, the option's top) makes the curve the charge control plans.
|
||||
c1, o1, s1, d01 = sweep("dynamic", t22, (20.0, 20.0), evening=4800.0,
|
||||
peak_w=20000.0)
|
||||
peak_w=15000.0)
|
||||
tm1 = o1["days"][1]["batteries"]
|
||||
print(" 22:00, both batteries at 20 %: tomorrow", [[(r["kind"], r["from"], r["to"]) for r in b["blocks"]] for b in tm1])
|
||||
check("F1, modes on: at 22:00 with both batteries at 20 % tomorrow's give "
|
||||
|
||||
Reference in New Issue
Block a user