예제 #1
0
        public double GetEvaporationHeat(double temperature)
        {
            if (temperature < minimumTemperature)
            {
                throw new IllegalVarValueException("Temperature out of range.");
            }

            temperature = GetModifiedTemperature(temperature);

            //double n = n1;
            //if (temperature > 563.15 && temperature <= tc) {
            //   n = n2;
            //}
            //double c = Math.Pow((tc-temperature)/(tc-t0), n);
            //return r0 * Math.Pow((tc-temperature)/(tc-t0), n);
            //this correlation comes from Perry's Chemical Engineers Handbook, 6th edition
            //double tr = temperature/PropConstants.Tc;
            //double tempValue = 0.3199 - 0.212 * tr + 0.25795 * tr * tr;
            //double r = 5.2053e7/18.015 * Math.Pow((1-tr), tempValue);
            //return r;
            //double r = ThermalPropCalculator.CalculateEvaporationHeat(temperature, criticalTemperature, evapHeatCoeffs);
            double r = thermalPropCalculator.CalculateEvaporationHeat(temperature, moisture);

            //return r / molarWeight;
            return(r);
        }