示例#1
0
        //For smooth tube for now;
        public static double deltap_smooth(string[] fluid, double[] composition, double d, double g, double p, double x, double l)
        {
            double Co    = 0.01;
            double f_oil = 0;

            if (x == 1)
            {
                f_oil = 1.0;
            }
            else
            {
                f_oil = 1.15;
            }
            double m_to_ft = 1000 / (12 * 25.4);
            double dp      = 0.0;
            int    phase1  = 1;
            int    phase2  = 2;
            var    r       = new Refrigerant.SATTTotalResult();
            double tsat    = Refrigerant.SATP(fluid, composition, p, phase1).Temperature;

            r = Refrigerant.SATTTotal(fluid, composition, tsat).SATTTotalResult;

            double Re_l = g * d / r.ViscosityL;
            double Re_v = g * d / r.ViscosityV;
            double f_l  = RefrigerantSPDP.ff_Friction(Re_l);
            double f_v  = RefrigerantSPDP.ff_Friction(Re_v);
            double DP_l = f_l * Math.Pow(g, 2.0) / (2 * r.DensityL * d);

            double DP_tp = 0;

            if (x <= 0.8)
            {
                double f_tp = 0.007397899 / (Math.Pow(x, 0.8) * Math.Pow(d * m_to_ft, 0.5));    //"Sacks & Geary"
                DP_tp = f_tp * f_oil * Math.Pow(x * g, 2.0) / (2 * r.DensityV * d);
                dp    = Math.Max(DP_l, DP_tp) * l;
                dp    = dp * 0.001;
            }
            else
            {
                double x_point8      = 0.8;
                double f_tp_x_point8 = 0.007397899 / (Math.Pow(x_point8, 0.8) * Math.Pow(d * m_to_ft, 0.5));  //0.00566
                double DP_tp_point8  = f_tp_x_point8 * f_oil * Math.Pow(x_point8 * g, 2.0) / (2 * r.DensityV * d);
                double x_1           = 1.0;
                double f_tp_x_1      = f_v * (1 + 14.73 * Math.Pow(Co, 0.591958)) / Math.Pow(m_to_ft, 0.5);
                double DP_tp_1       = f_tp_x_1 * f_oil * Math.Pow(x_1 * g, 2.0) / (2 * r.DensityV * d);
                DP_tp = (DP_tp_point8 + (x - 0.8) / (1.0 - 0.8) * (DP_tp_1 - DP_tp_point8)) * l;
                dp    = DP_tp * 0.001;
            }

            return(dp);
        }
示例#2
0
        public static double Shah_Evap_href(string[] fluid, double[] composition, double d, double g, double p, double x, double q, double l)
        {
            var    r = new Refrigerant.SATTTotalResult();
            double temperature;
            int    phase1 = 1;
            int    phase2 = 2;

            temperature = Refrigerant.SATP(fluid, composition, p, phase1).Temperature;
            r           = Refrigerant.SATTTotal(fluid, composition, temperature).SATTTotalResult;
            double Pr_l = r.CpL * r.ViscosityL / r.KL * 1000;

            double h_fg  = r.EnthalpyV - r.EnthalpyL; //"KJ"
            double qflux = q / (l * 3.14159 * d);
            double Bo    = qflux / (g * h_fg);
            double Co    = Math.Pow(1 / x - 1, 0.8) * Math.Pow(r.DensityV / r.DensityL, 0.5);
            double Fr_l  = Math.Pow(g, 2.0) / (Math.Pow(r.DensityL, 2.0) * 9.8 * d);

            double h_LO = 0.023 * Math.Pow(g * (1 - x) * d / r.ViscosityL, 0.8) * Math.Pow(Pr_l, 0.4) * (r.KL / d);
            double h_LT = 0.023 * Math.Pow(g * (1 - 0) * d / r.ViscosityL, 0.8) * Math.Pow(Pr_l, 0.4) * (r.KL / d);

            int    N = 0;
            double f = 0.0;

            if (Fr_l > 0.04)
            {
                N = 0;
            }
            else
            {
                N = 1;
            }
            if (Bo > 0.0011)
            {
                f = 14.7;
            }
            else
            {
                f = 15.43;
            }

            double h1   = 230 * Math.Pow(Bo, 0.5) * h_LO;
            double h2   = 1.8 * Math.Pow(Co * Math.Pow(0.38 * Math.Pow(Fr_l, -0.3), N), -0.8) * h_LO;
            double h3   = f * Math.Pow(Bo, 0.5) * Math.Exp(2.47 * Math.Pow(Co * Math.Pow(0.38 * Math.Pow(Fr_l, -0.3), N), -0.15)) * h_LO;
            double h4   = f * Math.Pow(Bo, 0.5) * Math.Exp(2.74 * Math.Pow(Co * Math.Pow(0.38 * Math.Pow(Fr_l, -0.3), N), -0.1)) * h_LO;
            double h5   = h_LT;
            double href = Math.Max(Math.Max(Math.Max(Math.Max(h1, h2), h3), h4), h5);

            return(href);
        }