kalibrace per pole
This commit is contained in:
41
db/migration/V057__site_pv_forecast_calibration.sql
Normal file
41
db/migration/V057__site_pv_forecast_calibration.sql
Normal file
@@ -0,0 +1,41 @@
|
||||
-- Kalibrace PV forecastu per site (cutoff učení, škrcení policy, volitelné přepsání parametrů delty).
|
||||
-- forecast_accuracy: flagy pro učení (vyloučení škrcených slotů apod.).
|
||||
|
||||
CREATE TABLE ems.site_pv_forecast_calibration (
|
||||
site_id int NOT NULL PRIMARY KEY REFERENCES ems.site (id) ON DELETE CASCADE,
|
||||
-- Od tohoto okamžiku (UTC) brát řádky do učení delty / vážených statistik (>=).
|
||||
delta_learn_min_ts timestamptz NOT NULL,
|
||||
-- Od kdy platí agresivní export/škrcení policy (NULL = neaplikovat časový filtr u heuristiky škrcení).
|
||||
pv_curtailment_policy_effective_from timestamptz NULL,
|
||||
top_n_days int NULL,
|
||||
non_top_day_factor numeric NULL,
|
||||
day_weight_gamma numeric NULL,
|
||||
half_life_days numeric NULL,
|
||||
threshold_w int NULL,
|
||||
updated_at timestamptz NOT NULL DEFAULT now()
|
||||
);
|
||||
|
||||
COMMENT ON TABLE ems.site_pv_forecast_calibration IS
|
||||
'Per-site kalibrace PV delta profilu a pravidla učení. NULL v numerických sloupích = použít default z ems.fn_pv_forecast_delta_profile.';
|
||||
|
||||
COMMENT ON COLUMN ems.site_pv_forecast_calibration.delta_learn_min_ts IS
|
||||
'Dolní mez interval_start pro učení delty z forecast_accuracy (UTC).';
|
||||
|
||||
COMMENT ON COLUMN ems.site_pv_forecast_calibration.pv_curtailment_policy_effective_from IS
|
||||
'Od tohoto času bereme heuristiku škrcení (planning_interval): sloty po tomto datu s curtailment/cut-off se mohou vyloučit z učení.';
|
||||
|
||||
ALTER TABLE ems.forecast_accuracy
|
||||
ADD COLUMN IF NOT EXISTS learning_eligible boolean NOT NULL DEFAULT true,
|
||||
ADD COLUMN IF NOT EXISTS learning_exclude_reason text NULL;
|
||||
|
||||
COMMENT ON COLUMN ems.forecast_accuracy.learning_eligible IS
|
||||
'false = řádek se nepoužívá pro učení delty (škrcení, před cutoffem, …); actual_power_w může být NULL pro audit.';
|
||||
|
||||
COMMENT ON COLUMN ems.forecast_accuracy.learning_exclude_reason IS
|
||||
'Důvod vyloučení z učení, např. curtailment_or_gen_cutoff, before_delta_learn_min.';
|
||||
|
||||
-- Seed: všechny existující lokality — stejný cutoff jako dosud v R__078 (začátek 2026-04-12 Europe/Prague).
|
||||
INSERT INTO ems.site_pv_forecast_calibration (site_id, delta_learn_min_ts, top_n_days)
|
||||
SELECT s.id, timestamptz '2026-04-11T22:00:00Z', 3
|
||||
FROM ems.site s
|
||||
ON CONFLICT (site_id) DO NOTHING;
|
||||
Reference in New Issue
Block a user