Esempio n. 1
0
        void getRes(object sender, RoutedEventArgs e)
        {
            double[]     q        = new double[] { 400, 500, 600 };
            double[]     H        = new double[] { 650, 600, 550 };
            double[]     高程1      = new double[] { 30, 70 };
            double[]     高程2      = new double[] { 30, 120, 70 };
            OilsDAL      oilsDal  = new OilsDAL();
            ComboBoxItem item     = (ComboBoxItem)oils.SelectedItem;
            DataTable    oilsdata = oilsDal.getSingleOilosData(int.Parse(item.Tag + ""));
            Oils         oil      = new Oils()
            {
                //Density = "754",
                Density = oilsdata.Rows[0]["oils_density"] + "",
                //Viscosity = "1.08e-6",
                Viscosity = oilsdata.Rows[0]["oils_viscosity"] + "",
                //OutputByYear = "270",
                OutputByYear = oilsdata.Rows[0]["output_year"] + "",
            };
            PipeDAL pipeDal = new PipeDAL();

            item = (ComboBoxItem)pipe.SelectedItem;
            ProDAL    proDal   = new ProDAL();
            int       proid    = proDal.getNowPro();
            DataTable pipedata = pipeDal.getSinglePipeData(proid, int.Parse(item.Tag + ""));
            Pipe      pip      = new Pipe(1, 1, "", "", "", pipedata.Rows[0]["pipe_length"] + ""
                                          , pipedata.Rows[0]["pipe_outer_diameter"] + "", pipedata.Rows[0]["wall_thickness"] + "", "", "", "", "", "", "", "", "");

            StationPumpPlan fspp1 = new StationPumpPlan(oil, pip, q, H, 高程1, 1,
                                                        double.Parse(当量粗糙度.Text),
                                                        double.Parse(流速.Text),
                                                        3,
                                                        double.Parse(首站进站压力.Text));

            StationPumpPlan fspp2 = new StationPumpPlan(oil, pip, q, H, 高程2, 2,
                                                        double.Parse(当量粗糙度.Text),
                                                        double.Parse(流速.Text),
                                                        3,
                                                        double.Parse(首站进站压力.Text));

            double 总扬程, 总降压, 站间距;
            bool   是否合理;

            DataTable  dt1 = new DataTable();
            DataColumn dc1 = new DataColumn("泵站数", Type.GetType("System.String"));
            DataColumn dc2 = new DataColumn("泵数", Type.GetType("System.String"));
            DataColumn dc3 = new DataColumn("总扬程", Type.GetType("System.String"));
            DataColumn dc4 = new DataColumn("总压降", Type.GetType("System.String"));
            DataColumn dc5 = new DataColumn("站间距", Type.GetType("System.String"));
            DataColumn dc6 = new DataColumn("是否合理", Type.GetType("System.String"));

            dt1.Columns.Add(dc1);
            dt1.Columns.Add(dc2);
            dt1.Columns.Add(dc3);
            dt1.Columns.Add(dc4);
            dt1.Columns.Add(dc5);
            dt1.Columns.Add(dc6);
            站间距 = fspp1.getResult(out 总扬程, out 总降压, out 是否合理);
            Console.WriteLine("一个泵站 两个泵: 总扬程{0}\t总降压{1}\t站间距:{2}\t是否合理:{3}", 总扬程, 总降压, 站间距, 是否合理 ? "合理" : "不合理");
            DataRow dr1 = dt1.NewRow();

            dr1["泵站数"]  = "一个泵站";
            dr1["泵数"]   = "两个泵";
            dr1["总扬程"]  = 总扬程;
            dr1["总压降"]  = 总降压;
            dr1["站间距"]  = 站间距;
            dr1["是否合理"] = 是否合理 ? "合理" : "不合理";
            dt1.Rows.Add(dr1);
            站间距 = fspp2.getResult(out 总扬程, out 总降压, out 是否合理);
            Console.WriteLine("两个泵站 两个泵: 总扬程{0}\t总降压{1}\t站间距:{2}\t是否合理:{3}", 总扬程, 总降压, 站间距, 是否合理 ? "合理" : "不合理");
            DataRow dr2 = dt1.NewRow();

            dr2["泵站数"]  = "两个泵站";
            dr2["泵数"]   = "两个泵";
            dr2["总扬程"]  = 总扬程;
            dr2["总压降"]  = 总降压;
            dr2["站间距"]  = 站间距;
            dr2["是否合理"] = 是否合理 ? "合理" : "不合理";
            dt1.Rows.Add(dr2);
            table.IsReadOnly  = true;
            table.ItemsSource = null;
            table.ItemsSource = dt1.DefaultView;
            resa.Visibility   = Visibility.Visible;
        }
Esempio n. 2
0
        void getRes(object sender, RoutedEventArgs e)
        {
            double[]     q        = new double[] { 400, 500, 600 };
            double[]     H        = new double[] { 650, 600, 550 };
            double[]     起点高程1    = new double[] { 0 };
            double[]     高程1      = new double[] { 30, 70 };
            double[]     高程2      = new double[] { 30, 120, 70 };
            OilsDAL      oilsDal  = new OilsDAL();
            ComboBoxItem item     = (ComboBoxItem)oils.SelectedItem;
            DataTable    oilsdata = oilsDal.getSingleOilosData(int.Parse(item.Tag + ""));
            Oils         oil      = new Oils()
            {
                //Density = "754",
                Density = oilsdata.Rows[0]["oils_density"] + "",
                //Viscosity = "1.08e-6",
                Viscosity = oilsdata.Rows[0]["oils_viscosity"] + "",
                //OutputByYear = "270",
                OutputByYear = oilsdata.Rows[0]["output_year"] + "",
            };
            PipeDAL pipeDal = new PipeDAL();

            item = (ComboBoxItem)pipe.SelectedItem;
            ProDAL    proDal   = new ProDAL();
            int       proid    = proDal.getNowPro();
            DataTable pipedata = pipeDal.getSinglePipeData(proid, int.Parse(item.Tag + ""));
            Pipe      pip      = new Pipe(1, 1, "", "", "", pipedata.Rows[0]["pipe_length"] + ""
                                          , pipedata.Rows[0]["pipe_outer_diameter"] + "", pipedata.Rows[0]["wall_thickness"] + "", "", "", "", "", "", "", "", "");

            DataTable  dt1 = new DataTable();
            DataColumn dc1 = new DataColumn("泵数", Type.GetType("System.String"));
            DataColumn dc2 = new DataColumn("总扬程", Type.GetType("System.String"));
            DataColumn dc3 = new DataColumn("总压降", Type.GetType("System.String"));
            DataColumn dc4 = new DataColumn("末站出站压力", Type.GetType("System.String"));
            DataColumn dc5 = new DataColumn("是否合理", Type.GetType("System.String"));

            dt1.Columns.Add(dc1);
            dt1.Columns.Add(dc2);
            dt1.Columns.Add(dc3);
            dt1.Columns.Add(dc4);
            dt1.Columns.Add(dc5);

            for (int i = 1; i < 5; i++)
            {
                ComboBoxItem    sss  = (ComboBoxItem)泵站.SelectedItem;
                StationPumpPlan fspp = null;

                //public StationPumpPlan(Oils oil, Pipe pipe, double[] 流量q, double[] 扬程H,
                //double[] 管道高程, double 全线泵站数, double 当量粗糙度, double 流速, double 泵数, double 首站进站压力)



                if (sss.Tag.Equals("1"))
                {
                    fspp = new StationPumpPlan(oil, pip, q, H, 高程1, int.Parse(sss.Tag + ""),
                                               double.Parse(当量粗糙度.Text),
                                               double.Parse(流速.Text),
                                               i,
                                               double.Parse(首站进站压力.Text));
                }
                else
                {
                    fspp = new StationPumpPlan(oil, pip, q, H, 高程1, int.Parse(sss.Tag + ""),
                                               double.Parse(当量粗糙度.Text),
                                               double.Parse(流速.Text),
                                               i,
                                               double.Parse(首站进站压力.Text));
                }
                double 总扬程, 总降压, 末站出站压力;
                bool   是否合理;
                fspp.getResult(out 总扬程, out 总降压, out 末站出站压力, out 是否合理);
                DataRow dr1 = dt1.NewRow();
                dr1["泵数"]     = i;
                dr1["总扬程"]    = 总扬程;
                dr1["总压降"]    = 总降压;
                dr1["末站出站压力"] = 末站出站压力;
                dr1["是否合理"]   = 是否合理 ? "合理" : "不合理";
                dt1.Rows.Add(dr1);
            }
            table.IsReadOnly  = true;
            table.ItemsSource = null;
            table.ItemsSource = dt1.DefaultView;
            resa.Visibility   = Visibility.Visible;
        }