/// <summary>冷却塔出口温度設定値を取得する</summary> /// <param name="airState">外気状態</param> /// <returns>冷却塔出口温度設定値</returns> public double GetCoolingWaterTemperature(MoistAir airState) { //乾球温度基準でフリークーリングを起動させる場合 if (OperatingMode == Mode.SwitchWithDBTemp && airState.DryBulbTemperature < FCStartTemperature) return OutletWaterTemperatureFC; //湿球温度基準でフリークーリングを起動させる場合 if (OperatingMode == Mode.SwitchWithWBTemp && airState.WetBulbTemperature < FCStartTemperature) return OutletWaterTemperatureFC; //その他の場合は通常の出口温度制御 return OutletWaterTemperature; }
/// <summary>静的Constructor</summary> static MoistAir() { standardAir = new MoistAir(); standardAir.AtmosphericPressure = ATM; standardAir.dryBulbTemp = 26; standardAir.relativeHumid = 60; standardAir.humidityRatio = fwphi(standardAir.dryBulbTemp, standardAir.relativeHumid, ATM); standardAir.wetBulbTemp = ftwb(standardAir.dryBulbTemp, standardAir.humidityRatio, ATM); standardAir.enthalpy = fhair(standardAir.dryBulbTemp, standardAir.humidityRatio); standardAir.specificVolume = getSpecificVolumeFromDBHR(standardAir.dryBulbTemp, standardAir.humidityRatio, ATM); }
/// <summary>絶対湿度[kg/kg]およびエンタルピー[kJ/kg]から空気状態を計算する</summary> /// <param name="humidityRatio">絶対湿度[kg/kg]</param> /// <param name="enthalpy">エンタルピー[kJ/kg]</param> /// <param name="atm">大気圧[kPa]</param> /// <returns>空気状態</returns> public static MoistAir GetAirStateFromHREN(double humidityRatio, double enthalpy, double atm) { MoistAir mAir = new MoistAir(); mAir.AtmosphericPressure = atm; mAir.HumidityRatio = humidityRatio; mAir.Enthalpy = enthalpy; mAir.DryBulbTemperature = ftdb(humidityRatio, enthalpy); mAir.WetBulbTemperature = ftwb(mAir.DryBulbTemperature, humidityRatio, atm); mAir.RelativeHumidity = fphi(mAir.DryBulbTemperature, humidityRatio, atm); mAir.SpecificVolume = getSpecificVolumeFromDBHR(mAir.DryBulbTemperature, mAir.HumidityRatio, atm); return mAir; }
/// <summary>空気状態をコピーする</summary> /// <param name="air">コピー先の空気</param> public void CopyTo(MoistAir air) { air.AtmosphericPressure = this.AtmosphericPressure; air.DryBulbTemperature = this.DryBulbTemperature; air.WetBulbTemperature = this.WetBulbTemperature; air.HumidityRatio = this.HumidityRatio; air.RelativeHumidity = this.RelativeHumidity; air.Enthalpy = this.Enthalpy; air.SpecificVolume = this.specificVolume; }
/// <summary>乾球温度[C]および湿球温度[C]から空気状態を計算する</summary> /// <param name="dryBulbTemp">乾球温度[C]</param> /// <param name="wetBulbTemp">湿球温度[C]</param> /// <param name="atm">大気圧[kPa]</param> /// <returns>空気状態</returns> public static MoistAir GetAirStateFromDBWB(double dryBulbTemp, double wetBulbTemp, double atm) { MoistAir mAir = new MoistAir(); mAir.AtmosphericPressure = atm; mAir.DryBulbTemperature = dryBulbTemp; mAir.WetBulbTemperature = wetBulbTemp; mAir.HumidityRatio = fwtwb(dryBulbTemp, wetBulbTemp, atm); mAir.Enthalpy = fhair(dryBulbTemp, mAir.HumidityRatio); mAir.RelativeHumidity = fphi(dryBulbTemp, mAir.HumidityRatio, atm); mAir.SpecificVolume = getSpecificVolumeFromDBHR(dryBulbTemp, mAir.HumidityRatio, atm); return mAir; }
/// <summary>湿球温度[C]および相対湿度[%]から空気状態を計算する</summary> /// <param name="wetBulbTemp">湿球温度[C]</param> /// <param name="relativeHumid">相対湿度[%]</param> /// <param name="atm">大気圧[kPa]</param> /// <returns>空気状態</returns> public static MoistAir GetAirStateFromWBRH(double wetBulbTemp, double relativeHumid, double atm) { MoistAir mAir = new MoistAir(); mAir.AtmosphericPressure = atm; mAir.WetBulbTemperature = wetBulbTemp; mAir.RelativeHumidity = relativeHumid; mAir.DryBulbTemperature = fndbrw(relativeHumid, wetBulbTemp, atm); mAir.HumidityRatio = fwphi(mAir.DryBulbTemperature, relativeHumid, atm); mAir.Enthalpy = fhair(mAir.DryBulbTemperature, mAir.HumidityRatio); mAir.SpecificVolume = getSpecificVolumeFromDBHR(mAir.DryBulbTemperature, mAir.HumidityRatio, atm); return mAir; }
/// <summary>湿球温度[C]およびエンタルピー[kJ/kg]から空気状態を計算する</summary> /// <param name="wetBulbTemp">湿球温度[C]</param> /// <param name="enthalpy">エンタルピー[kJ/kg]</param> /// <param name="atm">大気圧[kPa]</param> /// <returns>空気状態</returns> public static MoistAir GetAirStateFromWBEN(double wetBulbTemp, double enthalpy, double atm) { MoistAir mAir = new MoistAir(); mAir.AtmosphericPressure = atm; mAir.WetBulbTemperature = wetBulbTemp; mAir.Enthalpy = enthalpy; mAir.DryBulbTemperature = fndbhw(enthalpy, wetBulbTemp, atm); mAir.HumidityRatio = fwha(mAir.DryBulbTemperature, enthalpy); mAir.RelativeHumidity = fphi(mAir.DryBulbTemperature, mAir.HumidityRatio, atm); mAir.SpecificVolume = getSpecificVolumeFromDBHR(mAir.DryBulbTemperature, mAir.HumidityRatio, atm); return mAir; }
/// <summary>相対湿度[%]およびエンタルピー[kJ/kg]から空気状態を計算する</summary> /// <param name="relativeHumid">相対湿度[%]</param> /// <param name="enthalpy">エンタルピー[kJ/kg]</param> /// <param name="atm">大気圧[kPa]</param> /// <returns>空気状態</returns> public static MoistAir GetAirStateFromRHEN(double relativeHumid, double enthalpy, double atm) { MoistAir mAir = new MoistAir(); mAir.AtmosphericPressure = atm; mAir.Enthalpy = enthalpy; mAir.RelativeHumidity = relativeHumid; mAir.DryBulbTemperature = fndbrh(relativeHumid, enthalpy, atm); mAir.HumidityRatio = fwha(mAir.DryBulbTemperature, enthalpy); mAir.WetBulbTemperature = ftwb(mAir.DryBulbTemperature, mAir.HumidityRatio, atm); mAir.SpecificVolume = getSpecificVolumeFromDBHR(mAir.DryBulbTemperature, mAir.HumidityRatio, atm); return mAir; }
/// <summary>絶対湿度[kg/kg]および相対湿度[%]から空気状態を計算する</summary> /// <param name="humidityRatio">絶対湿度[kg/kg]</param> /// <param name="relativeHumid">相対湿度[%]</param> /// <param name="atm">大気圧[kPa]</param> /// <returns>空気状態</returns> public static MoistAir GetAirStateFromHRRH(double humidityRatio, double relativeHumid, double atm) { if (relativeHumid == 0.0) { //国際化のためのリソースを取得 System.Reflection.Assembly asm = System.Reflection.Assembly.GetExecutingAssembly(); System.Resources.ResourceManager rm = new System.Resources.ResourceManager("Popolo.Utility.Properties.Resources", asm); throw new InputValueOutOfRangeException(rm.GetString("MoistAIr_RelativeHumidity_Error1"), 100.0, 0.0, 0.0); } MoistAir mAir = new MoistAir(); mAir.AtmosphericPressure = atm; mAir.HumidityRatio = humidityRatio; mAir.RelativeHumidity = relativeHumid; double ps = fpww(humidityRatio, atm) / relativeHumid * 100; mAir.DryBulbTemperature = ftpws(ps); mAir.WetBulbTemperature = ftwb(mAir.DryBulbTemperature, humidityRatio, atm); mAir.Enthalpy = fhair(mAir.DryBulbTemperature, humidityRatio); mAir.SpecificVolume = getSpecificVolumeFromDBHR(mAir.DryBulbTemperature, mAir.HumidityRatio, atm); return mAir; }
private static void sample2_1() { //Creating instance of MoistAir class MoistAir mAir = new MoistAir(); //Set values to property mAir.DryBulbTemperature = 25.6; mAir.HumidityRatio = 0.018; mAir.RelativeHumidity = 50.0; mAir.WetBulbTemperature = 22; mAir.SpecificVolume = 0.86; mAir.Enthalpy = 58.0; mAir.AtmosphericPressure = 101.325; //Output values of properties Console.WriteLine("Drybulb Temperature:" + mAir.DryBulbTemperature); Console.WriteLine("Absolute Humidity:" + mAir.HumidityRatio); Console.WriteLine("Relative Humidity:" + mAir.RelativeHumidity); Console.WriteLine("Wetbulb Temperature:" + mAir.WetBulbTemperature); Console.WriteLine("Specific Volume:" + mAir.SpecificVolume); Console.WriteLine("Enthalpy:" + mAir.Enthalpy); Console.WriteLine("Atmospheric Pressure:" + mAir.AtmosphericPressure); Console.Read(); }