From 8c68ab4be4bff7981e745cc2b41c7bba5257a2d3 Mon Sep 17 00:00:00 2001 From: ningshuxia <ningshuxia0927@outlook.com> Date: 星期三, 16 四月 2025 20:37:38 +0800 Subject: [PATCH] 流量偏差 辅助类 --- 01-api/Service/IStation.Service/07-helper/02-schedule/ScheduleHelper.cs | 14 ++++++++++---- 1 files changed, 10 insertions(+), 4 deletions(-) diff --git a/01-api/Service/IStation.Service/07-helper/02-schedule/ScheduleHelper.cs b/01-api/Service/IStation.Service/07-helper/02-schedule/ScheduleHelper.cs index 1578b1a..5f6c9cc 100644 --- a/01-api/Service/IStation.Service/07-helper/02-schedule/ScheduleHelper.cs +++ b/01-api/Service/IStation.Service/07-helper/02-schedule/ScheduleHelper.cs @@ -25,12 +25,14 @@ private readonly decimal _frequency_max = 50; private readonly decimal _frequency_space = 1;//棰戠巼闂撮殧 - private readonly double _start_stop_loss_coefficient = 0.95;//娉靛惎鍋滄崯澶辩郴鏁� + private readonly double _start_stop_loss_coefficient = 0.9;//娉靛惎鍋滄崯澶辩郴鏁� private double _sel_opt_flow_excess = 1;//鍙�夋柟妗堢殑娴侀噺浣欓噺 private readonly double _sel_opt_pump_pressure_excess = 0;//鍙�夋柟妗堢殑鍗曟车鎵▼榛樿鎶崌浣欓噺 + private double _station_target_flow_diff = 0; // 绔欑偣鐩爣娴侀噺宸�� - private double _sel_opt_flow_deviation_ratio = 0.05;//鍙�夋柟妗堢殑娴侀噺鍋忓樊姣� + + private readonly double _sel_opt_flow_deviation_ratio = 0.05;//鍙�夋柟妗堢殑娴侀噺鍋忓樊姣� private readonly double _sel_opt_reasonable_flow_deviation_ratio = 0.005;//鍚堢悊鐨勬柟妗堢殑娴侀噺鍋忓樊姣� private readonly Service.AnalysisParameter _service_analysis_parameter = new(); @@ -51,12 +53,14 @@ private List<Model.AnalysisDeviation> _analysis_deviation_list = null;//鍒嗘瀽鍋忓樊 + + #endregion /// <summary> /// 鍒濆鍖� /// </summary> - public void Initial(List<int> current_open_flag_list, Model.ScheduleConfig schedule_config, List<Model.AnalysisDeviation> analysis_deviation_list) + public void Initial(List<int> current_open_flag_list, Model.ScheduleConfig schedule_config, List<Model.AnalysisDeviation> analysis_deviation_list, double station_target_flow_diff = 0) { _current_open_flag_list = current_open_flag_list; _min_open_count = 1; @@ -70,6 +74,7 @@ _frequency_limit_list = null; _flag_cumulative_runtime_dict = null; _priority_open_flag_list = null; + _station_target_flow_diff = 0; if (schedule_config != null) { _min_open_count = schedule_config.MinOpenCount; @@ -86,7 +91,7 @@ } _analysis_deviation_list = analysis_deviation_list; - + _station_target_flow_diff = station_target_flow_diff; } @@ -109,6 +114,7 @@ ) { + target_flow+=_station_target_flow_diff; #region 鍒濆鍖栧弬鏁� if (pump_list == null || !pump_list.Any()) { -- Gitblit v1.9.3