lx
2025-08-08 09c1d78e98e01881f5abec85b75b52149b9b35f8
ErrorAnalysis.Service/COMergeCalcService.cs
@@ -39,13 +39,13 @@
            var oilLineCR = oilLineValArr.Skip(_cWinStartIndex).Take(cWinLength).Sum() / oilLineValArr.Sum();
            var oilLineOR = oilLineValArr.Skip(_oWinStartIndex).Take(oWinLength).Sum() / oilLineValArr.Sum();
            var oilLineC = 36d / 160 * oilLineCR * yieldCounting / speed * depth * 0.0762;
            var oilLineO = 36d / 160 * oilLineOR * yieldCounting / speed * depth * 0.0762;
            var oilLineC = 36d / 160d * oilLineCR * yieldCounting / speed * depth * 0.0762d;
            var oilLineO = 36d / 160d * oilLineOR * yieldCounting / speed * depth * 0.0762d;
            var waterLineCR = waterLineValArr.Skip(_cWinStartIndex).Take(cWinLength).Sum() / waterLineValArr.Sum();
            var waterLineOR = waterLineValArr.Skip(_oWinStartIndex).Take(oWinLength).Sum() / waterLineValArr.Sum();
            var waterLineC = 36d / 160 * waterLineCR * yieldCounting / speed * depth * 0.0762;
            var waterLineO = 36d / 160 * waterLineOR * yieldCounting / speed * depth * 0.0762;
            var waterLineC = 36d / 160d * waterLineCR * yieldCounting / speed * depth * 0.0762d;
            var waterLineO = 36d / 160d * waterLineOR * yieldCounting / speed * depth * 0.0762d;
            double cRes = 0, oRes = 0;
            if (sw == 0)
@@ -79,13 +79,13 @@
            var oilLineCR = oilLineValArr.Skip(_cWinStartIndex).Take(cWinLength).Sum() / oilLineValArr.Sum();
            var oilLineOR = oilLineValArr.Skip(_oWinStartIndex).Take(oWinLength).Sum() / oilLineValArr.Sum();
            var oilLineC = (36d / 160) * oilLineCR * yieldCounting / speed * depth * 0.0762;
            var oilLineO = (36d / 160) * oilLineOR * yieldCounting / speed * depth * 0.0762;
            var oilLineC = (36d / 160d) * oilLineCR * yieldCounting / speed * depth * 0.0762d;
            var oilLineO = (36d / 160d) * oilLineOR * yieldCounting / speed * depth * 0.0762d;
            var waterLineCR = waterLineValArr.Skip(_cWinStartIndex).Take(cWinLength).Sum() / waterLineValArr.Sum();
            var waterLineOR = waterLineValArr.Skip(_oWinStartIndex).Take(oWinLength).Sum() / waterLineValArr.Sum();
            var waterLineC = (36d / 160) * waterLineCR * yieldCounting / speed * depth * 0.0762;
            var waterLineO = (36d / 160) * waterLineOR * yieldCounting / speed * depth * 0.0762;
            var waterLineC = (36d / 160d) * waterLineCR * yieldCounting / speed * depth * 0.0762d;
            var waterLineO = (36d / 160d) * waterLineOR * yieldCounting / speed * depth * 0.0762d;
            double cRes = 0, oRes = 0;
            if (sw == 0)