From 1519533649b43337d214523f7cd075edf237b3f7 Mon Sep 17 00:00:00 2001 From: ningshuxia <ningshuxia0927@outlook.com> Date: 星期二, 22 四月 2025 13:57:42 +0800 Subject: [PATCH] 代码修改 --- 02-desktop/Desktop/IStation.Test/helper/DynamicThresholdProcessorHelper.cs | 16 +++++++++------- 1 files changed, 9 insertions(+), 7 deletions(-) diff --git a/02-desktop/Desktop/IStation.Test/helper/DynamicThresholdProcessorHelper.cs b/02-desktop/Desktop/IStation.Test/helper/DynamicThresholdProcessorHelper.cs index 1e413a1..f145c76 100644 --- a/02-desktop/Desktop/IStation.Test/helper/DynamicThresholdProcessorHelper.cs +++ b/02-desktop/Desktop/IStation.Test/helper/DynamicThresholdProcessorHelper.cs @@ -3,9 +3,12 @@ public class DynamicThresholdProcessorHelper { - public static List<PointViewModel> Filter(List<PointViewModel> ptList) + + + + public static List<PumpViewModel> Filter(List<PumpViewModel> ptList) { - var pressures = ptList.Select(p => p.Y).ToList(); + var pressures = ptList.Select(p => p.PressureDiff).ToList(); // 璁$畻缁熻閲� var (mean, stdDev) = CalculateStats(pressures); @@ -14,12 +17,11 @@ double sigmaMultiplier = CalculateSigmaMultiplier(skewness); sigmaMultiplier = 3;//鐩墠榛樿 鏍囧噯宸� - // 璁$畻杈圭晫 double lower = mean - sigmaMultiplier * stdDev; double upper = mean + sigmaMultiplier * stdDev; - return ptList.Where(p => p.Y >= lower && p.Y <= upper).ToList(); + return ptList.Where(p => p.PressureDiff >= lower && p.PressureDiff <= upper).ToList(); } public static List<Model.StationSignalRecord> Filter(List<Model.StationSignalRecord> ptList) @@ -63,7 +65,7 @@ // 鏍稿績缁熻璁$畻 - private static (double mean, double stdDev) CalculateStats(List<double> values) + public static (double mean, double stdDev) CalculateStats(List<double> values) { double mean = values.Average(); double stdDev = Math.Sqrt(values.Sum(v => Math.Pow(v - mean, 2)) / (values.Count - 1)); @@ -71,7 +73,7 @@ } // 鍋忓害璁$畻锛圥earson's moment coefficient锛� - private static double CalculateSkewness(List<double> values) + public static double CalculateSkewness(List<double> values) { double mean = values.Average(); double std = CalculateStats(values).stdDev; @@ -80,7 +82,7 @@ } // 鍔ㄦ�佅冨�嶆暟璁$畻瑙勫垯 - private static double CalculateSigmaMultiplier(double skewness) + public static double CalculateSigmaMultiplier(double skewness) { return skewness switch -- Gitblit v1.9.3