lx
2025-11-24 e5a570db2036a6b155c2ddc289b42bd050b9ad3c
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));
    }
}