예제 #1
0
파일: JS.cs 프로젝트: lijia7436/ZIZHENG
        public DataTable SS_2(double j_D45_2, double j_D41_2, double j_I18_2, double j_K9_2, double j_K39_2, double j_D11_2, double j_D9_2, double j_I35_2, double j_I33_2, double j_D29_2, double j_BQ_D27_2, double j_BQ_D58_2, double j_D33_2, double j_D50_2, double j_D39_2, double j_I10_2, double j_I13_2, double j_K11_2, int I18_FLAG,int d17_FLAG,int d18_FLAG)
        {
            D11 = j_D11_2;  //2
            D41 = j_D41_2;  //2
            I18 = j_I18_2;  //2
            I17 = j_I18_2;  //2
            K9  = j_K9_2;    //2
               // D18 = j_D9_2;   //2
            D9  = j_D9_2;    //2
            I35 = j_I35_2;  //2
            I33 = j_I33_2;  //2
            I9  = j_K9_2;    //2
            K9  = j_K9_2;    //2
               //     D17 = j_D11_2.ToString();
            D29 = j_D29_2;
            I10 = j_I10_2;
            I13 = j_I13_2;
            K11 = j_K11_2;

            //D26 = D27_2;

            //D58 = D58_2;

            //K39
            //D27 = D27_2;
            //D58_2
            //D33_2
            //D50_2

            //好氧区
            I26 = Math.Round(0.47 * System.Math.Exp(0.098 * (D8 - 15)) * G7 / (G7 + 1), 5);
            I27 = Math.Round(1 / I26, 5);
            I28 = Math.Round(3 * I27, 5);
            if (I28 > 25)
            {
                D26 = System.Math.Ceiling(I28);
            }
            else
            {
                D26 = 25;
            }
            D30 = Math.Round(I18 / D26, 5);
            //D29 = Math.Round(D26 / I18 * (I18 + D41), 5);
            D29 = D29_2;
            D10 = Math.Round(D1 * (G4 - G7) / 1000 / D9, 5);
            D33 = Math.Round(I33 * System.Math.Pow(1.04, D8 - 20), 5);
            D12 = Math.Round(D32 / (1 + D33 * D29), 5);
            if (2.86 * (G4 - F7) / (1 - 1.42 * D12) > 0) { D13 = Math.Round(2.86 * (G4 - F7) / (1 - 1.42 * D12), 5); }
            else { D13 = 0; }

            /*
            //----处理关于修正后不对的·问题
            if (C4 <= 500)
            {
                D11 = 1.5;
            }
            else if (C4 > 500 && C4 <= 1000)
            {
                D11 = 2;
            }
            else
            {
                D11 = 3;
            }
             */
            //修正

            D14 = Math.Round(D1 * (C4 - D13 - C7) / 1000 / D11, 5);

            ////---------------------
            //---以下移动位置
            K10 = Math.Round(D1 / K9 * 1000 / 0.9, 5);
            K13 = Math.Round(I13 * K12, 5);
            K14 = Math.Round((0.018 * K11 + 0.6) * I13, 5);

            if (K12 == 1)
            {
                K15 = 2.2;
            }
            else if (K12 == 2)
            {
                K15 = 3.5;
            }
            else
            {
                K15 = 4.5;
            }
            I16 = Math.Round(K14 * K15, 5);
            if (I18_FLAG == 0)
            {
                I17 = System.Math.Max(System.Math.Max(D10, D14), I16);
                //---以上移动位置
                //----------------------------------------------
                I18 = I17;
            }
            else
            {
                I17 = I18;
            }
            I19 = Math.Round(I18 / D1 * 24, 5);
            D15 = Math.Round((C4) / 2 * D1 / 1000 / (I18), 5);

            if (D17 == null)
            {
                D17 = "0.00";
            }
            if (double.Parse(D17).ToString("0.00") == D11.ToString("0.00"))
            {
                if (d17_FLAG != 1)
                {
                    if (D1 * (C4 - C7 - D13) / I18 / 1000 > 0)
                    {

                        D17 = Math.Round((D1 * (C4 - C7 - D13) / I18 / 1000), 5).ToString();
                    }
                    else
                    {
                        D17 = "需投加碳源";
                    }
                }

            }
            else
            {
                D17 = D11.ToString("0.00");
                D17_FLAG = 1;
            }

            if (D18 == D9)
            {
                if(d18_FLAG != 1)
                {
                D18 = Math.Round(D1 * (G4 - G7) / I18 / 1000, 5);
                }

            }
            else
            {
                D18 = D9;
                D18_FLAG = 1;
            }
                ///--修正,覆盖之前数值

            D38 = Math.Round(D32 * D1 * (C4 - C7) / (1 + D33 * D29) / 1000, 5);
            D39 = Math.Round(D37 * D38, 5);
            //D39 = D39_2;
            D22 = Math.Round(D21 * D39 / D1 * 1000 / D37, 5);
            D23 = Math.Round(D20 * I21 * (H4 - H7 - D22) / 31, 5);
            if (D23 <= 0) { D23 = 0; }
            if (D23 == 0)
            {
                D24 = 0;
            }
            else
            {
                D24 = Math.Round(D1 * (I22 * D23 + (I23 - I22 * I24) * (H4 - H7)) / 1000, 5);
            }
            D34 = Math.Round(D1 * D31 * (E4 - E7) / 1000 + D1 * D32 * (C4 - C7) / (1 + D33 * D29) / 1000 + D24, 5);
            D19 = Math.Round(D34 / D30, 5);
            D16 = Math.Round(D15 / D19, 5);

            /****************---以下移动位置
            K10 = Math.Round(D1 / K9 * 1000 / 0.9, 5);
            K13 = Math.Round(I13 * K12, 5);
            K14 = Math.Round((0.018 * K11 + 0.6) * I13, 5);
            I19 = Math.Round(I18 / D1 * 24, 5);
            if (K12 == 1)
            {
                K15 = 2.2;
            }
            else if (K12 == 2)
            {
                K15 = 3.5;
            }
            else
            {
                K15 = 4.5;
            }
            I16 = Math.Round(K14 * K15, 5);
            I17 = System.Math.Max(System.Math.Max(D10, D14), I16);
            //---以上移动位置********************/

            //D25 = 0.00;
            if (D23 * D1 / 1000 / 0.18 < 0)
                D25 = 0;
            else
                D25 = Math.Round(D23 * D1 / 1000 / 0.18, 5);
            D35 = Math.Round(I35 * System.Math.Pow(1.08, D8 - 20), 5);
            D44 = Math.Round(1000 * D41 * D35 * D19 / (F7 - G7) / 24, 5);
            D43 = Math.Round(D44 / D1 * 24, 5);
            D36 = Math.Round(D19 * (D43) / (D43 + 1), 5);
            //D40 = 0;
            if ((0.001 * D1 * (G4 - F7) - D39) / D35 / D19 > 0)
            {
                D40 = Math.Round((0.001 * D1 * (G4 - F7) - D39) / D35 / D19, 5);
            }
            else
            {
                D40 = 0;
            }
            D42 = Math.Round(D41 * 24 / D1, 5);

            /*
            if (D1 > 1000)
            {
                D45 = 0;
            }
            else
            {
                D45 = 10;
            }
             */
            D45 = D45_2;
            D46 = Math.Round(D1 * D45 / 24, 5);
            D50 = 0.6;
            D47 = Math.Round(D46 * D50, 5);
            D48 = D46 + I18 + D41;
            //D49 = D47 + I19 + D42;
            K49 = Math.Round(D49 / H49, 5);
            DataTable dt = new DataTable("TB_SJ");
            dt.Columns.Add("BS", System.Type.GetType("System.String"));
            dt.Columns.Add("WZ", System.Type.GetType("System.String"));
            dt.Columns.Add("SZ", System.Type.GetType("System.String"));

            dt.Rows.Add("SJ", "D1", D1);
            dt.Rows.Add("SJ", "F1", F1);
            dt.Rows.Add("SJ", "D8", D8);
            dt.Rows.Add("SJ", "C4", C4);
            dt.Rows.Add("SJ", "D4", D4);
            dt.Rows.Add("SJ", "E4", E4);
            dt.Rows.Add("SJ", "F4", F4);
            dt.Rows.Add("SJ", "G4", G4);
            dt.Rows.Add("SJ", "H4", H4);
            dt.Rows.Add("SJ", "C7", C7);
            dt.Rows.Add("SJ", "D7", D7);
            dt.Rows.Add("SJ", "E7", E7);
            dt.Rows.Add("SJ", "F7", F7);
            dt.Rows.Add("SJ", "G7", G7);
            dt.Rows.Add("SJ", "H7", H7);
            dt.Rows.Add("SJ", "D9", D9);
            dt.Rows.Add("SJ", "D11", D11);
            dt.Rows.Add("SJ", "I18", I18);
            dt.Rows.Add("SJ", "I26", I26);
            dt.Rows.Add("SJ", "I27", I27);
            dt.Rows.Add("SJ", "I28", I28);
            dt.Rows.Add("SJ", "D26", D26);
            dt.Rows.Add("SJ", "D30", D30);
            dt.Rows.Add("SJ", "D32", D32);
            dt.Rows.Add("SJ", "D31", D31);
            dt.Rows.Add("SJ", "D41", D41);
            dt.Rows.Add("SJ", "D29", D29);
            dt.Rows.Add("SJ", "D10", D10);

            dt.Rows.Add("SJ", "I33", I33);
            dt.Rows.Add("SJ", "D33", D33);
            dt.Rows.Add("SJ", "D12", D12);
            dt.Rows.Add("SJ", "D14", D14);
            dt.Rows.Add("SJ", "D15", D15);
            dt.Rows.Add("SJ", "D17", D17);
            dt.Rows.Add("SJ", "D18", D18);
            dt.Rows.Add("SJ", "D20", D20);
            dt.Rows.Add("SJ", "I21", I21);
            dt.Rows.Add("SJ", "I22", I22);
            dt.Rows.Add("SJ", "I23", I23);
            dt.Rows.Add("SJ", "I24", I24);
            dt.Rows.Add("SJ", "D21", D21);
            dt.Rows.Add("SJ", "D37", D37);
            dt.Rows.Add("SJ", "D38", D38);
            dt.Rows.Add("SJ", "D39", D39);
            dt.Rows.Add("SJ", "D22", D22);
            dt.Rows.Add("SJ", "D23", D23);
            dt.Rows.Add("SJ", "D24", D24);
            dt.Rows.Add("SJ", "D34", D34);
            dt.Rows.Add("SJ", "D19", D19);
            dt.Rows.Add("SJ", "D16", D16);
            dt.Rows.Add("SJ", "K9 ", K9);
            dt.Rows.Add("SJ", "K10", K10);
            dt.Rows.Add("SJ", "K11", K11);
            dt.Rows.Add("SJ", "K12", K12);
            dt.Rows.Add("SJ", "I13", I13);
            dt.Rows.Add("SJ", "K13", K13);
            dt.Rows.Add("SJ", "K14", K14);
            dt.Rows.Add("SJ", "I10", I10);
            dt.Rows.Add("SJ", "I9 ", I9);
            dt.Rows.Add("SJ", "I19", I19);
            dt.Rows.Add("SJ", "K15", K15);
            dt.Rows.Add("SJ", "I16", I16);
            dt.Rows.Add("SJ", "I17", I17);
            dt.Rows.Add("SJ", "D25", D25);
            dt.Rows.Add("SJ", "J21", J21);
            dt.Rows.Add("SJ", "J22", J22);
            dt.Rows.Add("SJ", "J23", J23);
            dt.Rows.Add("SJ", "J24", J24);
            dt.Rows.Add("SJ", "I35", I35);
            dt.Rows.Add("SJ", "D35", D35);
            dt.Rows.Add("SJ", "D44", D44);
            dt.Rows.Add("SJ", "D43", D43);
            dt.Rows.Add("SJ", "D36", D36);
            dt.Rows.Add("SJ", "D40", D40);
            dt.Rows.Add("SJ", "D42", D42);
            dt.Rows.Add("SJ", "D45", D45);
            dt.Rows.Add("SJ", "D46", D46);
            dt.Rows.Add("SJ", "D47", D47);
            dt.Rows.Add("SJ", "D48", D48);
              //  dt.Rows.Add("SJ", "D49", D49);
            dt.Rows.Add("SJ", "H49", H49);
            //dt.Rows.Add("SJ", "D50", D50);
            DataTable dt_bq = new BQJS().BQJS_3(D1, D4, E7, D38, G4, F4, F7, G7, K12, D8, D47, D19, D50, j_BQ_D27_2, j_BQ_D58_2, j_I13_2, j_K11_2, j_D39_2);
            D49 = Convert.ToDouble(dt_bq.Select("BS='BQ' AND WZ='D67'")[0][2]);
            D50 = D49;
            dt.Rows.Add("SJ", "D49", D49);
            dt.Rows.Add("SJ", "D50", D50);
            object[] obj = new object[dt.Columns.Count];
            for (int i = 0; i < dt_bq.Rows.Count; i++)
            {
                dt_bq.Rows[i].ItemArray.CopyTo(obj, 0);
                dt.Rows.Add(obj);
            }
            return dt;
        }
예제 #2
0
파일: JS.cs 프로젝트: lijia7436/ZIZHENG
        /// <summary> 试算
        /// </summary>
        public DataTable SSVo(double I18Vo,double mtl)
        {
            //好氧区
            //D9 = 0.23;
            I18 = I18Vo;//9.36;//预估
            I26 = Math.Round(0.47 * System.Math.Exp(0.098 * (D8 - 15)) * G7 / (G7 + 1),5);
            I27 = Math.Round(1 / I26,5);
            I28 = Math.Round(3 * I27,5);
            if(I28 > 25)
            {
                D26 = System.Math.Ceiling(I28);
            }
            else
            {
                D26 = 25;
            }

            D30 = Math.Round(I18 / D26,5);
            //D32 = 0.4;
            //D31 = 0.25;
            //D41 = 36.31;
            D29 = Math.Round(D26 / I18 * (I18 + D41),5);
            D10 = Math.Round(D1 * (G4 - G7) / 1000 / D9,5);
            //D11 = 1.5;
            //I33 = 0.08;
            D33 = Math.Round(I33 * System.Math.Pow(1.04, D8 - 20),5);
            D12 = Math.Round(D32 / (1 + D33 * D29),5);
            if (2.86 * (G4 - F7) / (1 - 1.42 * D12) > 0) { D13 = Math.Round(2.86 * (G4 - F7) / (1 - 1.42 * D12),5); }
            else { D13 = 0; }
            if (C4 <= 500)
            {
                D11 = 1.5;
            }
            else if (C4 > 500 && C4 <= 1000)
            {
                D11 = 2;
            }
            else
            {
                D11 = 3;
            }
            D14 = Math.Round(D1 * (C4 - D13 - C7) / 1000 / D11,5);
            D15 = Math.Round((C4) / 2 * D1 / 1000 / (I18),5);
            if (D1 * (C4 - C7 - D13) / I18 / 1000 > 0)
            {
                D17 = Math.Round((D1 * (C4 - C7 - D13) / I18 / 1000),5).ToString();
            }
            else
            {
                D17 = "需投加碳源";
            }
            D18 = Math.Round(D1 * (G4 - G7) / I18 / 1000,5);
            //D20 = 1.5;
            //I21 = 56;
            //I22 = 1.91;
            //I23 = 4.87;
            //I24 = 1.81;
            //D21 = 0.02;
            //D37 = 0.12;
            D38 = Math.Round(D32 * D1 * (C4 - C7) / (1 + D33 * D29) / 1000,5);
            D39 = Math.Round(D37 * D38,5);
            D22 = Math.Round(D21 * D39 / D1 * 1000 / D37,5);
            D23 = Math.Round(D20 * I21 * (H4 - H7 - D22) / 31,5);
            if (D23 <= 0) { D23 = 0; }
            if (D23 == 0)
            {
                D24 = 0;
            }
            else
            {
                D24 = Math.Round(D1 * (I22 * D23 + (I23 - I22 * I24) * (H4 - H7)) / 1000,5);
            }
            D34 = Math.Round(D1 * D31 * (E4 - E7) / 1000 + D1 * D32 * (C4 - C7) / (1 + D33 * D29) / 1000 + D24,5);
            D19 = Math.Round(D34 / D30,5);
            D16 = Math.Round(D15 / D19,5);
            //K9 = 400;
            K10 = Math.Round(D1 / K9 * 1000 / 0.9,5);
            //K11 = 20;
            //K12 = 3;
               // I13 = Math.Round(System.Math.Ceiling(K10 / K12 / K11),5);
            K13 = Math.Round(I13 * K12,5);
               // K14 = Math.Round(0.018 * K11 * I13 + 1,5);
            K14 = Math.Round((0.018 * K11 + 0.6) * I13, 5);
               // I10 = Math.Round(K11 * I13 * K12,5);
            if (mtl != 0)
            {
                K9 = mtl;
                I9 = mtl;
            }else
            {
                I9 = Math.Round(D1 / I10 / 0.9 * 1000, 5);
            }

            I19 = Math.Round(I18 / D1 * 24,5);
            if (K12 == 1)
            {
                K15 = 2.2;
            }
            else if (K12 == 2)
            {
                K15 = 3.5;
            }
            else
            {
                K15 = 4.5;
            }
            I16 = Math.Round(K14 * K15,5);
            I17 = System.Math.Max(System.Math.Max(D10, D14), I16);//MAX(D10,D14,I16);
               // D25 = 0.00;
            if (D23 * D1 / 1000 / 0.18 < 0)
                D25 = 0;
            else
                D25 = Math.Round(D23 * D1 / 1000 / 0.18,5);
               // J21 = 27;
               // J22 = 2.89;
               // J23 = 3.94;
               // J24 = 0.87;
               // I35 = 0.03;
            D35 = Math.Round(I35 * System.Math.Pow(1.08, D8 - 20),5);
            D44 = Math.Round(1000 * D41 * D35 * D19 / (F7 - G7) / 24,5);
            D43 = Math.Round(D44 / D1 * 24,5);
            D36 = Math.Round(D19 * (D43) / (D43 + 1),5);
            //D40 = 0;
            if ((0.001 * D1 * (G4 - F7) - D39) / D35 / D19 > 0)
            {
                D40 = Math.Round((0.001 * D1 * (G4 - F7) - D39) / D35 / D19,5);
            }
            else
            {
                D40 = 0;
            }
            D42 = Math.Round(D41 * 24 / D1,5);
               // D45 = 0;
            if (D1 > 1000)
            {
                D45 = 0;
            }
            else
            {
                D45 = 10;
            }
            D46 = Math.Round(D1 * D45 / 24,5);
            D50 = 0.6;
            D47 = Math.Round(D46 * D50,5);
            D48 = D46 + I18 + D41;
            //D49 = 0;//曝气量计算!D67
            //H49 = 1;
            //D49 = D47 + I19 + D42;
            K49 = Math.Round(D49 / H49,5);

            DataTable dt = new DataTable("TB_SJ");
            dt.Columns.Add("BS", System.Type.GetType("System.String"));
            dt.Columns.Add("WZ", System.Type.GetType("System.String"));
            dt.Columns.Add("SZ", System.Type.GetType("System.String"));

            dt.Rows.Add("SJ", "D1", D1);
            dt.Rows.Add("SJ", "F1", F1);
            dt.Rows.Add("SJ", "D8", D8);
            dt.Rows.Add("SJ", "C4", C4);
            dt.Rows.Add("SJ", "D4", D4);
            dt.Rows.Add("SJ", "E4", E4);
            dt.Rows.Add("SJ", "F4", F4);
            dt.Rows.Add("SJ", "G4", G4);
            dt.Rows.Add("SJ", "H4", H4);
            dt.Rows.Add("SJ", "C7", C7);
            dt.Rows.Add("SJ", "D7", D7);
            dt.Rows.Add("SJ", "E7", E7);
            dt.Rows.Add("SJ", "F7", F7);
            dt.Rows.Add("SJ", "G7", G7);
            dt.Rows.Add("SJ", "H7", H7);
            dt.Rows.Add("SJ", "D9", D9);
            dt.Rows.Add("SJ", "D11", D11);

            dt.Rows.Add("SJ", "I18", I18);
            dt.Rows.Add("SJ", "I26", I26);
            dt.Rows.Add("SJ", "I27", I27);
            dt.Rows.Add("SJ", "I28", I28);
            dt.Rows.Add("SJ", "D26", D26);
            dt.Rows.Add("SJ", "D30", D30);
            dt.Rows.Add("SJ", "D32", D32);
            dt.Rows.Add("SJ", "D31", D31);
            dt.Rows.Add("SJ", "D41", D41);
            dt.Rows.Add("SJ", "D29", D29);
            dt.Rows.Add("SJ", "D10", D10);

            dt.Rows.Add("SJ", "I33", I33);
            dt.Rows.Add("SJ", "D33", D33);
            dt.Rows.Add("SJ", "D12", D12);
            dt.Rows.Add("SJ", "D14", D14);
            dt.Rows.Add("SJ", "D15", D15);
            dt.Rows.Add("SJ", "D17", D17);
            dt.Rows.Add("SJ", "D18", D18);
            dt.Rows.Add("SJ", "D20", D20);
            dt.Rows.Add("SJ", "I21", I21);
            dt.Rows.Add("SJ", "I22", I22);
            dt.Rows.Add("SJ", "I23", I23);
            dt.Rows.Add("SJ", "I24", I24);
            dt.Rows.Add("SJ", "D21", D21);
            dt.Rows.Add("SJ", "D37", D37);
            dt.Rows.Add("SJ", "D38", D38);
            dt.Rows.Add("SJ", "D39", D39);
            dt.Rows.Add("SJ", "D22", D22);
            dt.Rows.Add("SJ", "D23", D23);
            dt.Rows.Add("SJ", "D24", D24);
            dt.Rows.Add("SJ", "D34", D34);
            dt.Rows.Add("SJ", "D19", D19);
            dt.Rows.Add("SJ", "D16", D16);
            dt.Rows.Add("SJ", "K9 ", K9);
            dt.Rows.Add("SJ", "K10", K10);
            dt.Rows.Add("SJ", "K11", K11);
            dt.Rows.Add("SJ", "K12", K12);
            dt.Rows.Add("SJ", "I13", I13);
            dt.Rows.Add("SJ", "K13", K13);
            dt.Rows.Add("SJ", "K14", K14);
            dt.Rows.Add("SJ", "I10", I10);
            dt.Rows.Add("SJ", "I9 ", I9);
            dt.Rows.Add("SJ", "I19", I19);
            dt.Rows.Add("SJ", "K15", K15);
            dt.Rows.Add("SJ", "I16", I16);
            dt.Rows.Add("SJ", "I17", I17);
            dt.Rows.Add("SJ", "D25", D25);
            dt.Rows.Add("SJ", "J21", J21);
            dt.Rows.Add("SJ", "J22", J22);
            dt.Rows.Add("SJ", "J23", J23);
            dt.Rows.Add("SJ", "J24", J24);
            dt.Rows.Add("SJ", "I35", I35);
            dt.Rows.Add("SJ", "D35", D35);
            dt.Rows.Add("SJ", "D44", D44);
            dt.Rows.Add("SJ", "D43", D43);
            dt.Rows.Add("SJ", "D36", D36);
            dt.Rows.Add("SJ", "D40", D40);
            dt.Rows.Add("SJ", "D42", D42);
            dt.Rows.Add("SJ", "D45", D45);
            dt.Rows.Add("SJ", "D46", D46);
            dt.Rows.Add("SJ", "D47", D47);
            dt.Rows.Add("SJ", "D48", D48);
            dt.Rows.Add("SJ", "H49", H49);
               // dt.Rows.Add("SJ", "D50", D50);
            DataTable dt_bq = new BQJS().BQJS_2(D1, D4, E7, D38, G4, F4, F7, G7, K12, D8, D47,D19,D50,I13,K11);
            D49 = Convert.ToDouble(dt_bq.Select("BS='BQ' AND WZ='D67'")[0][2]);
            dt.Rows.Add("SJ", "D49", D49);
            D50 = D49;
            dt.Rows.Add("SJ", "D50", D50);
            object[] obj = new object[dt.Columns.Count];
            for (int i = 0; i < dt_bq.Rows.Count; i++)
            {
                dt_bq.Rows[i].ItemArray.CopyTo(obj, 0);
                dt.Rows.Add(obj);
            }
            return dt;
        }