oprava dynamickeho spodniho prahu
This commit is contained in:
@@ -498,7 +498,13 @@ def solve_dispatch(
|
||||
soc_prev_expr = current_soc_wh if t == 0 else soc[t - 1]
|
||||
arb_t = arb_floor_series[t]
|
||||
soc_low_t = soc_min_series[t]
|
||||
prob += soc_prev_expr >= (arb_t - (arb_t - soc_low_t) * (1 - w_arb[t]))
|
||||
# Při relaxovaném dnu (soc_low pod DB min_soc Wh) nesmí větev w_arb=1 znovu vynutit arb_t
|
||||
# (typicky ~rezerva 20 %) — jinak nejde „vypustit“ baterku k planner floor 5 %.
|
||||
if soc_low_t < min_soc_wh - 1e-3:
|
||||
arb_cap_t = min(arb_t, soc_low_t)
|
||||
else:
|
||||
arb_cap_t = arb_t
|
||||
prob += soc_prev_expr >= (arb_cap_t - (arb_cap_t - soc_low_t) * (1 - w_arb[t]))
|
||||
prob += bd[t] <= (
|
||||
s.load_baseline_w
|
||||
+ ev_total_t
|
||||
|
||||
Reference in New Issue
Block a user