From e5a570db2036a6b155c2ddc289b42bd050b9ad3c Mon Sep 17 00:00:00 2001
From: lx <ex_lixiang17@cosl.com.cn>
Date: 星期一, 24 十一月 2025 13:49:16 +0800
Subject: [PATCH] update 1.4

---
 ErrorAnalysis.Service/PDEVCalcService.cs |   18 +++++++++---------
 1 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/ErrorAnalysis.Service/PDEVCalcService.cs b/ErrorAnalysis.Service/PDEVCalcService.cs
index a549385..d158c7e 100644
--- a/ErrorAnalysis.Service/PDEVCalcService.cs
+++ b/ErrorAnalysis.Service/PDEVCalcService.cs
@@ -8,19 +8,19 @@
 {
     public class PDEVCalcService
     {
-        public static double GetMergePDEV(string connectionString, string modelId, int porosity)
+        //搴熷純
+        public static double GetMergePDEV(string modelId, double porosity, double sw, double speed, double depth, double yieldCounting, double nearCofe, double farCofe, int countStart, int countEnd)
         {
-            var farC = COMergeCalcService.GetFarMergeCResult(connectionString, modelId, porosity);
-            var farO = COMergeCalcService.GetFarMergeOResult(connectionString, modelId, porosity);
-            var farPDEV = CalcPDEV(farC, farO);
+            var farResult = COMergeCalcService.GetFarMergeCOResult(modelId, porosity, sw, speed, depth, yieldCounting, countStart, countEnd);
+            var farPDEV = CalcPDEV(farResult.Item1, farResult.Item2);
 
-            var nearC = COMergeCalcService.GetNearMergeCResult(connectionString, modelId, porosity);
-            var nearO = COMergeCalcService.GetNearMergeOResult(connectionString, modelId, porosity);
-            var nearPDEV = CalcPDEV(nearC, nearO);
+            var nearResult = COMergeCalcService.GetNearMergeCOResult(modelId, porosity, sw, speed, depth, yieldCounting, countStart, countEnd);
+            var nearPDEV = CalcPDEV(nearResult.Item1, nearResult.Item2);
 
-            return nearPDEV * 0.65 + farPDEV * 0.35;
+            return Math.Sqrt(Math.Pow(nearPDEV * nearCofe, 2) + Math.Pow(farPDEV * farCofe, 2));
         }
 
-        private static double CalcPDEV(double c, double o) => Math.Sqrt(Math.Pow(c / o, 2) * (1 / c + 1 / o));
+        //搴熷純
+        private static double CalcPDEV(double c, double o) => c / o * Math.Sqrt((1 / c + 1 / o));
     }
 }

--
Gitblit v1.9.3