velky refaktor - sladeni planovani LP aby pocital s realnym max sell/buy co pusti stridac
This commit is contained in:
@@ -513,8 +513,11 @@ begin
|
||||
from _ems_plan_slot_wk wk
|
||||
where wk.pv_surplus_w > 0
|
||||
and wk.sell_price >= wk.buy_price - v_degrad_czk_kwh
|
||||
-- Držet PV na večerní peak: ne nabíjet z FVE když sell výrazně pod budoucím výkupním oknem.
|
||||
and wk.sell_price >= wk.future_sell_lookahead - v_degrad_czk_kwh
|
||||
-- Držet PV na večerní peak jen při kladném výkupu; při sell<0 (záporný výkup) vždy nabíjet z FVE.
|
||||
and (
|
||||
wk.sell_price < 0
|
||||
or wk.sell_price >= wk.future_sell_lookahead - v_degrad_czk_kwh
|
||||
)
|
||||
order by wk.store_score desc nulls last, wk.slot_ord
|
||||
loop
|
||||
exit when v_cum >= v_pv_layer_cap_wh;
|
||||
@@ -554,18 +557,26 @@ begin
|
||||
where (
|
||||
case
|
||||
when v_purchase_pricing_mode = 'fixed' then
|
||||
wk.sell_price > v_degrad_czk_kwh
|
||||
wk.sell_price > wk.buy_price + v_degrad_czk_kwh
|
||||
else
|
||||
wk.sell_price > v_ref_buy_czk_kwh + v_degrad_czk_kwh
|
||||
end
|
||||
)
|
||||
-- Na dni prvního sell<0 nepočítat noční „šrot“ (00–04) do globálního rozpočtu —
|
||||
-- jinak vyčerpá Wh před ranní špičkou (home-01: půlnoc 3,7 vs. 07:00 3,06).
|
||||
-- Před prvním sell<0: do rozpočtu exportu jen sloty bez lepšího sell později tentýž den
|
||||
-- (OTE), ne pevné hodiny 00–04 (home-01: půlnoc 3,7 vs. 07:00 3,06).
|
||||
and not (
|
||||
v_first_neg_prague_date is not null
|
||||
v_first_neg_sell_ord is not null
|
||||
and wk.slot_ord < v_first_neg_sell_ord
|
||||
and (wk.interval_start at time zone 'Europe/Prague')::date = v_first_neg_prague_date
|
||||
and extract(hour from wk.interval_start at time zone 'Europe/Prague')
|
||||
< v_morning_preneg_start_hour
|
||||
and exists (
|
||||
select 1
|
||||
from _ems_plan_slot_wk w2
|
||||
where w2.slot_ord > wk.slot_ord
|
||||
and w2.slot_ord < v_first_neg_sell_ord
|
||||
and (w2.interval_start at time zone 'Europe/Prague')::date
|
||||
= (wk.interval_start at time zone 'Europe/Prague')::date
|
||||
and w2.sell_price > wk.sell_price + v_degrad_czk_kwh
|
||||
)
|
||||
)
|
||||
order by wk.sell_price desc, wk.slot_ord desc
|
||||
loop
|
||||
@@ -596,7 +607,7 @@ begin
|
||||
and (
|
||||
case
|
||||
when v_purchase_pricing_mode = 'fixed' then
|
||||
wk.sell_price > v_degrad_czk_kwh
|
||||
wk.sell_price > wk.buy_price + v_degrad_czk_kwh
|
||||
else
|
||||
wk.sell_price > v_ref_buy_czk_kwh + v_degrad_czk_kwh
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user