diff --git a/idd/Energy+.idd.in b/idd/Energy+.idd.in index 730310c5d3e..ef05797bb54 100644 --- a/idd/Energy+.idd.in +++ b/idd/Energy+.idd.in @@ -19965,6 +19965,7 @@ ElectricEquipment:ITE:AirCooled, \required-field \type object-list \object-list BiVariateCurves + \object-list BiVariateTables \note The name of a two-variable curve or table lookup object which modifies the CPU power \note input as a function of CPU loading (x) and air inlet node temperature (y). \note This curve (table) should equal 1.0 at design conditions (CPU loading = 1.0 and @@ -19985,6 +19986,7 @@ ElectricEquipment:ITE:AirCooled, \required-field \type object-list \object-list BiVariateCurves + \object-list BiVariateTables \note The name of a two-variable curve or table lookup object which modifies the cooling \note air flow rate as a function of CPU loading (x) and air inlet node temperature (y). \note This curve (table) should equal 1.0 at design conditions (CPU loading = 1.0 and @@ -19993,6 +19995,7 @@ ElectricEquipment:ITE:AirCooled, \required-field \type object-list \object-list UniVariateCurves + \object-list UniVariateTables \note The name of a single-variable curve or table lookup object which modifies the cooling \note fan power as a function of flow fraction (x). \note This curve (table) should equal 1.0 at a flow fraction of 1.0. @@ -20049,6 +20052,7 @@ ElectricEquipment:ITE:AirCooled, A14, \field Recirculation Function of Loading and Supply Temperature Curve Name \type object-list \object-list BiVariateCurves + \object-list BiVariateTables \note The name of a two-variable curve or table lookup object which modifies the recirculation \note fractionas a function of CPU loading (x) and supply air node temperature (y). \note This curve (table) should equal 1.0 at design conditions (CPU loading = 1.0 and @@ -20063,13 +20067,12 @@ ElectricEquipment:ITE:AirCooled, \default 1.0 A15, \field Electric Power Supply Efficiency Function of Part Load Ratio Curve Name \type object-list - \object-list BiVariateCurves - \note The name of a two-variable curve or table lookup object which modifies the recirculation - \note fractionas a function of CPU loading (x) and supply air node temperature (y). - \note This curve (table) should equal 1.0 at design conditions (CPU loading = 1.0 and - \note Design Entering Air Temperature).This field is used only if the - \note Air Node Connection Type = AdjustedSupply. If this curve is left blank, then the curve - \note is assumed to always equal 1.0. + \object-list UniVariateCurves + \object-list UniVariateTables + \note The name of a single-variable curve or table lookup object which modifies the electric + \note power supply efficiency as a function of part-load ratio (x). + \note This curve (table) should equal 1.0 at full load (PLR = 1.0). + \note If this curve is left blank, then the curve is assumed to always equal 1.0. N9 , \field Fraction of Electric Power Supply Losses to Zone \note Fraction of the electric power supply losses which are a heat gain to the zone \note If this field is <1.0, the remainder of the losses are assumed to be lost to the outdoors. @@ -40583,14 +40586,21 @@ Coil:Cooling:DX:SingleSpeed, \note wb = entering wet-bulb temperature seen by the DX cooling coil (C) \note db = entering dry-bulb temperature seen by the DX cooling coil (C) \note entering temperature can be outside air or pretreated air. - A16; \field Sensible Heat Ratio Function of Flow Fraction Curve Name + A16, \field Sensible Heat Ratio Function of Flow Fraction Curve Name \type object-list \object-list QuadraticCubicCurves \object-list UniVariateTables \note quadratic curve = a + b*ff + c*ff**2 \note cubic curve = a + b*ff + c*ff**2 + d*ff**3 \note ff = fraction of the full load flow - + A17; \field Report ASHRAE Standard 127 Performance Ratings + \type choice + \key Yes + \key No + \default No + \note when this input field is specified as Yes then the program calculates the net cooling + \note capacity and total electric power input of DX cooling coils per ANSI/ASHRAE 127. + Coil:Cooling:DX:TwoSpeed, \memo Direct expansion (DX) cooling coil and condensing unit (includes electric compressor \memo and condenser fan), two-speed (or variable-speed). Requires two sets of performance @@ -48021,54 +48031,158 @@ EvaporativeCooler:Indirect:ResearchSpecial, \note If this field is blank, the system is always available. \type object-list \object-list ScheduleNames - N1 , \field Cooler Maximum Effectiveness + N1 , \field Cooler Wetbulb Design Effectiveness \type real + \note wet operation effectiveness with respect to wetbulb depression + \note this is the nominal design wetbulb effectiveness at design air flow rates and water rate \minimum 0.0 \maximum 2.0 - N2 , \field Cooler Flow Ratio + A3 , \field Wetbulb Effectiveness Flow Ratio Modifier Curve Name + \note this curve modifies the wetbulb effectiveness in the previous field (eff_wb_design) + \note by multiplying the value by the result of this curve, eff_wb = eff_wb_design * func(HXFlowRatio) + \note x = HXFlowRatio = sum of the primary and secondary flow rates divided by the sum of the design flow rates + \type object-list + \object-list AllCurves + \note Any curve or table with one independent variable can be used: + \note Curve:Linear, Curve:Quadratic, Curve:Cubic, Curve:Quartic, Curve:Exponent, + \note Curve:ExponentialSkewNormal, Curve:Sigmoid, Curve:RectuangularHyperbola1, + \note Curve:RectangularHyperbola2, Curve:ExponentialDecay, Curve:DoubleExponentialDecay, + \note Table:OneIndependentVariable + N2 , \field Cooler Drybulb Design Effectiveness \type real - N3 , \field Recirculating Water Pump Power Consumption + \note dry operation effectiveness with respect to drybulb temperature difference + \note this is the nominal design dryblub effectiveness at design air flow rates, no evaporation water active + \minimum 0.0 + A4 , \field Drybulb Effectiveness Flow Ratio Modifier Curve Name + \note this curve modifies the drybulb effectiveness in the previous field (eff_db_design) + \note by multiplying the value by the result of this curve, eff_db = eff_db_design * f(HXFlowRatio) + \note x = HXFlowRatio = sum of the primary and secondary flow rates divided by the sum of the design flow rates + \type object-list + \object-list AllCurves + \note Any curve or table with one independent variable can be used: + \note Curve:Linear, Curve:Quadratic, Curve:Cubic, Curve:Quartic, Curve:Exponent, + \note Curve:ExponentialSkewNormal, Curve:Sigmoid, Curve:RectuangularHyperbola1, + \note Curve:RectangularHyperbola2, Curve:ExponentialDecay, Curve:DoubleExponentialDecay, + \note Table:OneIndependentVariable + N3 , \field Recirculating Water Pump Design Power \units W \ip-units W - N4 , \field Secondary Fan Flow Rate - \units m3/s - \minimum 0.0 + \note This is the nominal design pump power of water recirculation and spray for evaporation at design air flow + \note rates and cooler design effectiveness \autosizable - N5 , \field Secondary Fan Total Efficiency + N4 , \field Water Pump Power Sizing Factor \type real + \units W/(m3/s) + \note this field is used when the previous field is set to autosize. The pump power is scaled with Secondary Design Air Flow Rate + A5 , \field Water Pump Power Modifier Curve Name + \note this curve modifies the pump power in the previous field by multiplying the design power by the result of this curve. + \note x = ff = flow fraction on the secondary side, secondary air flow rate during operation divided by Secondary Design Air Flow Rate + \type object-list + \object-list AllCurves + \note Any curve or table with one independent variable can be used: + \note Curve:Linear, Curve:Quadratic, Curve:Cubic, Curve:Quartic, Curve:Exponent, + \note Curve:ExponentialSkewNormal, Curve:Sigmoid, Curve:RectuangularHyperbola1, + \note Curve:RectangularHyperbola2, Curve:ExponentialDecay, Curve:DoubleExponentialDecay, + \note Table:OneIndependentVariable + N5 , \field Secondary Air Design Flow Rate + \type real + \units m3/s \minimum> 0.0 - \maximum 1.0 - N6 , \field Secondary Fan Delta Pressure - \units Pa - \minimum 0.0 - \ip-units inH2O - A3 , \field Primary Air Inlet Node Name + \autosizable + N6 , \field Secondary Air Flow Scaling Factor + \type real + \units dimensionless + \note This field is used when the previous field is set to autoize. The Primary Design Air Flow Rate is scaled using this factor + \note to calculate the secondary design air flow rate. + N7 , \field Secondary Air Fan Design Power + \type real + \units W + \note This is the fan power at Secondary Design Air Flow Rate + \note this is the nominal design power at full speed. + \autosizable + N8 , \field Secondary Air Fan Sizing Specific Power + \type real + \units W/(m3/s) + \note this field is used when the previous field is set to autosize. The fan power is scaled with Secondary Design Air Flow Rate + A6 , \field Secondary Air Fan Power Modifier Curve Name + \note this curve modifies the design fan power in the previous field by multiplying the value by the result + \note of this curve. It should have a value of 1.0 at a x = 1.0. + \note x = ff = flow fraction on the secondary side, secondary air flow rate during operation divided by Secondary Design Air Flow Rate + \type object-list + \object-list AllCurves + \note Any curve or table with one independent variable can be used: + \note Curve:Linear, Curve:Quadratic, Curve:Cubic, Curve:Quartic, Curve:Exponent, + \note Curve:ExponentialSkewNormal, Curve:Sigmoid, Curve:RectuangularHyperbola1, + \note Curve:RectangularHyperbola2, Curve:ExponentialDecay, Curve:DoubleExponentialDecay, + \note Table:OneIndependentVariable + A7 , \field Primary Air Inlet Node Name \type node - A4 , \field Primary Air Outlet Node Name + A8 , \field Primary Air Outlet Node Name \type node - A5 , \field Control Type - N7 , \field Dewpoint Effectiveness Factor - A6 , \field Secondary Air Inlet Node Name + N9 , \field Primary Design Air Flow Rate + \type real + \units m3/s + \minimum> 0.0 + \autosizable + N10, \field Dewpoint Effectiveness Factor + A9 , \field Secondary Air Inlet Node Name \type node - A7 , \field Sensor Node Name + A10, \field Secondary Air Outlet Node Name + \type node + A11, \field Sensor Node Name \type node - A8 , \field Relief Air Inlet Node Name + A12, \field Relief Air Inlet Node Name \type node - A9 , \field Water Supply Storage Tank Name + A13, \field Water Supply Storage Tank Name \type object-list \object-list WaterStorageTankNames - N8 , \field Drift Loss Fraction + N11, \field Drift Loss Fraction \type real \minimum 0.0 \note Rate of drift loss as a fraction of evaporated water flow rate - N9 ; \field Blowdown Concentration Ratio + N12, \field Blowdown Concentration Ratio \type real \minimum 2.0 \note Characterizes the rate of blowdown in the evaporative cooler. - \note Blowdown is water intentionally drained from the cooler in order to offset the build up - \note of solids in the water that would otherwise occur because of evaporation. + \note Blowdown is water intentionally drained from the cooler in order to offset the build + \note up of solids in the water that would otherwise occur because of evaporation. \note Ratio of solids in the blowdown water to solids in the make up water. \note A typical value is 3. If left blank then there is no blowdown. + N13, \field Evaporative Operation Minimum Limit Secondary Air Drybulb Temperature + \type real + \note This input field value defines the secondary air inlet node drybulb temperature + \note limits in degreeCelsius. When the secondary side entering air dry bulb temperature + \note drops below this limit, then the evaporative cooler operation mode changes to dry + \note heat exchanger. Users specify their own limits. If this field is left blank, then + \note there is no drybulb temperature lower limit for evaporative cooler operation. If + \note operating range control is desired then this input field and the next two input + \note fields should be specified or all the three should be left blank or left out. If + \note no minimum drybulb temperature limit is desired while there are maximum drybulb + \note and wetbulb temperature limits then specify very low minimum temperature limit + \note value (e.g. -99.0C). + N14, \field Evaporative Operation Maximum Limit Outdoor Wetbulb Temperature + \type real + \note This input field value defines the secondary air inlet node wetbulb temperature + \note limits in degree Celsius. When the secondary side entering air wet bulb temperature + \note exceeds this limit, then the evaporative cooler urns off and does not attempt to do + \note any cooling. If this field is left blank, then there is no wetbulb temperature + \note upper limit for evaporative cooler wet operation mode. If this input field is left + \note blank then, the previous and the next input fields should also be left blank. If no + \note maximum wetbulb temperature limits is desired while there are minimum drybulb and + \note maximum drybulb upper temperature limits then specify very high maximum wetbulb + \note temperature limit value (e.g. 99.0 C). + N15; \field Dry Operation Maximum Limit Outdoor Drybulb Temperature + \type real + \note This input field value defines the secondary air inlet node drybulb temperature + \note limits in degree Celsius. When the secondary side entering air drybulb temperature + \note exceeds this limit, then the evaporative cooler will not run in dry operation mode + \note or may be turned off depending on its wetbulb temperature. If this field is left + \note blank, then there is no drybulb temperature maximum limit for evaporative cooler + \note operation. If this input field is left blank then, the previous and the next input + \note fields should also be left blank. If no maximum drybulb temperature limit is + \note desired while there are minimum drybulb and maximum wetbulb upper temperature + \note limits then specify very high maximum drybulb temperature limit value (e.g. 99.0 C). + EvaporativeCooler:Direct:ResearchSpecial, \memo Direct evaporative cooler with user-specified effectiveness (can represent rigid pad @@ -48082,29 +48196,60 @@ EvaporativeCooler:Direct:ResearchSpecial, \note If this field is blank, the system is always available. \type object-list \object-list ScheduleNames - N1 , \field Cooler Effectiveness + N1 , \field Cooler Design Effectiveness \note effectiveness with respect to wet-bulb depression \type real \minimum 0.0 \maximum 1.0 - N2 , \field Recirculating Water Pump Power Consumption + A3 , \field Effectiveness Flow Ratio Modifier Curve Name + \note this curve modifies the design effectiveness in the previous field + \note by multiplying the value by the result of this curve. The effectiveness flow modifier curve + \note is a function of flow fraction. Flow fraction is the ratio of current primary air flow rate to + \note the primary air design flow rate. If this input field is left blank then, the effectiveness + \note is assumed to be constant. + \type object-list + \object-list AllCurves + \note Any curve or table with one independent variable can be used: + \note Curve:Linear, Curve:Quadratic, Curve:Cubic, Curve:Quartic, Curve:Exponent, + \note Curve:ExponentialSkewNormal, Curve:Sigmoid, Curve:RectuangularHyperbola1, + \note Curve:RectangularHyperbola2, Curve:ExponentialDecay, Curve:DoubleExponentialDecay, + \note Table:OneIndependentVariable + N2 , \field Recirculating Water Pump Design Power \units W \ip-units W - \minimum 0.0 - A3 , \field Air Inlet Node Name + \minimum 0.0 + \note This is the design water pump or spray for evaporation at the primary air design air flow rates + \note and cooler design effectiveness + \autosizable + N3 , \field Water Pump Power Sizing Factor + \type real + \units W/(m3/s) + \note this field is used when the previous field is set to autosize. The pump power is scaled with Primary Air Design Air Flow Rate + A4 , \field Water Pump Power Modifier Curve Name + \note this curve modifies the pump power in the previous field by multiplying the design power by the result of this curve. + \note x = ff = flow fraction on the primary air. The flow fraction is the secondary air flow rate during current operation divided + \note by Primary Air Design Flow Rate + \type object-list + \object-list AllCurves + \note Any curve or table with one independent variable can be used: + \note Curve:Linear, Curve:Quadratic, Curve:Cubic, Curve:Quartic, Curve:Exponent, + \note Curve:ExponentialSkewNormal, Curve:Sigmoid, Curve:RectuangularHyperbola1, + \note Curve:RectangularHyperbola2, Curve:ExponentialDecay, Curve:DoubleExponentialDecay, + \note Table:OneIndependentVariable + A5 , \field Air Inlet Node Name \type node - A4 , \field Air Outlet Node Name + A6 , \field Air Outlet Node Name \type node - A5 , \field Sensor Node Name + A7 , \field Sensor Node Name \type node - A6 , \field Water Supply Storage Tank Name + A8 , \field Water Supply Storage Tank Name \type object-list \object-list WaterStorageTankNames - N3 , \field Drift Loss Fraction + N4 , \field Drift Loss Fraction \type real \minimum 0.0 \note Rate of drift loss as a fraction of evaporated water flow rate - N4 ; \field Blowdown Concentration Ratio + N5 , \field Blowdown Concentration Ratio \type real \minimum 2.0 \note Characterizes the rate of blowdown in the evaporative cooler. @@ -48112,6 +48257,29 @@ EvaporativeCooler:Direct:ResearchSpecial, \note of solids in the water that would otherwise occur because of evaporation. \note Ratio of solids in the blowdown water to solids in the make up water. \note A typical value is 3. If left blank then there is no blowdown. + N6 , \field Evaporative Operation Minimum Drybulb Temperature + \type real + \minimum -99.0 + \note This numeric field defines the evaporative cooler air inlet node drybulb temperature minimum + \note limit in degrees Celsius. The evaporative cooler will be turned off when the evaporator cooler + \note air inlet node dry-bulb temperature falls below this limit. The typical minimum value is 16°C. Users + \note are allowed to specify their own limits. If this field is left blank, then there is no drybulb lower + \note temperature limit for evaporative cooler operation. + N7 , \field Evaporative Operation Maximum Limit Wetbulb Temperature + \type real + \note when outdoor wetbulb temperature rises above this limit the cooler shuts down. + \note This numeric field defines the evaporative cooler air inlet node wet-bulb temperature maximum + \note limit in degrees Celsius. The evaporative cooler will be turned off when the evaporative cooler + \note air inlet node wet-bulb temperature exceeds this limit. The typical maximum value is 24°C. Users + \note are allowed to specify their own limits. If this field is left blank, then there is no upper + \note wetbulb temperature limit for evaporative cooler operation. + N8 ; \field Evaporative Operation Maximum Limit Drybulb Temperature + \type real + \note This numeric field defines the evaporative cooler air inlet node dry-bulb temperature maximum + \note limit in degrees Celsius. The evaporative cooler will be turned off when its air inlet node + \note drybulb temperature exceeds this limit. The typical maximum value is 26°C. Users + \note are allowed to specify their own limits. If this field is left blank, then there is no upper + \note temperature limit for evaporative cooler operation. \group Humidifiers and Dehumidifiers diff --git a/src/EnergyPlus/DXCoils.cc b/src/EnergyPlus/DXCoils.cc index e124050b758..4818dce9aeb 100644 --- a/src/EnergyPlus/DXCoils.cc +++ b/src/EnergyPlus/DXCoils.cc @@ -1390,6 +1390,16 @@ namespace DXCoils { if ( DXCoil( DXCoilNum ).SHRFTemp( 1 ) > 0 && DXCoil( DXCoilNum ).SHRFFlow( 1 ) > 0 ) { DXCoil( DXCoilNum ).UserSHRCurveExists = true; } + // get User Input flag for ASHRAE Standard 127 Standard Ratings Reporting + if ( lAlphaBlanks( 17 ) ) { + DXCoil( DXCoilNum ).ASHRAE127StdRprt = false; + } else { + if ( Alphas( 17 ) == "YES" || Alphas( 17 ) == "Yes" ) { + DXCoil( DXCoilNum ).ASHRAE127StdRprt = true; + } else { + DXCoil( DXCoilNum ).ASHRAE127StdRprt = false; + } + } } // end of the Doe2 DX coil loop @@ -6022,7 +6032,7 @@ namespace DXCoils { // Call routine that computes AHRI certified rating for single-speed DX Coils if ( ( DXCoil( DXCoilNum ).DXCoilType_Num == CoilDX_CoolingSingleSpeed && DXCoil( DXCoilNum ).CondenserType( 1 ) == AirCooled ) || DXCoil( DXCoilNum ).DXCoilType_Num == CoilDX_HeatingEmpirical ) { - CalcDXCoilStandardRating( DXCoil( DXCoilNum ).Name, DXCoil( DXCoilNum ).DXCoilType, DXCoil( DXCoilNum ).DXCoilType_Num, 1, DXCoil( DXCoilNum ).RatedTotCap( 1 ), DXCoil( DXCoilNum ).RatedCOP( 1 ), DXCoil( DXCoilNum ).CCapFFlow( 1 ), DXCoil( DXCoilNum ).CCapFTemp( 1 ), DXCoil( DXCoilNum ).EIRFFlow( 1 ), DXCoil( DXCoilNum ).EIRFTemp( 1 ), DXCoil( DXCoilNum ).PLFFPLR( 1 ), DXCoil( DXCoilNum ).RatedAirVolFlowRate( 1 ), DXCoil( DXCoilNum ).FanPowerPerEvapAirFlowRate( 1 ), DXCoil( DXCoilNum ).RegionNum, DXCoil( DXCoilNum ).MinOATCompressor, DXCoil( DXCoilNum ).OATempCompressorOn, DXCoil( DXCoilNum ).OATempCompressorOnOffBlank, DXCoil( DXCoilNum ).DefrostControl ); + CalcDXCoilStandardRating( DXCoil( DXCoilNum ).Name, DXCoil( DXCoilNum ).DXCoilType, DXCoil( DXCoilNum ).DXCoilType_Num, 1, DXCoil( DXCoilNum ).RatedTotCap( 1 ), DXCoil( DXCoilNum ).RatedCOP( 1 ), DXCoil( DXCoilNum ).CCapFFlow( 1 ), DXCoil( DXCoilNum ).CCapFTemp( 1 ), DXCoil( DXCoilNum ).EIRFFlow( 1 ), DXCoil( DXCoilNum ).EIRFTemp( 1 ), DXCoil( DXCoilNum ).PLFFPLR( 1 ), DXCoil( DXCoilNum ).RatedAirVolFlowRate( 1 ), DXCoil( DXCoilNum ).FanPowerPerEvapAirFlowRate( 1 ), DXCoil( DXCoilNum ).RegionNum, DXCoil( DXCoilNum ).MinOATCompressor, DXCoil( DXCoilNum ).OATempCompressorOn, DXCoil( DXCoilNum ).OATempCompressorOnOffBlank, DXCoil( DXCoilNum ).DefrostControl, DXCoil( DXCoilNum ).ASHRAE127StdRprt ); } // Call routine that computes AHRI certified rating for multi-speed DX cooling Coils if ( DXCoil( DXCoilNum ).DXCoilType_Num == CoilDX_MultiSpeedCooling || DXCoil( DXCoilNum ).DXCoilType_Num == CoilDX_MultiSpeedHeating ) { diff --git a/src/EnergyPlus/DXCoils.hh b/src/EnergyPlus/DXCoils.hh index abd834df3db..51c592505cc 100644 --- a/src/EnergyPlus/DXCoils.hh +++ b/src/EnergyPlus/DXCoils.hh @@ -416,6 +416,7 @@ namespace DXCoils { // (function of actual supply air flow vs rated air flow) int SHRFTempCurveType2; // type of curve for SHRFTemp (cubic,quadratic,bi-quadratic) bool UserSHRCurveExists; // TRUE if user specified SHR modifier curve exists + bool ASHRAE127StdRprt; // TRUE if user wishes to report ASHRAE 127 standard ratings // Default Constructor DXCoilData() : @@ -613,7 +614,8 @@ namespace DXCoils { SHRFTemp2( 0 ), SHRFFlow2( 0 ), SHRFTempCurveType2( 0 ), - UserSHRCurveExists( false ) + UserSHRCurveExists( false ), + ASHRAE127StdRprt( false ) {} // Member Constructor @@ -851,7 +853,8 @@ namespace DXCoils { int const SHRFTemp2, // index of sensible heat ratio modifier curve int const SHRFFlow2, // index of sensible heat ratio modifier curve int const SHRFTempCurveType2, // type of curve for SHRFTemp (cubic,quadratic,bi-quadratic) - bool const UserSHRCurveExists // TRUE if user specified SHR modifier curve exists + bool const UserSHRCurveExists, // TRUE if user specified SHR modifier curve exists + bool const ASHRAE127StdRprt // TRUE if user wishes to report ASHRAE 127 standard ratings ) : Name( Name ), DXCoilType( DXCoilType ), @@ -1086,7 +1089,8 @@ namespace DXCoils { SHRFTemp2( SHRFTemp2 ), SHRFFlow2( SHRFFlow2 ), SHRFTempCurveType2( SHRFTempCurveType2 ), - UserSHRCurveExists( UserSHRCurveExists ) + UserSHRCurveExists( UserSHRCurveExists ), + ASHRAE127StdRprt( ASHRAE127StdRprt ) {} }; diff --git a/src/EnergyPlus/EvaporativeCoolers.cc b/src/EnergyPlus/EvaporativeCoolers.cc index 1f51edd7e05..a2a0e556e74 100644 --- a/src/EnergyPlus/EvaporativeCoolers.cc +++ b/src/EnergyPlus/EvaporativeCoolers.cc @@ -9,6 +9,7 @@ // EnergyPlus Headers #include #include +#include #include #include #include @@ -105,6 +106,14 @@ namespace EvaporativeCoolers { FArray1D_bool CheckZoneEvapUnitName; bool GetInputZoneEvapUnit( true ); + // Indirect Evaporative Coolers Research Special Operating Modes + int const None( 0 ); // the indirect evaporative cooler Research Special is scheduled off or turned off + int const DryModulated( 1 ); // the indirect evaporative cooler Research Special is modulated in Dry Mode + int const DryFull( 2 ); // the indirect evaporative cooler Research Special is run in full capacity in Dry Mode + int const DryWetModulated( 3 ); // the indirect evaporative cooler Research Special is modulated in Dry Mode or wet Mode + int const WetModulated( 4 ); // the indirect evaporative cooler Research Special is modulated in wet Mode + int const WetFull( 5 ); // the indirect evaporative cooler Research Special is run in full capacity in Wet Mode + // SUBROUTINE SPECIFICATIONS FOR MODULE EvapCoolers // component model routines @@ -249,7 +258,8 @@ namespace EvaporativeCoolers { using BranchNodeConnections::TestCompSet; using WaterManager::SetupTankDemandComponent; using OutAirNodeManager::CheckOutAirNodeNumber; - + using DataSizing::AutoSize; + using CurveManager::GetCurveIndex; // Locals // SUBROUTINE ARGUMENT DEFINITIONS: // na @@ -524,27 +534,30 @@ namespace EvaporativeCoolers { } } - EvapCond( EvapCoolNum ).InletNode = GetOnlySingleNode( cAlphaArgs( 3 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Inlet, 1, ObjectIsNotParent ); - - EvapCond( EvapCoolNum ).OutletNode = GetOnlySingleNode( cAlphaArgs( 4 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Outlet, 1, ObjectIsNotParent ); + EvapCond( EvapCoolNum ).InletNode = GetOnlySingleNode( cAlphaArgs( 7 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Inlet, 1, ObjectIsNotParent ); - TestCompSet( cCurrentModuleObject, cAlphaArgs( 1 ), cAlphaArgs( 3 ), cAlphaArgs( 4 ), "Evap Air Nodes" ); + EvapCond( EvapCoolNum ).OutletNode = GetOnlySingleNode( cAlphaArgs( 8 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Outlet, 1, ObjectIsNotParent ); - EvapCond( EvapCoolNum ).EvapControlType = cAlphaArgs( 5 ); + TestCompSet( cCurrentModuleObject, cAlphaArgs( 1 ), cAlphaArgs( 7 ), cAlphaArgs( 8 ), "Evap Air Nodes" ); - // A6 ; \field Secondary Air Inlet Node Name - if ( lAlphaFieldBlanks( 6 ) ) { + if ( lAlphaFieldBlanks( 9 ) ) { EvapCond( EvapCoolNum ).SecondaryInletNode = 0; } else { - EvapCond( EvapCoolNum ).SecondaryInletNode = GetOnlySingleNode( cAlphaArgs( 6 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Inlet, 2, ObjectIsNotParent ); + EvapCond( EvapCoolNum ).SecondaryInletNode = GetOnlySingleNode( cAlphaArgs( 9 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Inlet, 2, ObjectIsNotParent ); } - EvapCond( EvapCoolNum ).EvapControlNodeNum = GetOnlySingleNode( cAlphaArgs( 7 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Sensor, 1, ObjectIsNotParent ); + if ( lAlphaFieldBlanks( 10 ) ) { + EvapCond( EvapCoolNum ).SecondaryOutletNode = 0; + } else { + EvapCond( EvapCoolNum ).SecondaryOutletNode = GetOnlySingleNode( cAlphaArgs( 10 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Outlet, 2, ObjectIsNotParent ); + } - EvapCond( EvapCoolNum ).TertiaryInletNode = GetOnlySingleNode( cAlphaArgs( 8 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Inlet, 3, ObjectIsNotParent ); + EvapCond( EvapCoolNum ).EvapControlNodeNum = GetOnlySingleNode( cAlphaArgs( 11 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Sensor, 1, ObjectIsNotParent ); - EvapCond( EvapCoolNum ).EvapWaterSupplyName = cAlphaArgs( 9 ); - if ( lAlphaFieldBlanks( 9 ) ) { + EvapCond( EvapCoolNum ).TertiaryInletNode = GetOnlySingleNode( cAlphaArgs( 12 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Inlet, 3, ObjectIsNotParent ); + + EvapCond( EvapCoolNum ).EvapWaterSupplyName = cAlphaArgs( 13 ); + if ( lAlphaFieldBlanks( 13 ) ) { EvapCond( EvapCoolNum ).EvapWaterSupplyMode = WaterSupplyFromMains; } else { EvapCond( EvapCoolNum ).EvapWaterSupplyMode = WaterSupplyFromTank; @@ -554,28 +567,52 @@ namespace EvaporativeCoolers { //input the numerical data EvapCond( EvapCoolNum ).WetCoilMaxEfficiency = rNumericArgs( 1 ); - EvapCond( EvapCoolNum ).WetCoilFlowRatio = rNumericArgs( 2 ); + if ( lNumericFieldBlanks( 2 ) ) { + EvapCond( EvapCoolNum ).DryCoilMaxEfficiency = 0.0; + } else { + EvapCond( EvapCoolNum ).DryCoilMaxEfficiency = rNumericArgs( 2 ); + } EvapCond( EvapCoolNum ).IndirectRecircPumpPower = rNumericArgs( 3 ); - EvapCond( EvapCoolNum ).IndirectVolFlowRate = rNumericArgs( 4 ); - EvapCond( EvapCoolNum ).IndirectFanEff = rNumericArgs( 5 ); - EvapCond( EvapCoolNum ).IndirectFanDeltaPress = rNumericArgs( 6 ); - EvapCond( EvapCoolNum ).DPBoundFactor = rNumericArgs( 7 ); - if ( lNumericFieldBlanks( 8 ) ) { + EvapCond( EvapCoolNum ).RecircPumpSizingFactor = rNumericArgs( 4 ); + EvapCond( EvapCoolNum ).IndirectVolFlowRate = rNumericArgs( 5 ); + EvapCond( EvapCoolNum ).IndirectVolFlowScalingFactor = rNumericArgs( 6 ); + EvapCond( EvapCoolNum ).IndirectFanPower = rNumericArgs( 7 ); + EvapCond( EvapCoolNum ).FanSizingSpecificPower = rNumericArgs( 8 ); + EvapCond( EvapCoolNum ).VolFlowRate = rNumericArgs( 9 ); + EvapCond( EvapCoolNum ).DPBoundFactor = rNumericArgs( 10 ); + if ( lNumericFieldBlanks( 11 ) ) { EvapCond( EvapCoolNum ).DriftFraction = 0.0; } else { - EvapCond( EvapCoolNum ).DriftFraction = rNumericArgs( 8 ); + EvapCond( EvapCoolNum ).DriftFraction = rNumericArgs( 11 ); } - - if ( lNumericFieldBlanks( 9 ) ) { + if ( lNumericFieldBlanks( 12 ) ) { EvapCond( EvapCoolNum ).BlowDownRatio = 0.0; } else { - EvapCond( EvapCoolNum ).BlowDownRatio = rNumericArgs( 9 ); + EvapCond( EvapCoolNum ).BlowDownRatio = rNumericArgs( 12 ); + } + if ( lNumericFieldBlanks( 2 ) || lNumericFieldBlanks( 13 ) || lNumericFieldBlanks( 14 ) || lNumericFieldBlanks( 15 ) ) { + EvapCond( EvapCoolNum ).EvapCoolerOperationControlFlag = false; + } else { + if ( !lNumericFieldBlanks( 2 ) && !lNumericFieldBlanks( 13 ) && !lNumericFieldBlanks( 14 ) && !lNumericFieldBlanks( 15 ) ) { + EvapCond( EvapCoolNum ).EvapCoolerOperationControlFlag = true; + EvapCond( EvapCoolNum ).MinOATDBEvapCooler = rNumericArgs( 13 ); + EvapCond( EvapCoolNum ).MaxOATWBEvapCooler = rNumericArgs( 14 ); + EvapCond( EvapCoolNum ).MaxOATDBEvapCooler = rNumericArgs( 15 ); + } else { + EvapCond( EvapCoolNum ).EvapCoolerOperationControlFlag = false; + } } + EvapCond( EvapCoolNum ).WetbulbEffecCurveIndex = GetCurveIndex( cAlphaArgs( 3 ) ); + EvapCond( EvapCoolNum ).DrybulbEffecCurveIndex = GetCurveIndex( cAlphaArgs( 4 ) ); + EvapCond( EvapCoolNum ).PumpPowerModifierCurveIndex = GetCurveIndex( cAlphaArgs( 5 ) ); + EvapCond( EvapCoolNum ).FanPowerModifierCurveIndex = GetCurveIndex( cAlphaArgs( 6 ) ); SetupOutputVariable( "Evaporative Cooler Total Stage Effectiveness []", EvapCond( EvapCoolNum ).StageEff, "System", "Average", EvapCond( EvapCoolNum ).EvapCoolerName ); SetupOutputVariable( "Evaporative Cooler Part Load Ratio []", EvapCond( EvapCoolNum ).PartLoadFract, "System", "Average", EvapCond( EvapCoolNum ).EvapCoolerName ); SetupOutputVariable( "Evaporative Cooler Dewpoint Bound Status []", EvapCond( EvapCoolNum ).DewPointBoundFlag, "System", "Average", EvapCond( EvapCoolNum ).EvapCoolerName ); + SetupOutputVariable( "Evaporative Cooler Operating Mode Status []", EvapCond( EvapCoolNum ).IECOperatingStatus, "System", "Average", EvapCond( EvapCoolNum ).EvapCoolerName ); + } // end of Indirect Research Special cooler input loop @@ -605,17 +642,17 @@ namespace EvaporativeCoolers { } } - EvapCond( EvapCoolNum ).InletNode = GetOnlySingleNode( cAlphaArgs( 3 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Inlet, 1, ObjectIsNotParent ); + EvapCond( EvapCoolNum ).InletNode = GetOnlySingleNode( cAlphaArgs( 5 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Inlet, 1, ObjectIsNotParent ); - EvapCond( EvapCoolNum ).OutletNode = GetOnlySingleNode( cAlphaArgs( 4 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Outlet, 1, ObjectIsNotParent ); + EvapCond( EvapCoolNum ).OutletNode = GetOnlySingleNode( cAlphaArgs( 6 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Outlet, 1, ObjectIsNotParent ); - TestCompSet( cCurrentModuleObject, cAlphaArgs( 1 ), cAlphaArgs( 3 ), cAlphaArgs( 4 ), "Evap Air Nodes" ); + TestCompSet( cCurrentModuleObject, cAlphaArgs( 1 ), cAlphaArgs( 5 ), cAlphaArgs( 6 ), "Evap Air Nodes" ); - EvapCond( EvapCoolNum ).EvapControlNodeNum = GetOnlySingleNode( cAlphaArgs( 5 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Sensor, 1, ObjectIsNotParent ); + EvapCond( EvapCoolNum ).EvapControlNodeNum = GetOnlySingleNode( cAlphaArgs( 7 ), ErrorsFound, cCurrentModuleObject, cAlphaArgs( 1 ), NodeType_Air, NodeConnectionType_Sensor, 1, ObjectIsNotParent ); - EvapCond( EvapCoolNum ).EvapWaterSupplyName = cAlphaArgs( 6 ); + EvapCond( EvapCoolNum ).EvapWaterSupplyName = cAlphaArgs( 8 ); - if ( lAlphaFieldBlanks( 6 ) ) { + if ( lAlphaFieldBlanks( 8 ) ) { EvapCond( EvapCoolNum ).EvapWaterSupplyMode = WaterSupplyFromMains; } else { EvapCond( EvapCoolNum ).EvapWaterSupplyMode = WaterSupplyFromTank; @@ -623,19 +660,38 @@ namespace EvaporativeCoolers { } EvapCond( EvapCoolNum ).DirectEffectiveness = rNumericArgs( 1 ); EvapCond( EvapCoolNum ).RecircPumpPower = rNumericArgs( 2 ); - + if ( lNumericFieldBlanks( 3 ) ) { - EvapCond( EvapCoolNum ).DriftFraction = 0.0; + EvapCond( EvapCoolNum ).RecircPumpSizingFactor = 0.0; } else { - EvapCond( EvapCoolNum ).DriftFraction = rNumericArgs( 3 ); + EvapCond( EvapCoolNum ).RecircPumpSizingFactor = rNumericArgs( 3 ); } - if ( lNumericFieldBlanks( 4 ) ) { + EvapCond( EvapCoolNum ).DriftFraction = 0.0; + } else { + EvapCond( EvapCoolNum ).DriftFraction = rNumericArgs( 4 ); + } + if ( lNumericFieldBlanks( 5 ) ) { EvapCond( EvapCoolNum ).BlowDownRatio = 0.0; } else { - EvapCond( EvapCoolNum ).BlowDownRatio = rNumericArgs( 4 ); + EvapCond( EvapCoolNum ).BlowDownRatio = rNumericArgs( 5 ); + } + if ( lNumericFieldBlanks( 6 ) || lNumericFieldBlanks( 7 ) || lNumericFieldBlanks( 8 ) ) { + EvapCond( EvapCoolNum ).EvapCoolerOperationControlFlag = false; + } else { + if ( !lNumericFieldBlanks( 6 ) && !lNumericFieldBlanks( 7 ) && !lNumericFieldBlanks( 8 ) ) { + EvapCond( EvapCoolNum ).EvapCoolerOperationControlFlag = true; + EvapCond( EvapCoolNum ).MinOATDBEvapCooler = rNumericArgs( 6 ); + EvapCond( EvapCoolNum ).MaxOATWBEvapCooler = rNumericArgs( 7 ); + EvapCond( EvapCoolNum ).MaxOATDBEvapCooler = rNumericArgs( 8 ); + } else { + EvapCond( EvapCoolNum ).EvapCoolerOperationControlFlag = false; + } } + EvapCond( EvapCoolNum ).WetbulbEffecCurveIndex = GetCurveIndex( cAlphaArgs( 3 ) ); + EvapCond( EvapCoolNum ).PumpPowerModifierCurveIndex = GetCurveIndex( cAlphaArgs( 4 ) ); + SetupOutputVariable( "Evaporative Cooler Stage Effectiveness []", EvapCond( EvapCoolNum ).StageEff, "System", "Average", EvapCond( EvapCoolNum ).EvapCoolerName ); } if ( ErrorsFound ) { @@ -829,6 +885,7 @@ namespace EvaporativeCoolers { // These initializations are done every iteration OutNode = EvapCond( EvapCoolNum ).OutletNode; ControlNode = EvapCond( EvapCoolNum ).EvapControlNodeNum; + EvapCond( EvapCoolNum ).IECOperatingStatus = 0; if ( ControlNode == 0 ) { EvapCond( EvapCoolNum ).DesiredOutletTemp = 0.0; @@ -865,6 +922,8 @@ namespace EvaporativeCoolers { using DataAirSystems::PrimaryAirSystem; using InputProcessor::SameString; using ReportSizingManager::ReportSizingOutput; + using Fans::Fan; + using Fans::SetFanData; // Locals // SUBROUTINE ARGUMENT DEFINITIONS: @@ -890,8 +949,9 @@ namespace EvaporativeCoolers { //inits CoolerOnOApath = false; CoolerOnMainAirLoop = false; + bool ErrorsFound; - if ( EvapCond( EvapCoolNum ).IndirectVolFlowRate == AutoSize ) { + if ( EvapCond( EvapCoolNum ).IndirectVolFlowRate == AutoSize || EvapCond( EvapCoolNum ).VolFlowRate == AutoSize ) { if ( CurSysNum > 0 ) { //central system //where is this cooler located, is it on OA system or main loop? // search for this component in Air loop branches. @@ -911,11 +971,24 @@ namespace EvaporativeCoolers { if ( ! CoolerOnMainAirLoop ) CoolerOnOApath = true; if ( CoolerOnMainAirLoop ) { - EvapCond( EvapCoolNum ).IndirectVolFlowRate = FinalSysSizing( CurSysNum ).DesMainVolFlow; + if ( EvapCond( EvapCoolNum ).VolFlowRate == AutoSize ) { + EvapCond( EvapCoolNum ).VolFlowRate = FinalSysSizing( CurSysNum ).DesMainVolFlow; + } + if ( EvapCond( EvapCoolNum ).IndirectVolFlowRate == AutoSize ) { + EvapCond( EvapCoolNum ).IndirectVolFlowRate = FinalSysSizing( CurSysNum ).DesMainVolFlow; + } } else if ( CoolerOnOApath ) { - EvapCond( EvapCoolNum ).IndirectVolFlowRate = max( FinalSysSizing( CurSysNum ).DesOutAirVolFlow, 0.5 * FinalSysSizing( CurSysNum ).DesMainVolFlow ); + if ( EvapCond( EvapCoolNum ).VolFlowRate == AutoSize ) { + EvapCond( EvapCoolNum ).VolFlowRate = FinalSysSizing( CurSysNum ).DesOutAirVolFlow; + } + if ( EvapCond( EvapCoolNum ).IndirectVolFlowRate == AutoSize ) { + EvapCond( EvapCoolNum ).IndirectVolFlowRate = max( FinalSysSizing( CurSysNum ).DesOutAirVolFlow, 0.5 * FinalSysSizing( CurSysNum ).DesMainVolFlow ); + } + } + // apply scaling factor the secondary air fan flow rate + if ( EvapCond( EvapCoolNum ).EvapCoolerType == iEvapCoolerInDirectRDDSpecial ) { + EvapCond( EvapCoolNum ).IndirectVolFlowRate = EvapCond( EvapCoolNum ).IndirectVolFlowRate * EvapCond( EvapCoolNum ).IndirectVolFlowScalingFactor; } - } else { //zone equipment // we have no zone equipment evap coolers yet @@ -924,6 +997,25 @@ namespace EvaporativeCoolers { ReportSizingOutput( "EvaporativeCooler:Indirect:ResearchSpecial", EvapCond( EvapCoolNum ).EvapCoolerName, "Secondary Fan Flow Rate [m3/s]", EvapCond( EvapCoolNum ).IndirectVolFlowRate ); } + if ( EvapCond( EvapCoolNum ).EvapCoolerType == iEvapCoolerInDirectRDDSpecial ) { + // secondary air fan sizing: Secondary flow Rate (m3/s) * Fan Flow Sizing Factor (W/(m3/s) + if ( EvapCond( EvapCoolNum ).IndirectFanPower == AutoSize ) { + EvapCond( EvapCoolNum ).IndirectFanPower = EvapCond( EvapCoolNum ).IndirectVolFlowRate * EvapCond( EvapCoolNum ).FanSizingSpecificPower; + ReportSizingOutput( "EvaporativeCooler:Indirect:ResearchSpecial", EvapCond( EvapCoolNum ).EvapCoolerName, "Secondary Fan Power [W]", EvapCond( EvapCoolNum ).IndirectFanPower ); + } + // recirculating water pump sizing: Secondary flow Rate (m3/s) * Pump Sizing Factor (W/(m3/s) + if ( EvapCond( EvapCoolNum ).IndirectRecircPumpPower == AutoSize ) { + EvapCond( EvapCoolNum ).IndirectRecircPumpPower = EvapCond( EvapCoolNum ).IndirectVolFlowRate * EvapCond( EvapCoolNum ).RecircPumpSizingFactor; + ReportSizingOutput( "EvaporativeCooler:Indirect:ResearchSpecial", EvapCond( EvapCoolNum ).EvapCoolerName, "Recirculating Pump Power [W]", EvapCond( EvapCoolNum ).IndirectRecircPumpPower ); + } + } + if ( EvapCond( EvapCoolNum ).EvapCoolerType == iEvapCoolerDirectResearchSpecial ) { + // recirculating water pump sizing: Primary Air Design flow Rate (m3/s) * Pump Sizing Factor (W/(m3/s) + if ( EvapCond( EvapCoolNum ).RecircPumpPower == AutoSize ) { + EvapCond( EvapCoolNum ).RecircPumpPower = EvapCond( EvapCoolNum ).VolFlowRate * EvapCond( EvapCoolNum ).RecircPumpSizingFactor; + ReportSizingOutput( "EvaporativeCooler:Direct:ResearchSpecial", EvapCond( EvapCoolNum ).EvapCoolerName, "Recirculating Pump Power [W]", EvapCond( EvapCoolNum ).RecircPumpPower ); + } + } } // End Initialization Section of the Module @@ -1460,7 +1552,8 @@ namespace EvaporativeCoolers { // AUTHOR B. Griffith // DATE WRITTEN July 2003 // MODIFIED na - // RE-ENGINEERED na + // RE-ENGINEERED October 2014, B Nigusse, added dry and wet operating modes + // and secondary air flow control // PURPOSE OF THIS SUBROUTINE: // Subroutine models a "special" cooler that allows high effectiveness and controls @@ -1477,12 +1570,19 @@ namespace EvaporativeCoolers { using DataEnvironment::OutHumRat; using DataEnvironment::OutBaroPress; using DataWater::WaterStorage; + using CurveManager::CurveValue; + //using General::SolveRegulaFalsi; + //using General::RoundSigDigits; // Locals // SUBROUTINE ARGUMENT DEFINITIONS: // SUBROUTINE PARAMETER DEFINITIONS: - // na + + + // SUBROUTINE PARAMETER DEFINITIONS: + int const MaxIte( 500 ); // Maximum number of iterations for solver + Real64 const TempTol( 0.001 ); // convergence tollerance // INTERFACE BLOCK SPECIFICATIONS // na @@ -1492,8 +1592,10 @@ namespace EvaporativeCoolers { // SUBROUTINE LOCAL VARIABLE DECLARATIONS: //REAL(r64) Variables + Real64 SecondaryInletDryBulbTemp; // entering drybulb for secondary/purge side Real64 SecondaryInletWetBulbTemp; // entering wet bulb for secondary/purge side Real64 SecondaryInletDewPointTemp; // entering dewpoint for secondary/purge side + Real64 SecondaryInletHumRatio; // entering humidity ratio for secondary/purge side Real64 StageEff; // Stage Efficiency of the Heat Exchanger Real64 TEDB; // Entering Dry Bulb Temperature Real64 TEWB; // Entering Wet Bulb Temperature @@ -1531,12 +1633,9 @@ namespace EvaporativeCoolers { //****************************************************************************** // INDIRECT STAGE EFFICIENCY FOR WET COIL INDIRECT EVAP COOLERS CFMAir = EvapCond( EvapCoolNum ).VolFlowRate; //Volume Flow Rate Primary Side - // CFMSec = EvapCond(EvapCoolNum)%IndirectVolFlowRate !Volume Flolw Rate Secondary Side - StageEff = EvapCond( EvapCoolNum ).WetCoilMaxEfficiency; // This is model is for special indirect cooler with efficiency greater than 1.0 - if ( StageEff >= 1.5 ) StageEff = 1.5; EvapCond( EvapCoolNum ).StageEff = StageEff; @@ -1549,9 +1648,10 @@ namespace EvaporativeCoolers { TertNode = EvapCond( EvapCoolNum ).TertiaryInletNode; if ( TertNode == 0 ) { - + SecondaryInletDryBulbTemp = EvapCond( EvapCoolNum ).SecInletTemp; SecondaryInletWetBulbTemp = PsyTwbFnTdbWPb( EvapCond( EvapCoolNum ).SecInletTemp, EvapCond( EvapCoolNum ).SecInletHumRat, OutBaroPress ); SecondaryInletDewPointTemp = PsyTdpFnTdbTwbPb( EvapCond( EvapCoolNum ).SecInletTemp, SecondaryInletWetBulbTemp, OutBaroPress ); + SecondaryInletHumRatio = EvapCond( EvapCoolNum ).SecInletHumRat; } else { @@ -1567,9 +1667,10 @@ namespace EvaporativeCoolers { if ( SecVdot < 0.0 ) { // all tertiary/releif air e.g. econonizer wide open SecVdot = 0.0; + SecondaryInletDryBulbTemp = TertTemp; SecondaryInletWetBulbTemp = PsyTwbFnTdbWPb( TertTemp, TertHumRate, OutBaroPress ); SecondaryInletDewPointTemp = PsyTdpFnTdbTwbPb( TertTemp, SecondaryInletWetBulbTemp, OutBaroPress ); - + SecondaryInletHumRatio = TertHumRate; } else { // First determine mass flow of OA, in secondary @@ -1587,105 +1688,860 @@ namespace EvaporativeCoolers { // Use Enthalpy and humidity ratio to get outlet temperature from psych chart PurgeTemp = PsyTdbFnHW( PurgeEnthalpy, PurgeHumRat ); + SecondaryInletDryBulbTemp = PurgeTemp; SecondaryInletWetBulbTemp = PsyTwbFnTdbWPb( PurgeTemp, PurgeHumRat, OutBaroPress ); SecondaryInletDewPointTemp = PsyTdpFnTdbTwbPb( PurgeTemp, SecondaryInletWetBulbTemp, OutBaroPress ); + SecondaryInletHumRatio = PurgeHumRat; } + } + if ( EvapCond( EvapCoolNum ).EvapCoolerOperationControlFlag ) { + // addvanced mode: runs either in dry or wet depending on the entering conditions + CalcIndirectResearchSpecialEvapCoolerAdvanced( EvapCoolNum, SecondaryInletDryBulbTemp, SecondaryInletWetBulbTemp, SecondaryInletDewPointTemp, SecondaryInletHumRatio ); + + } else { + + TEWB = EvapCond( EvapCoolNum ).InletWetBulbTemp; + TEDB = EvapCond( EvapCoolNum ).InletTemp; + PartLoad = EvapCond( EvapCoolNum ).PartLoadFract; + + //*************************************************************************** + // TEMP LEAVING DRY BULB IS CALCULATED FROM A SIMPLE WET BULB APPROACH + // MODEL GIVEN THE INDIRECT STAGE EFFICIENCY. + // DRY BULB TEMP APPROACHES THE WET BULB TEMP ACROSS THE INDIRECT STAGE. + //*************************************************************************** + if ( PartLoad == 1.0 ) { + // Tout = Tin - ( 0.7 (Tin - Tpurge,wb,in) + EvapCond( EvapCoolNum ).OutletTemp = TEDB - StageEff * ( TEDB - SecondaryInletWetBulbTemp ); + // now bound with secondary dewpoint. + // unless the resulting Tout<=Tpurge,dp,in ; in which case Tout = Tin - 0.9(Tin-Tpurge,dp,in) + + BoundTemp = TEDB - EvapCond( EvapCoolNum ).DPBoundFactor * ( TEDB - SecondaryInletDewPointTemp ); + if ( EvapCond( EvapCoolNum ).OutletTemp < BoundTemp ) { + EvapCond( EvapCoolNum ).OutletTemp = BoundTemp; + EvapCond( EvapCoolNum ).DewPointBoundFlag = 1; + } + } else if ( ( PartLoad < 1.0 ) && ( PartLoad > 0.0 ) ) { + // assume perfect control Use PLF for energy consumption + if ( EvapCond( EvapCoolNum ).DesiredOutletTemp < TEDB ) { + EvapCond( EvapCoolNum ).OutletTemp = EvapCond( EvapCoolNum ).DesiredOutletTemp; + } + } else { + //part load set to zero so no cooling + EvapCond( EvapCoolNum ).OutletTemp = EvapCond( EvapCoolNum ).InletTemp; + } + + //*************************************************************************** + // POWER OF THE SECONDARY AIR FAN with part load factor applied (assumes const efficiency) + EvapCond( EvapCoolNum ).EvapCoolerPower += EvapCond( EvapCoolNum ).IndirectVolFlowRate * EvapCond( EvapCoolNum ).FanSizingSpecificPower * PartLoad; + + // ENERGY CONSUMED BY THE RECIRCULATING PUMP + // ENERGY CONSUMED BY THE RECIRCULATING PUMP + //Add the pump energy to the total Evap Cooler energy comsumption + EvapCond( EvapCoolNum ).EvapCoolerPower += EvapCond( EvapCoolNum ).IndirectRecircPumpPower * PartLoad; + + //*************************************************************************** + // CALCULATE THE WET BULB TEMP in the primary system air using PSYCH ROUTINES + // There is a constant humidity ratio across the primary side but a reduction in the dry bulb temp + EvapCond( EvapCoolNum ).OuletWetBulbTemp = PsyTwbFnTdbWPb( EvapCond( EvapCoolNum ).OutletTemp, EvapCond( EvapCoolNum ).InletHumRat, OutBaroPress ); + //*************************************************************************** + // CALCULATE other outlet propertiesusing PSYCH ROUTINES + EvapCond( EvapCoolNum ).OutletHumRat = EvapCond( EvapCoolNum ).InletHumRat; + + EvapCond( EvapCoolNum ).OutletEnthalpy = PsyHFnTdbW( EvapCond( EvapCoolNum ).OutletTemp, EvapCond( EvapCoolNum ).OutletHumRat ); + //****************** + // WATER CONSUMPTION IN LITERS OF WATER FOR Wet InDIRECT + // H2O [m3/sec] = (QHX [J/s])/(2,500,000 [J/kg H2O] * RhoWater [kg H2O/m3 H2O]) + //****************** + //***** FIRST calculate the heat exchange on the primary air side********** + RhoAir = PsyRhoAirFnPbTdbW( OutBaroPress, EvapCond( EvapCoolNum ).InletTemp, EvapCond( EvapCoolNum ).InletHumRat ); + QHX = CFMAir * RhoAir * ( EvapCond( EvapCoolNum ).InletEnthalpy - EvapCond( EvapCoolNum ).OutletEnthalpy ); + + RhoWater = RhoH2O( OutDryBulbTemp ); + EvapVdot = ( QHX ) / ( 2500000.0 * RhoWater ); + DriftVdot = EvapVdot * EvapCond( EvapCoolNum ).DriftFraction; + if ( EvapCond( EvapCoolNum ).BlowDownRatio > 0.0 ) { + BlowDownVdot = EvapVdot / ( EvapCond( EvapCoolNum ).BlowDownRatio - 1 ) - DriftVdot; + if ( BlowDownVdot < 0.0 ) BlowDownVdot = 0.0; + } else { + BlowDownVdot = 0.0; + } + EvapCond( EvapCoolNum ).EvapWaterConsumpRate = EvapVdot + DriftVdot + BlowDownVdot; + // A numerical check to keep from having very tiny negative water consumption values being reported + if ( EvapCond( EvapCoolNum ).EvapWaterConsumpRate < 0.0 ) EvapCond( EvapCoolNum ).EvapWaterConsumpRate = 0.0; + } - //*************************************************************************** - // TEMP LEAVING DRY BULB IS CALCULATED FROM A SIMPLE WET BULB APPROACH - // MODEL GIVEN THE INDIRECT STAGE EFFICIENCY. - // DRY BULB TEMP APPROACHES THE WET BULB TEMP ACROSS THE INDIRECT STAGE. - //*************************************************************************** - TEWB = EvapCond( EvapCoolNum ).InletWetBulbTemp; - TEDB = EvapCond( EvapCoolNum ).InletTemp; - PartLoad = EvapCond( EvapCoolNum ).PartLoadFract; - if ( PartLoad == 1.0 ) { - // Tout = Tin - ( 0.7 (Tin - Tpurge,wb,in) - EvapCond( EvapCoolNum ).OutletTemp = TEDB - StageEff * ( TEDB - SecondaryInletWetBulbTemp ); - // now bound with secondary dewpoint. - // unless the resulting Tout<=Tpurge,dp,in ; in which case Tout = Tin - 0.9(Tin-Tpurge,dp,in) + } else { + // The evap cooler is not running and does not change conditions from inlet to outlet + EvapCond( EvapCoolNum ).OutletTemp = EvapCond( EvapCoolNum ).InletTemp; + EvapCond( EvapCoolNum ).OuletWetBulbTemp = EvapCond( EvapCoolNum ).InletWetBulbTemp; + EvapCond( EvapCoolNum ).OutletHumRat = EvapCond( EvapCoolNum ).InletHumRat; + EvapCond( EvapCoolNum ).OutletEnthalpy = EvapCond( EvapCoolNum ).InletEnthalpy; + EvapCond( EvapCoolNum ).EvapCoolerEnergy = 0.0; + EvapCond( EvapCoolNum ).EvapCoolerPower = 0.0; + EvapCond( EvapCoolNum ).EvapWaterConsumpRate = 0.0; + EvapCond( EvapCoolNum ).SecInletMassFlowRate = 0.0; + } + + + // all of the mass flowrates are not changed across the evap cooler + EvapCond( EvapCoolNum ).OutletMassFlowRate = EvapCond( EvapCoolNum ).InletMassFlowRate; + EvapCond( EvapCoolNum ).OutletMassFlowRateMaxAvail = EvapCond( EvapCoolNum ).InletMassFlowRateMaxAvail; + EvapCond( EvapCoolNum ).OutletMassFlowRateMinAvail = EvapCond( EvapCoolNum ).InletMassFlowRateMinAvail; + // set secondary air side inlet mass flow rate to the outlet node + EvapCond( EvapCoolNum ).SecOutletMassFlowRate = EvapCond( EvapCoolNum ).SecInletMassFlowRate; + Node( EvapCond( EvapCoolNum ).SecondaryInletNode ).MassFlowRate = EvapCond( EvapCoolNum ).SecInletMassFlowRate; - BoundTemp = TEDB - EvapCond( EvapCoolNum ).DPBoundFactor * ( TEDB - SecondaryInletDewPointTemp ); + // the pressure is not changed across the evap cooler + EvapCond( EvapCoolNum ).OutletPressure = EvapCond( EvapCoolNum ).InletPressure; + + } + + void + CalcIndirectResearchSpecialEvapCoolerAdvanced( + int const EvapCoolNum, + Real64 const InletDryBulbTempSec, + Real64 const InletWetBulbTempSec, + Real64 const InletDewPointTempSec, + Real64 const InletHumRatioSec + ) { + + // SUBROUTINE INFORMATION: + // AUTHOR B. Bigusse + // DATE WRITTEN October 2014 + // MODIFIED na + // RE-ENGINEERED na + + // PURPOSE OF THIS SUBROUTINE: + // Subroutine models indirect evaporative cooler with variable effectiveness for wet and dry + // operating modes depending on entering conditions + + // METHODOLOGY EMPLOYED: + // Needs description, as appropriate. + + // REFERENCES: + // na + + // Using/Aliasing + using DataEnvironment::OutDryBulbTemp; + using DataEnvironment::OutWetBulbTemp; + using DataEnvironment::OutHumRat; + using DataEnvironment::OutBaroPress; + using DataWater::WaterStorage; + using CurveManager::CurveValue; + using General::SolveRegulaFalsi; + using General::RoundSigDigits; + using Psychrometrics::PsyHfgAirFnWTdb; + using DataHVACGlobals::SmallLoad; + + // Locals + // SUBROUTINE ARGUMENT DEFINITIONS: + + // SUBROUTINE PARAMETER DEFINITIONS: + + + // SUBROUTINE PARAMETER DEFINITIONS: + int const MaxIte( 500 ); // Maximum number of iterations for solver + Real64 const TempTol( 0.01 ); // convergence tollerance + + // INTERFACE BLOCK SPECIFICATIONS + // na + + // DERIVED TYPE DEFINITIONS + // na + + // SUBROUTINE LOCAL VARIABLE DECLARATIONS: + Real64 TEDB; // Entering Dry Bulb Temperature + Real64 TEWB; // Entering Wet Bulb Temperature + Real64 BoundTemp; // temperature limit for outlet + Real64 PartLoad; + Real64 SecRho; + Real64 TdbOutSysWetMin; // system( primary ) air drybulb outlet temperature minimum based on wet coil + Real64 TdbOutSysDryMin; // system (primary) air drybulb outlet temperature minimum based on dry coil + Real64 SysTempSetPoint; // evaporative cooler outlet setpoint temperature, drybulb + Real64 MassFlowRateSecMax; // Design secondary air mass flow rate + Real64 AirMassFlowSec; // current secondary air mass flow rate + Real64 AirMassFlowSecDry; // current secondary air mass flow rate in dry mode + Real64 AirMassFlowSecWet; // current secondary air mass flow rate in wet mode + Real64 FlowRatioSec; // secondary air flow ratio in dry and wet mode + Real64 FlowRatioSecDry; // current secondary air mass flow ratio in dry mode + Real64 FlowRatioSecWet; // current secondary air mass flow ratio in wet mode + Real64 EvapCoolerTotalElectricPowerDry; // evaporative cooler current total electric power drawn + Real64 EvapCoolerTotalElectricPowerWet; // evaporative cooler current total electric power drawn + int SolFla; // Flag of solver + FArray1D< Real64 > Par( 6 ); // Parameter array passed to solver + Real64 QHXLatent; // evaporative cooler latent heat transfer rate + Real64 hfg; // latent heat of vaporization of water at the secondary air inlet condition + + Real64 QHX; // Q Across Sec HX in Watts or J/sec + Real64 RhoWater; + Real64 RhoAir; // Density of the primary side air + Real64 CFMAir; + Real64 TotalVolFlow; + Real64 TertVdot; + Real64 SecVdot; + Real64 SecMdot; + Real64 MassFlowRateSecMin; + static Real64 BlowDownVdot( 0.0 ); + static Real64 DriftVdot( 0.0 ); + static Real64 EvapVdot( 0.0 ); + + FlowRatioSecDry = 0.0; + FlowRatioSecWet = 0.0; + EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode = None; + TEDB = EvapCond( EvapCoolNum ).InletTemp; + TEWB = EvapCond( EvapCoolNum ).InletWetBulbTemp; + SysTempSetPoint = EvapCond( EvapCoolNum ).DesiredOutletTemp; + SecRho = PsyRhoAirFnPbTdbW( OutBaroPress, InletDryBulbTempSec, InletHumRatioSec ); + MassFlowRateSecMax = SecRho * EvapCond( EvapCoolNum ).IndirectVolFlowRate; + CalcIndirectRDDEvapCoolerOutletTemp( EvapCoolNum, WetFull, MassFlowRateSecMax, InletDryBulbTempSec, InletWetBulbTempSec, InletHumRatioSec ); + TdbOutSysWetMin = EvapCond( EvapCoolNum ).OutletTemp; + CalcIndirectRDDEvapCoolerOutletTemp( EvapCoolNum, DryFull, MassFlowRateSecMax, InletDryBulbTempSec, InletWetBulbTempSec, InletHumRatioSec ); + TdbOutSysDryMin = EvapCond( EvapCoolNum ).OutletTemp; + + // Now determine the operating modes of indirect evaporative cooler research special. There are five allowed operating modes + if ( ( TEDB <= SysTempSetPoint ) || ( TEDB > EvapCond( EvapCoolNum ).MaxOATDBEvapCooler && InletWetBulbTempSec > EvapCond( EvapCoolNum ).MaxOATWBEvapCooler ) || ( TEDB <= InletDryBulbTempSec ) ) { + EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode = None; + } else if ( ( InletDryBulbTempSec < EvapCond( EvapCoolNum ).MinOATDBEvapCooler && TdbOutSysDryMin < SysTempSetPoint ) ) { + EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode = DryModulated; // dry mode capacity modulated + } else if ( ( InletDryBulbTempSec < EvapCond( EvapCoolNum ).MinOATDBEvapCooler && SysTempSetPoint <= TdbOutSysDryMin ) ) { + EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode = DryFull; // dry mode in full capacity + } else if ( ( InletDryBulbTempSec >= EvapCond( EvapCoolNum ).MinOATDBEvapCooler && InletWetBulbTempSec < EvapCond( EvapCoolNum ).MaxOATWBEvapCooler && SysTempSetPoint <= TdbOutSysWetMin ) ) { + EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode = WetFull; // wet mode in full capacity + } else if ( ( InletDryBulbTempSec >= EvapCond( EvapCoolNum ).MinOATDBEvapCooler && InletWetBulbTempSec < EvapCond( EvapCoolNum ).MaxOATWBEvapCooler && TdbOutSysWetMin < SysTempSetPoint ) ) { // && SysTempSetPoint < TdbOutSysDryMin + EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode = WetModulated; // wet mode capacity modulated + } else if ( ( InletDryBulbTempSec >= EvapCond( EvapCoolNum ).MinOATDBEvapCooler && InletDryBulbTempSec < EvapCond( EvapCoolNum ).MaxOATDBEvapCooler && InletWetBulbTempSec < EvapCond( EvapCoolNum ).MaxOATWBEvapCooler && SysTempSetPoint < TdbOutSysDryMin && TdbOutSysWetMin < SysTempSetPoint ) ) { + EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode = DryWetModulated; // modulated in dry and wet mode, and the lower total power will be used + } else { + EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode = None; // this condition should not happen unless the bounds do not cover all combinations possible + } + MassFlowRateSecMin = 0.0; + AirMassFlowSec = MassFlowRateSecMax; + PartLoad = EvapCond( EvapCoolNum ).PartLoadFract; + { auto const SELECT_CASE_var( EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode ); + if ( SELECT_CASE_var == DryModulated ) { + Par( 1 ) = double( EvapCoolNum ); + Par( 2 ) = double( DryModulated ); + Par( 3 ) = SysTempSetPoint; + Par( 4 ) = InletDryBulbTempSec; + Par( 5 ) = InletWetBulbTempSec; + Par( 6 ) = InletHumRatioSec; + SolveRegulaFalsi( TempTol, MaxIte, SolFla, AirMassFlowSec, CalcEvapCoolRDDSecFlowResidual, MassFlowRateSecMin, MassFlowRateSecMax, Par ); + // if the numerical inversion failed, issue error messages. + if ( SolFla == -1 ) { + if ( !WarmupFlag ) { + if ( EvapCond( EvapCoolNum ).IterationLimit == 0 ) { + ShowSevereError( "CalcIndirectResearchSpecialEvapCooler: calculate secondary air mass flow failed for Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName ); + ShowContinueErrorTimeStamp( "" ); + ShowContinueError( " Iteration limit [" + RoundSigDigits( MaxIte ) + "] exceeded in calculating secondary air mass flow rate" ); + ShowContinueError( " Simulation continues" ); + } + ShowRecurringWarningErrorAtEnd( "Secondary air mass flow Iteration limit exceeded in Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName, EvapCond( EvapCoolNum ).IterationLimit ); + } + } else if ( SolFla == -2 ) { + if ( !WarmupFlag ) { + if ( EvapCond( EvapCoolNum ).IterationFailed == 0 ) { + ShowSevereError( "CalcIndirectResearchSpecialEvapCooler: calculate secondary air mass flow failed for Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName ); + ShowContinueErrorTimeStamp( "" ); + ShowContinueError( "...Bad secondary air mass flow rate limits" ); + ShowContinueError( "...Given minimum secondary air mass flow rate=" + RoundSigDigits( MassFlowRateSecMin, 3 ) + " kg/s" ); + ShowContinueError( "...Given maximum secondary air mass flow rate=" + RoundSigDigits( MassFlowRateSecMax, 3 ) + " kg/s" ); + ShowContinueError( " Simulation continues" ); + } + ShowRecurringWarningErrorAtEnd( "Secondary air mass flow control failed in Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName, EvapCond( EvapCoolNum ).IterationFailed ); + } + } + EvapCond( EvapCoolNum ).SecInletMassFlowRate = AirMassFlowSec; + if ( AirMassFlowSec > 0.0 ) { + if ( MassFlowRateSecMax > 0.0 ) { + FlowRatioSec = AirMassFlowSec / MassFlowRateSecMax; + } else { + FlowRatioSec = 0.0; + } + } else { + FlowRatioSec = 0.0; + } + EvapCond( EvapCoolNum ).EvapCoolerPower = IndEvapCoolerPower( EvapCoolNum, DryModulated, FlowRatioSec ); + EvapCond( EvapCoolNum ).IECOperatingStatus = 1; + } else if ( SELECT_CASE_var == DryFull ) { + CalcIndirectRDDEvapCoolerOutletTemp( EvapCoolNum, DryFull, MassFlowRateSecMax, InletDryBulbTempSec, InletWetBulbTempSec, InletHumRatioSec ); + EvapCond( EvapCoolNum ).SecInletMassFlowRate = MassFlowRateSecMax; + FlowRatioSec = 1.0; + EvapCond( EvapCoolNum ).EvapCoolerPower = IndEvapCoolerPower( EvapCoolNum, DryFull, FlowRatioSec ); + EvapCond( EvapCoolNum ).IECOperatingStatus = 1; + } else if ( SELECT_CASE_var == DryWetModulated ) { + Par( 1 ) = double( EvapCoolNum ); + Par( 3 ) = SysTempSetPoint; + Par( 4 ) = InletDryBulbTempSec; + Par( 5 ) = InletWetBulbTempSec; + Par( 6 ) = InletHumRatioSec; + // get dry operation performance first + Par( 2 ) = double( DryModulated ); + SolveRegulaFalsi( TempTol, MaxIte, SolFla, AirMassFlowSec, CalcEvapCoolRDDSecFlowResidual, MassFlowRateSecMin, MassFlowRateSecMax, Par ); + // if the numerical inversion failed, issue error messages. + if ( SolFla == -1 ) { + if ( !WarmupFlag ) { + if ( EvapCond( EvapCoolNum ).IterationLimit == 0 ) { + ShowSevereError( "CalcIndirectResearchSpecialEvapCooler: calculate secondary air mass flow failed for Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName ); + ShowContinueErrorTimeStamp( "" ); + ShowContinueError( " Iteration limit [" + RoundSigDigits( MaxIte ) + "] exceeded in calculating secondary air mass flow rate" ); + ShowContinueError( " Simulation continues" ); + } + ShowRecurringWarningErrorAtEnd( "Secondary air mass flow Iteration limit exceeded in Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName, EvapCond( EvapCoolNum ).IterationLimit ); + } + } else if ( SolFla == -2 ) { + if ( !WarmupFlag ) { + if ( EvapCond( EvapCoolNum ).IterationFailed == 0 ) { + ShowSevereError( "CalcIndirectResearchSpecialEvapCooler: calculate secondary air mass flow failed for Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName ); + ShowContinueErrorTimeStamp( "" ); + ShowContinueError( "...Bad secondary air mass flow rate limits" ); + ShowContinueError( "...Given minimum secondary air mass flow rate=" + RoundSigDigits( MassFlowRateSecMin, 3 ) + " kg/s" ); + ShowContinueError( "...Given maximum secondary air mass flow rate=" + RoundSigDigits( MassFlowRateSecMax, 3 ) + " kg/s" ); + ShowContinueError( " Simulation continues" ); + } + ShowRecurringWarningErrorAtEnd( "Secondary air mass flow control failed in Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName, EvapCond( EvapCoolNum ).IterationFailed ); + } + } + if ( AirMassFlowSec > 0.0 ) { + if ( MassFlowRateSecMax > 0.0 ) { + FlowRatioSec = AirMassFlowSec / MassFlowRateSecMax; + } else { + FlowRatioSec = 0.0; + } + } else { + FlowRatioSec = 0.0; + } + FlowRatioSecDry = FlowRatioSec; + AirMassFlowSecDry = AirMassFlowSec; + EvapCoolerTotalElectricPowerDry = IndEvapCoolerPower( EvapCoolNum, DryModulated, FlowRatioSecDry ); + // get wet operation performance + Par( 2 ) = double( WetModulated ); + SolveRegulaFalsi( TempTol, MaxIte, SolFla, AirMassFlowSec, CalcEvapCoolRDDSecFlowResidual, MassFlowRateSecMin, MassFlowRateSecMax, Par ); + // if the numerical inversion failed, issue error messages. + if ( SolFla == -1 ) { + if ( !WarmupFlag ) { + if ( EvapCond( EvapCoolNum ).IterationLimit == 0 ) { + ShowSevereError( "CalcIndirectResearchSpecialEvapCooler: calculate secondary air mass flow failed for Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName ); + ShowContinueErrorTimeStamp( "" ); + ShowContinueError( " Iteration limit [" + RoundSigDigits( MaxIte ) + "] exceeded in calculating secondary air mass flow rate" ); + ShowContinueError( " Simulation continues" ); + } + ShowRecurringWarningErrorAtEnd( "Secondary air mass flow Iteration limit exceeded in Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName, EvapCond( EvapCoolNum ).IterationLimit ); + } + } else if ( SolFla == -2 ) { + if ( !WarmupFlag ) { + if ( EvapCond( EvapCoolNum ).IterationFailed == 0 ) { + ShowSevereError( "CalcIndirectResearchSpecialEvapCooler: calculate secondary air mass flow failed for Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName ); + ShowContinueErrorTimeStamp( "" ); + ShowContinueError( "...Bad secondary air mass flow rate limits" ); + ShowContinueError( "...Given minimum secondary air mass flow rate=" + RoundSigDigits( MassFlowRateSecMin, 3 ) + " kg/s" ); + ShowContinueError( "...Given maximum secondary air mass flow rate=" + RoundSigDigits( MassFlowRateSecMax, 3 ) + " kg/s" ); + ShowContinueError( " Simulation continues" ); + } + ShowRecurringWarningErrorAtEnd( "Secondary air mass flow control failed in Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName, EvapCond( EvapCoolNum ).IterationFailed ); + } + } + if ( AirMassFlowSec > 0.0 ) { + if ( MassFlowRateSecMax > 0.0 ) { + FlowRatioSec = AirMassFlowSec / MassFlowRateSecMax; + } else { + FlowRatioSec = 0.0; + } + } else { + FlowRatioSec = 0.0; + } + FlowRatioSecWet = FlowRatioSec; + AirMassFlowSecWet = AirMassFlowSec; + EvapCoolerTotalElectricPowerWet = IndEvapCoolerPower( EvapCoolNum, WetModulated, FlowRatioSecWet ); + // compare the dry and wet operation total electric power + if ( EvapCoolerTotalElectricPowerDry < EvapCoolerTotalElectricPowerWet ) { + EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode = DryModulated; + FlowRatioSec = FlowRatioSecDry; + EvapCond( EvapCoolNum ).SecInletMassFlowRate = AirMassFlowSecDry; + CalcIndirectRDDEvapCoolerOutletTemp( EvapCoolNum, DryModulated, AirMassFlowSecDry, InletDryBulbTempSec, InletWetBulbTempSec, InletHumRatioSec ); + EvapCond( EvapCoolNum ).EvapCoolerPower = IndEvapCoolerPower( EvapCoolNum, DryModulated, FlowRatioSec ); + EvapCond( EvapCoolNum ).IECOperatingStatus = 1; + } else { + EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode = WetModulated; + FlowRatioSec = FlowRatioSecWet; + EvapCond( EvapCoolNum ).SecInletMassFlowRate = AirMassFlowSecWet; + CalcIndirectRDDEvapCoolerOutletTemp( EvapCoolNum, WetModulated, AirMassFlowSecWet, InletDryBulbTempSec, InletWetBulbTempSec, InletHumRatioSec ); + EvapCond( EvapCoolNum ).EvapCoolerPower = IndEvapCoolerPower( EvapCoolNum, WetModulated, FlowRatioSec ); + EvapCond( EvapCoolNum ).IECOperatingStatus = 2; + } + } else if ( SELECT_CASE_var == WetModulated ) { + Par( 1 ) = double( EvapCoolNum ); + Par( 2 ) = double( WetModulated ); + Par( 3 ) = SysTempSetPoint; + Par( 4 ) = InletDryBulbTempSec; + Par( 5 ) = InletWetBulbTempSec; + Par( 6 ) = InletHumRatioSec; + SolveRegulaFalsi( TempTol, MaxIte, SolFla, AirMassFlowSec, CalcEvapCoolRDDSecFlowResidual, MassFlowRateSecMin, MassFlowRateSecMax, Par ); + // if the numerical inversion failed, issue error messages. + if ( SolFla == -1 ) { + if ( !WarmupFlag ) { + if ( EvapCond( EvapCoolNum ).IterationLimit == 0 ) { + ShowSevereError( "CalcIndirectResearchSpecialEvapCooler: calculate secondary air mass flow failed for Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName ); + ShowContinueErrorTimeStamp( "" ); + ShowContinueError( " Iteration limit [" + RoundSigDigits( MaxIte ) + "] exceeded in calculating secondary air mass flow rate" ); + ShowContinueError( " Simulation continues" ); + } + ShowRecurringWarningErrorAtEnd( "Secondary air mass flow Iteration limit exceeded in Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName, EvapCond( EvapCoolNum ).IterationLimit ); + } + } else if ( SolFla == -2 ) { + if ( !WarmupFlag ) { + if ( EvapCond( EvapCoolNum ).IterationFailed == 0 ) { + ShowSevereError( "CalcIndirectResearchSpecialEvapCooler: calculate secondary air mass flow failed for Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName ); + ShowContinueErrorTimeStamp( "" ); + ShowContinueError( "...Bad secondary air mass flow rate limits" ); + ShowContinueError( "...Given minimum secondary air mass flow rate=" + RoundSigDigits( MassFlowRateSecMin, 3 ) + " kg/s" ); + ShowContinueError( "...Given maximum secondary air mass flow rate=" + RoundSigDigits( MassFlowRateSecMax, 3 ) + " kg/s" ); + ShowContinueError( " Simulation continues" ); + } + ShowRecurringWarningErrorAtEnd( "Secondary air mass flow control failed in Indirect Evaporative Cooler Research Special = " + EvapCond( EvapCoolNum ).EvapCoolerName, EvapCond( EvapCoolNum ).IterationFailed ); + } + } + EvapCond( EvapCoolNum ).SecInletMassFlowRate = AirMassFlowSec; + if ( AirMassFlowSec > 0.0 ) { + if ( MassFlowRateSecMax > 0.0 ) { + FlowRatioSec = AirMassFlowSec / MassFlowRateSecMax; + } else { + FlowRatioSec = 0.0; + } + } else { + FlowRatioSec = 0.0; + } + EvapCond( EvapCoolNum ).EvapCoolerPower = IndEvapCoolerPower( EvapCoolNum, WetModulated, FlowRatioSec ); + EvapCond( EvapCoolNum ).IECOperatingStatus = 2; + } else if ( SELECT_CASE_var == WetFull ) { + CalcIndirectRDDEvapCoolerOutletTemp( EvapCoolNum, WetFull, MassFlowRateSecMax, InletDryBulbTempSec, InletWetBulbTempSec, InletHumRatioSec ); + EvapCond( EvapCoolNum ).SecInletMassFlowRate = MassFlowRateSecMax; + FlowRatioSec = 1.0; + EvapCond( EvapCoolNum ).EvapCoolerPower = IndEvapCoolerPower( EvapCoolNum, WetFull, FlowRatioSec ); + EvapCond( EvapCoolNum ).IECOperatingStatus = 2; + } + } + if ( PartLoad == 1.0 ) { + if ( EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode == WetModulated || EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode == WetFull ) { + BoundTemp = TEDB - EvapCond( EvapCoolNum ).DPBoundFactor * ( TEDB - InletDewPointTempSec ); if ( EvapCond( EvapCoolNum ).OutletTemp < BoundTemp ) { EvapCond( EvapCoolNum ).OutletTemp = BoundTemp; EvapCond( EvapCoolNum ).DewPointBoundFlag = 1; } - } else if ( ( PartLoad < 1.0 ) && ( PartLoad > 0.0 ) ) { - // assume perfect control Use PLF for energy consumption - if ( EvapCond( EvapCoolNum ).DesiredOutletTemp < TEDB ) { - EvapCond( EvapCoolNum ).OutletTemp = EvapCond( EvapCoolNum ).DesiredOutletTemp; - } - } else { - //part load set to zero so no cooling - EvapCond( EvapCoolNum ).OutletTemp = EvapCond( EvapCoolNum ).InletTemp; } - - //*************************************************************************** - // CALCULATE THE WET BULB TEMP in the primary system air using PSYCH ROUTINES + } else if ( ( PartLoad < 1.0 ) && ( PartLoad > 0.0 ) ) { + // assume perfect control Use PLF for energy consumption + if ( EvapCond( EvapCoolNum ).DesiredOutletTemp < TEDB ) { + EvapCond( EvapCoolNum ).OutletTemp = EvapCond( EvapCoolNum ).DesiredOutletTemp; + } + } else { + //part load set to zero so no cooling + EvapCond( EvapCoolNum ).OutletTemp = EvapCond( EvapCoolNum ).InletTemp; + } + if ( EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode != None ) { // There is a constant humidity ratio across the primary side but a reduction in the dry bulb temp EvapCond( EvapCoolNum ).OuletWetBulbTemp = PsyTwbFnTdbWPb( EvapCond( EvapCoolNum ).OutletTemp, EvapCond( EvapCoolNum ).InletHumRat, OutBaroPress ); - //*************************************************************************** - // CALCULATE other outlet propertiesusing PSYCH ROUTINES EvapCond( EvapCoolNum ).OutletHumRat = EvapCond( EvapCoolNum ).InletHumRat; - EvapCond( EvapCoolNum ).OutletEnthalpy = PsyHFnTdbW( EvapCond( EvapCoolNum ).OutletTemp, EvapCond( EvapCoolNum ).OutletHumRat ); - - //*************************************************************************** - // POWER OF THE SECONDARY AIR FAN with part load factor applied (assumes const efficiency) - if ( EvapCond( EvapCoolNum ).IndirectFanEff > 0.0 ) { - EvapCond( EvapCoolNum ).EvapCoolerPower += EvapCond( EvapCoolNum ).IndirectFanDeltaPress * EvapCond( EvapCoolNum ).IndirectVolFlowRate / EvapCond( EvapCoolNum ).IndirectFanEff * PartLoad; - } - // ENERGY CONSUMED BY THE RECIRCULATING PUMP - // ENERGY CONSUMED BY THE RECIRCULATING PUMP - //Add the pump energy to the total Evap Cooler energy comsumption - EvapCond( EvapCoolNum ).EvapCoolerPower += EvapCond( EvapCoolNum ).IndirectRecircPumpPower * PartLoad; - - //****************** - // WATER CONSUMPTION IN LITERS OF WATER FOR Wet InDIRECT - // H2O [m3/sec] = (QHX [J/s])/(2,500,000 [J/kg H2O] * RhoWater [kg H2O/m3 H2O]) - //****************** - //***** FIRST calculate the heat exchange on the primary air side********** RhoAir = PsyRhoAirFnPbTdbW( OutBaroPress, EvapCond( EvapCoolNum ).InletTemp, EvapCond( EvapCoolNum ).InletHumRat ); - QHX = CFMAir * RhoAir * ( EvapCond( EvapCoolNum ).InletEnthalpy - EvapCond( EvapCoolNum ).OutletEnthalpy ); - - RhoWater = RhoH2O( OutDryBulbTemp ); - EvapVdot = ( QHX ) / ( 2500000.0 * RhoWater ); - DriftVdot = EvapVdot * EvapCond( EvapCoolNum ).DriftFraction; - if ( EvapCond( EvapCoolNum ).BlowDownRatio > 0.0 ) { - BlowDownVdot = EvapVdot / ( EvapCond( EvapCoolNum ).BlowDownRatio - 1 ) - DriftVdot; - if ( BlowDownVdot < 0.0 ) BlowDownVdot = 0.0; + QHX = EvapCond( EvapCoolNum ).VolFlowRate * RhoAir * ( EvapCond( EvapCoolNum ).InletEnthalpy - EvapCond( EvapCoolNum ).OutletEnthalpy ); + if ( QHX > SmallLoad ) { + // get secondary air outlet condition + CalcSecondaryAirOutletCondition( EvapCoolNum, EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode, EvapCond( EvapCoolNum ).SecInletMassFlowRate, InletDryBulbTempSec, InletWetBulbTempSec, InletHumRatioSec, QHX, QHXLatent ); + RhoWater = RhoH2O( OutDryBulbTemp ); // this if it is at the outside air inlet node condition + hfg = PsyHfgAirFnWTdb( InletHumRatioSec, InletDryBulbTempSec ); + EvapVdot = ( QHXLatent ) / ( hfg * RhoWater ); + DriftVdot = EvapVdot * EvapCond( EvapCoolNum ).DriftFraction; + if ( EvapCond( EvapCoolNum ).BlowDownRatio > 0.0 ) { + BlowDownVdot = EvapVdot / ( EvapCond( EvapCoolNum ).BlowDownRatio - 1 ) - DriftVdot; + if ( BlowDownVdot < 0.0 ) BlowDownVdot = 0.0; + } else { + BlowDownVdot = 0.0; + } + EvapCond( EvapCoolNum ).EvapWaterConsumpRate = EvapVdot + DriftVdot + BlowDownVdot; + // A numerical check to keep from having very tiny negative water consumption values being reported + if ( EvapCond( EvapCoolNum ).EvapWaterConsumpRate < 0.0 ) EvapCond( EvapCoolNum ).EvapWaterConsumpRate = 0.0; } else { - BlowDownVdot = 0.0; + EvapCond( EvapCoolNum ).OutletTemp = EvapCond( EvapCoolNum ).InletTemp; + EvapCond( EvapCoolNum ).OuletWetBulbTemp = EvapCond( EvapCoolNum ).InletWetBulbTemp; + EvapCond( EvapCoolNum ).OutletEnthalpy = EvapCond( EvapCoolNum ).InletEnthalpy; + EvapCond( EvapCoolNum ).EvapCoolerEnergy = 0.0; + EvapCond( EvapCoolNum ).EvapCoolerPower = 0.0; + EvapCond( EvapCoolNum ).EvapWaterConsumpRate = 0.0; + EvapCond( EvapCoolNum ).SecInletMassFlowRate = 0.0; + EvapCond( EvapCoolNum ).IECOperatingStatus = 0; + EvapCond( EvapCoolNum ).StageEff = 0.0; + CalcSecondaryAirOutletCondition( EvapCoolNum, EvapCond( EvapCoolNum ).EvapCoolerRDDOperatingMode, 0.0, InletDryBulbTempSec, InletWetBulbTempSec, InletHumRatioSec, QHX, QHXLatent ); } - EvapCond( EvapCoolNum ).EvapWaterConsumpRate = EvapVdot + DriftVdot + BlowDownVdot; - // A numerical check to keep from having very tiny negative water consumption values being reported - if ( EvapCond( EvapCoolNum ).EvapWaterConsumpRate < 0.0 ) EvapCond( EvapCoolNum ).EvapWaterConsumpRate = 0.0; } else { // The evap cooler is not running and does not change conditions from inlet to outlet EvapCond( EvapCoolNum ).OutletTemp = EvapCond( EvapCoolNum ).InletTemp; - EvapCond( EvapCoolNum ).OuletWetBulbTemp = EvapCond( EvapCoolNum ).InletWetBulbTemp; - EvapCond( EvapCoolNum ).OutletHumRat = EvapCond( EvapCoolNum ).InletHumRat; - EvapCond( EvapCoolNum ).OutletEnthalpy = EvapCond( EvapCoolNum ).InletEnthalpy; - + EvapCond( EvapCoolNum ).SecOutletTemp = EvapCond( EvapCoolNum ).SecInletTemp; + EvapCond( EvapCoolNum ).SecOutletHumRat = EvapCond( EvapCoolNum ).SecInletHumRat; + EvapCond( EvapCoolNum ).SecOutletEnthalpy = EvapCond( EvapCoolNum ).SecInletEnthalpy; + EvapCond( EvapCoolNum ).SecOutletMassFlowRate = EvapCond( EvapCoolNum ).SecInletMassFlowRate; EvapCond( EvapCoolNum ).EvapCoolerEnergy = 0.0; EvapCond( EvapCoolNum ).EvapCoolerPower = 0.0; EvapCond( EvapCoolNum ).EvapWaterConsumpRate = 0.0; + EvapCond( EvapCoolNum ).SecInletMassFlowRate = 0.0; + EvapCond( EvapCoolNum ).IECOperatingStatus = 0; + EvapCond( EvapCoolNum ).StageEff = 0.0; + } + } + + Real64 + CalcEvapCoolRDDSecFlowResidual( + Real64 const AirMassFlowSec, // secondary air mass flow rate in kg/s + FArray1< Real64 > const & Par // Par(2) is desired outlet temperature of Evap Cooler + ) + { + // SUBROUTINE INFORMATION: + // AUTHOR B. Nigusse + // DATE WRITTEN Sep 2014 + // MODIFIED na + // RE-ENGINEERED na + + // PURPOSE OF THIS SUBROUTINE: + // Indirect research special evaporative cooler part load operation: + // determines the secondary air flow rate + + // METHODOLOGY EMPLOYED: + // Uses regula falsi to minimize setpoint temperature residual to by varying the + // secondary air flow rate. + + // REFERENCES: + // + + // Using/Aliasing + // na + + // SUBROUTINE PARAMETER DEFINITIONS: + //na + + // INTERFACE BLOCK SPECIFICATIONS + // na + + // DERIVED TYPE DEFINITIONS + // na + + // SUBROUTINE LOCAL VARIABLE DECLARATIONS: + int EvapCoolIndex; // evaporative cooler index + int DryOrWetOperatingMode; // provides index for dry mode and wet mode operation + Real64 EDBTSecAirSide; // current entering dry bulb temperature of the secondary side + Real64 EWBTSecAirSide; // current entering wet bulb temperature of the secondary side + Real64 EHumRatSecAirSide; // current entering humidity ratio of the secondary side + Real64 OutletAirTemp; // evap Coler outlet air temperature + Real64 SysTempSetPoint; // evaporative cooler outlet setpoint temperature, drybulb + Real64 Residuum; // Residual to be minimized to zero + + EvapCoolIndex = int( Par( 1 ) ); + DryOrWetOperatingMode = int( Par( 2 ) ); + SysTempSetPoint = Par( 3 ); + EDBTSecAirSide = Par( 4 ); + EWBTSecAirSide = Par( 5 ); + EHumRatSecAirSide = Par( 6 ); + EvapCond( EvapCoolIndex ).SecInletMassFlowRate = AirMassFlowSec; + CalcIndirectRDDEvapCoolerOutletTemp( EvapCoolIndex, DryOrWetOperatingMode, AirMassFlowSec, EDBTSecAirSide, EWBTSecAirSide, EHumRatSecAirSide ); + OutletAirTemp = EvapCond( EvapCoolIndex ).OutletTemp; + Residuum = SysTempSetPoint - OutletAirTemp; + + return Residuum; + } + + void + CalcIndirectRDDEvapCoolerOutletTemp( + int const EvapCoolNum, + int const DryOrWetOperatingMode, + Real64 const AirMassFlowSec, + Real64 const EDBTSec, + Real64 const EWBTSec, + Real64 const EHumRatSec + ) + { + // SUBROUTINE INFORMATION: + // AUTHOR B. Nigusse + // DATE WRITTEN Sep 2014 + // MODIFIED na + // RE-ENGINEERED na + + // PURPOSE OF THIS SUBROUTINE: + // Indirect research special evaporative cooler perfomance: + // determines the IEC primary air outlet temperature + + // METHODOLOGY EMPLOYED: + // Uses effectiveness and energy balance equations to determine + // primary air outlet temperature. The dry and wet effectiveness + // values are used depending on operating modes. + + // REFERENCES: + // + + // Using/Aliasing + //using DataHVACGlobals::TempControlTol; + using CurveManager::CurveValue; + + // Locals + // SUBROUTINE ARGUMENT DEFINITIONS: + + // SUBROUTINE PARAMETER DEFINITIONS: + // na + + // INTERFACE BLOCK SPECIFICATIONS + // na + + // DERIVED TYPE DEFINITIONS + // na + + // SUBROUTINE LOCAL VARIABLE DECLARATIONS: + Real64 OutletTemp; // evaporative cooler current outlet air drybulb temperature + Real64 RhoAirSec; // density of secondary air at inlet condition + Real64 RhoAirSys; // density of primary air at inlet condition + Real64 EffectivenessDry; // dry coil effectiveness + Real64 EffectivenessWet; // wet coil effectiveness + Real64 TdbOutSysWetMin; // system( primary ) air drybulb outlet temperature minimum based on wet coil + Real64 TdbOutSysDryMin; // system (primary) air drybulb outlet temperature minimum based on dry coil + Real64 FlowRatio; // flow ratio based on current to the design of secondary air flow rate + Real64 EffModDryMode; // dry mode effectiveness modifier for flow ratio + Real64 EffModWetMode; // wet mode effectiveness modifier for flow ratio + Real64 CapFlowMin; // minimum capacity flow (massFlowRate * Specific Heat) of primary and secondary flows + Real64 CapFlowSys; // capacity flow (massFlowRate * Specific Heat) of primary air system + Real64 CapFlowSec; // capacity flow (massFlowRate * Specific Heat) of secondary system + Real64 CpAirSec; // specific heat of secondary air at inlet condition + Real64 CpAirSys; // specific heat of primary air at inlet condition + Real64 MassFlowRateTot; // current total mass flow rate of primary and secondary air mass flow rates + Real64 DesignMassFlowRateTot; // total design mass flow rate of primary and secondary air mass flow rates + + Real64 QHXRate; // total heat transfer rate + Real64 OutletTempSec; // secondary air outlet temperature + Real64 SecOutletAirHumRatSat; // secondary air humidity ratio corresponding to saturated temperature + Real64 SecOutletAirHumRat; // secondary air humidity ratio at constant temperature (Pure mass transfer) + Real64 SecOutletEnthalpy; // secondary air outlet enthalpy + Real64 SecOutletTSat; // secondary air saturated temperature corresponding to outlet enthalpy + + if ( EvapCond( EvapCoolNum ).InletMassFlowRate > 0.0 ) { + FlowRatio = AirMassFlowSec / EvapCond( EvapCoolNum ).InletMassFlowRate; // ratio of current secondary air flow to current primary air flow + } else { + FlowRatio = 1.0; + } + if ( AirMassFlowSec >= 0.0 ) { + RhoAirSec = PsyRhoAirFnPbTdbW( OutBaroPress, EDBTSec, EHumRatSec ); + RhoAirSys = PsyRhoAirFnPbTdbW( OutBaroPress, EvapCond( EvapCoolNum ).InletTemp, EvapCond( EvapCoolNum ).InletHumRat ); + if ( DryOrWetOperatingMode == DryModulated || DryOrWetOperatingMode == DryFull ) { + if ( EvapCond( EvapCoolNum ).DrybulbEffecCurveIndex > 0 ) { + EffModDryMode = CurveValue( EvapCond( EvapCoolNum ).DrybulbEffecCurveIndex, FlowRatio ); + } else { + EffModDryMode = 1.0; + } + EffectivenessDry = EvapCond( EvapCoolNum ).DryCoilMaxEfficiency * EffModDryMode; + EvapCond( EvapCoolNum ).StageEff = EffectivenessDry; + OutletTemp = EvapCond( EvapCoolNum ).InletTemp - EffectivenessDry * ( EvapCond( EvapCoolNum ).InletTemp - EDBTSec ); + if ( OutletTemp > EvapCond( EvapCoolNum ).InletTemp ) { + OutletTemp = EvapCond( EvapCoolNum ).InletTemp; + } + CpAirSys = PsyCpAirFnWTdb( EvapCond( EvapCoolNum ).InletHumRat, EvapCond( EvapCoolNum ).InletTemp ); + CapFlowSys = EvapCond( EvapCoolNum ).InletMassFlowRate * CpAirSys; + QHXRate = CapFlowSys * ( EvapCond( EvapCoolNum ).InletTemp - OutletTemp ); + CpAirSec = PsyCpAirFnWTdb( EHumRatSec, EDBTSec ); + CapFlowSec = AirMassFlowSec * CpAirSec; + OutletTempSec = EDBTSec + QHXRate / CapFlowSec; + if ( OutletTempSec >= EvapCond( EvapCoolNum ).InletTemp ) { + OutletTempSec = EvapCond( EvapCoolNum ).InletTemp - 0.2; + QHXRate = CapFlowSec * ( OutletTempSec - EDBTSec ); + OutletTemp = EvapCond( EvapCoolNum ).InletTemp - QHXRate / CapFlowSys; + } + EvapCond( EvapCoolNum ).SecOutletTemp = OutletTempSec; + } else if ( DryOrWetOperatingMode == WetModulated || DryOrWetOperatingMode == WetFull ) { + if ( EvapCond( EvapCoolNum ).WetbulbEffecCurveIndex > 0 ) { + EffModWetMode = CurveValue( EvapCond( EvapCoolNum ).WetbulbEffecCurveIndex, FlowRatio ); + } else { + EffModWetMode = 1.0; + } + EffectivenessWet = EvapCond( EvapCoolNum ).WetCoilMaxEfficiency * EffModWetMode; + EvapCond( EvapCoolNum ).StageEff = EffectivenessWet; + OutletTemp = EvapCond( EvapCoolNum ).InletTemp - EffectivenessWet * ( EvapCond( EvapCoolNum ).InletTemp - EWBTSec ); + if ( OutletTemp > EvapCond( EvapCoolNum ).InletTemp ) { + OutletTemp = EvapCond( EvapCoolNum ).InletTemp; + } + CpAirSys = PsyCpAirFnWTdb( EvapCond( EvapCoolNum ).InletHumRat, EvapCond( EvapCoolNum ).InletTemp ); + CapFlowSys = EvapCond( EvapCoolNum ).InletMassFlowRate * CpAirSys; + QHXRate = CapFlowSys * ( EvapCond( EvapCoolNum ).InletTemp - OutletTemp ); + SecOutletEnthalpy = EvapCond( EvapCoolNum ).SecInletEnthalpy + QHXRate / AirMassFlowSec; + SecOutletAirHumRat = PsyWFnTdbH( EDBTSec, SecOutletEnthalpy ); // assumes constant temperature moisture addition + // we may need check based on maximum allowed humidity ratio + EvapCond( EvapCoolNum ).SecOutletTemp = EDBTSec; + EvapCond( EvapCoolNum ).SecOutletHumRat = SecOutletAirHumRat; + EvapCond( EvapCoolNum ).SecOutletEnthalpy = SecOutletEnthalpy; + } else { + OutletTemp = EvapCond( EvapCoolNum ).InletTemp; + EvapCond( EvapCoolNum ).StageEff = 0.0; + } + } else { + OutletTemp = EvapCond( EvapCoolNum ).InletTemp; + EvapCond( EvapCoolNum ).StageEff = 0.0; } + // set results to into output variables + EvapCond( EvapCoolNum ).OutletTemp = OutletTemp; - // all of the mass flowrates are not changed across the evap cooler - EvapCond( EvapCoolNum ).OutletMassFlowRate = EvapCond( EvapCoolNum ).InletMassFlowRate; - EvapCond( EvapCoolNum ).OutletMassFlowRateMaxAvail = EvapCond( EvapCoolNum ).InletMassFlowRateMaxAvail; - EvapCond( EvapCoolNum ).OutletMassFlowRateMinAvail = EvapCond( EvapCoolNum ).InletMassFlowRateMinAvail; + } - // the pressure is not changed across the evap cooler - EvapCond( EvapCoolNum ).OutletPressure = EvapCond( EvapCoolNum ).InletPressure; + void + CalcSecondaryAirOutletCondition( + int const EvapCoolNum, + int const OperatingMode, + Real64 const AirMassFlowSec, + Real64 const EDBTSec, + Real64 const EWBTSec, + Real64 const EHumRatSec, + Real64 const QHXTotal, + Real64 & QHXLatent + ) { + // SUBROUTINE INFORMATION: + // AUTHOR B. Nigusse + // DATE WRITTEN Oct 2014 + // MODIFIED na + // RE-ENGINEERED na + + // PURPOSE OF THIS SUBROUTINE: + // Indirect research special evaporative cooler: determines the secondary air outlet conditions + + // METHODOLOGY EMPLOYED: + // applies energy balance equations to determine the secondary air outlet condition + // For wt operations assumes the secondary air leaves at at inlet temperature, i.e., + // latent heat transfer only. For dry operation the humdity ratio remains constant. + + // REFERENCES: + // CalculateWaterUseage routine of cooling towers for wet operation mode + + // Using/Aliasing + using Psychrometrics::PsyHfgAirFnWTdb; + using Psychrometrics::PsyCpAirFnWTdb; + using Psychrometrics::PsyWFnTdbTwbPb; + using Psychrometrics::PsyWFnTdbH; + using DataEnvironment::OutBaroPress; + + // Locals + // SUBROUTINE ARGUMENT DEFINITIONS: + + // SUBROUTINE PARAMETER DEFINITIONS: + // na + + // INTERFACE BLOCK SPECIFICATIONS + // na + + // DERIVED TYPE DEFINITIONS + // na + // SUBROUTINE LOCAL VARIABLE DECLARATIONS: + Real64 SecOutletAirHumRatSat; // secondary air humidity ratio corresponding to saturated temperature + Real64 SecOutletAirHumRat; // secondary air humidity ratio at the outlet node + Real64 SecOutletEnthalpy; // secondary air outlet enthalpy + Real64 SecOutletTempSat; // secondary air saturated temperature corresponding to outlet enthalpy + Real64 SecOutletTemp; // secondary air outlet temperature + Real64 CpAirSec; // specific heat of secondary air at inlet condition + Real64 hfg; // secondary air side enthaly of evaporation + + QHXLatent = 0.0; + if ( AirMassFlowSec > 0.0 ) { + if ( (OperatingMode == DryModulated || OperatingMode == DryFull ) ) { + EvapCond( EvapCoolNum ).SecOutletHumRat = EHumRatSec; + CpAirSec = PsyCpAirFnWTdb( EHumRatSec, EDBTSec ); + EvapCond( EvapCoolNum ).SecOutletTemp = EDBTSec + QHXTotal / AirMassFlowSec / CpAirSec; + EvapCond( EvapCoolNum ).SecOutletEnthalpy = PsyHFnTdbW( EvapCond( EvapCoolNum ).SecOutletTemp, EHumRatSec ); + EvapCond( EvapCoolNum ).SecOuletWetBulbTemp = PsyTwbFnTdbWPb( EvapCond( EvapCoolNum ).SecOutletTemp, EHumRatSec, OutBaroPress ); + } else if ( ( OperatingMode == WetModulated || OperatingMode == WetFull ) ) { + SecOutletEnthalpy = EvapCond( EvapCoolNum ).SecInletEnthalpy + QHXTotal / AirMassFlowSec; + SecOutletAirHumRat = PsyWFnTdbH( EDBTSec, SecOutletEnthalpy ); // assumes a constant temperature moisture addition + EvapCond( EvapCoolNum ).SecOutletTemp = EDBTSec; + EvapCond( EvapCoolNum ).SecOutletHumRat = SecOutletAirHumRat; + EvapCond( EvapCoolNum ).SecOutletEnthalpy = SecOutletEnthalpy; + EvapCond( EvapCoolNum ).SecOuletWetBulbTemp = PsyTwbFnTdbWPb( EvapCond( EvapCoolNum ).SecOutletTemp, SecOutletAirHumRat, OutBaroPress ); + hfg = PsyHfgAirFnWTdb( EHumRatSec, EDBTSec ); + QHXLatent = min( QHXTotal, AirMassFlowSec * ( SecOutletAirHumRat - EHumRatSec ) * hfg ); + } else { + // set results to into output variables + EvapCond( EvapCoolNum ).SecOutletTemp = EDBTSec; + EvapCond( EvapCoolNum ).SecOuletWetBulbTemp = EWBTSec; + EvapCond( EvapCoolNum ).SecOutletHumRat = EHumRatSec; + EvapCond( EvapCoolNum ).SecOutletEnthalpy = EvapCond( EvapCoolNum ).SecInletEnthalpy; + } + } else { + EvapCond( EvapCoolNum ).SecOutletTemp = EDBTSec; + EvapCond( EvapCoolNum ).SecOuletWetBulbTemp = EWBTSec; + EvapCond( EvapCoolNum ).SecOutletHumRat = EHumRatSec; + EvapCond( EvapCoolNum ).SecOutletEnthalpy = EvapCond( EvapCoolNum ).SecInletEnthalpy; + } + } + + Real64 + IndEvapCoolerPower( + int const EvapCoolIndex, // Unit index + int const DryWetMode, // dry or wet operating mode of evaporator cooler + Real64 const FlowRatio // secondary air flow fraction + ) { + + // SUBROUTINE INFORMATION: + // AUTHOR B. Nigusse + // DATE WRITTEN Sep 2014 + // MODIFIED na + // RE-ENGINEERED na + + // PURPOSE OF THIS SUBROUTINE: + // Calculates the Indirect Evaporative Cooler Total Electric Power + + // METHODOLOGY EMPLOYED: + // Scales the design fan and pump power depending on secondary air flow fraction + // and sums the two to determine the evaporative cooler total electric power. + + // REFERENCES: + // na + + // Using/Aliasing + using CurveManager::CurveValue; + + // Locals + // SUBROUTINE ARGUMENT DEFINITIONS: + + // SUBROUTINE PARAMETER DEFINITIONS: + // na + + // INTERFACE BLOCK SPECIFICATIONS + // na + + // DERIVED TYPE DEFINITIONS + // na + + // SUBROUTINE LOCAL VARIABLE DECLARATIONS: + Real64 FanPowerModCurveValue; // fan power modifier curve value + Real64 PumpPowerModCurveValue; // fan power modifier curve value + Real64 EvapCoolertotalPower; // current evapoartive cooler total electric power + + EvapCoolertotalPower = 0.0; + if ( FlowRatio > 0.0) { + if ( EvapCond( EvapCoolIndex ).FanPowerModifierCurveIndex > 0 ) { + FanPowerModCurveValue = CurveValue( EvapCond( EvapCoolIndex ).FanPowerModifierCurveIndex, FlowRatio ); + } else { + FanPowerModCurveValue = EvapCond( EvapCoolIndex ).PartLoadFract; + } + EvapCoolertotalPower += EvapCond( EvapCoolIndex ).IndirectFanPower * FanPowerModCurveValue; + if ( DryWetMode == WetModulated || DryWetMode == WetFull ) { + //Add the pump power to the total Evap Cooler power for wet operating mode + if ( EvapCond( EvapCoolIndex ).PumpPowerModifierCurveIndex > 0 ) { + PumpPowerModCurveValue = CurveValue( EvapCond( EvapCoolIndex ).PumpPowerModifierCurveIndex, FlowRatio ); + } else { + // linearly scale pump power using part-load-fraction when pump power modifier curve is not specified + PumpPowerModCurveValue = EvapCond( EvapCoolIndex ).PartLoadFract; + } + EvapCoolertotalPower += EvapCond( EvapCoolIndex ).IndirectRecircPumpPower * PumpPowerModCurveValue; + } + } else { + EvapCoolertotalPower = 0.0; + } + return EvapCoolertotalPower; } void @@ -1707,8 +2563,8 @@ namespace EvaporativeCoolers { // REFERENCES: // na - // USE STATEMENTS: - // na + // Using/Aliasing + using CurveManager::CurveValue; // Locals // SUBROUTINE ARGUMENT DEFINITIONS: @@ -1728,13 +2584,33 @@ namespace EvaporativeCoolers { Real64 TEWB; // Entering Wet Bulb Temperature Real64 RhoWater; Real64 PartLoad; + Real64 EffModCurveValue; // effectiveness modifier curve value + Real64 PumpPowerModCurveValue; // recirculation pump power modifier curve value + Real64 FlowRatio; // primary air flow frcation (current flow divided by the design flow rate) + Real64 MassFlowRateSysDesign; // primary air design mass flow rate + Real64 MassFlowRateSys; // primary air current mass flow rate + int InletNode; // inlet node number static Real64 BlowDownVdot( 0.0 ); static Real64 DriftVdot( 0.0 ); static Real64 EvapVdot( 0.0 ); - + bool EvapCoolerOperatingLimitFlag( false ); + + + EvapCoolerOperatingLimitFlag = false; + TEDB = EvapCond( EvapCoolNum ).InletTemp; + TEWB = EvapCond( EvapCoolNum ).InletWetBulbTemp; + if ( EvapCond( EvapCoolNum ).EvapCoolerOperationControlFlag ) { + if ( TEDB >= EvapCond( EvapCoolNum ).MinOATDBEvapCooler && ( TEWB <= EvapCond( EvapCoolNum ).MaxOATWBEvapCooler || TEDB <= EvapCond( EvapCoolNum ).MaxOATDBEvapCooler ) ) { + EvapCoolerOperatingLimitFlag = true; + } + } else { + EvapCoolerOperatingLimitFlag = true; + } + // If the Evaporative Cooler is operating there should be some mass flow rate // Also the evap cooler has to be scheduled to be available - if ( ( EvapCond( EvapCoolNum ).InletMassFlowRate > 0.0 ) && ( GetCurrentScheduleValue( EvapCond( EvapCoolNum ).SchedPtr ) > 0.0 ) ) { + if ( ( EvapCond( EvapCoolNum ).InletMassFlowRate > 0.0 ) && ( GetCurrentScheduleValue( EvapCond( EvapCoolNum ).SchedPtr ) > 0.0) && EvapCoolerOperatingLimitFlag ) { + //*************************************************************************** // TEMP LEAVING DRY BULB IS CALCULATED FROM SATURATION EFFICIENCY AS THE @@ -1742,7 +2618,24 @@ namespace EvaporativeCoolers { // ACROSS A DIRECT EVAPORATION COOLER. TEWB = EvapCond( EvapCoolNum ).InletWetBulbTemp; TEDB = EvapCond( EvapCoolNum ).InletTemp; - SatEff = EvapCond( EvapCoolNum ).DirectEffectiveness; + InletNode = EvapCond( EvapCoolNum ).InletNode; + if ( EvapCond( EvapCoolNum ).WetbulbEffecCurveIndex > 0 ) { + MassFlowRateSys = EvapCond( EvapCoolNum ).InletMassFlowRate; + MassFlowRateSysDesign = Node( InletNode ).MassFlowRateMax; + if ( MassFlowRateSysDesign > 0.0 ) { + if ( MassFlowRateSys > 0.0 ) { + FlowRatio = MassFlowRateSys / MassFlowRateSysDesign; + } else { + FlowRatio = 1.0; + } + } + EffModCurveValue = CurveValue( EvapCond( EvapCoolNum ).WetbulbEffecCurveIndex, FlowRatio ); + } else { + // if no curve specified assume constant effectiveness + EffModCurveValue = 1.0; + } + SatEff = EvapCond( EvapCoolNum ).DirectEffectiveness * EffModCurveValue; + EvapCond( EvapCoolNum ).StageEff = SatEff; PartLoad = EvapCond( EvapCoolNum ).PartLoadFract; if ( PartLoad == 1.0 ) { EvapCond( EvapCoolNum ).OutletTemp = TEDB - ( ( TEDB - TEWB ) * SatEff ); @@ -1774,8 +2667,13 @@ namespace EvaporativeCoolers { //*************************************************************************** // ENERGY CONSUMED BY THE RECIRCULATING PUMP //Add the pump energy to the total Evap Cooler energy comsumption - EvapCond( EvapCoolNum ).EvapCoolerPower = EvapCond( EvapCoolNum ).RecircPumpPower * PartLoad; - + if ( EvapCond( EvapCoolNum ).PumpPowerModifierCurveIndex > 0 ) { + PumpPowerModCurveValue = CurveValue( EvapCond( EvapCoolNum ).PumpPowerModifierCurveIndex, FlowRatio ); + } else { + // if no pump power modifier curve specified, then assume linear variation with part-load + PumpPowerModCurveValue = PartLoad; + } + EvapCond( EvapCoolNum ).EvapCoolerPower = EvapCond( EvapCoolNum ).RecircPumpPower * PumpPowerModCurveValue; //****************** // WATER CONSUMPTION IN m3 OF WATER FOR DIRECT // H2O [m3/sec] = Delta W[KgH2O/Kg air]*Mass Flow Air[Kg air] @@ -1829,8 +2727,7 @@ namespace EvaporativeCoolers { // ***************************************************************************** void - UpdateEvapCooler( int const EvapCoolNum ) - { + UpdateEvapCooler( int const EvapCoolNum ) { // SUBROUTINE INFORMATION: // AUTHOR Richard J. Liesen @@ -1866,11 +2763,16 @@ namespace EvaporativeCoolers { // SUBROUTINE LOCAL VARIABLE DECLARATIONS: int OutletNode; int InletNode; + int OutletNodeSec; + int InletNodeSec; static Real64 AvailWaterRate( 0.0 ); OutletNode = EvapCond( EvapCoolNum ).OutletNode; InletNode = EvapCond( EvapCoolNum ).InletNode; + InletNodeSec = EvapCond( EvapCoolNum ).SecondaryInletNode; + OutletNodeSec = EvapCond( EvapCoolNum ).SecondaryOutletNode; + // Set the outlet air nodes of the EvapCooler Node( OutletNode ).MassFlowRate = EvapCond( EvapCoolNum ).OutletMassFlowRate; Node( OutletNode ).MassFlowRateMaxAvail = EvapCond( EvapCoolNum ).OutletMassFlowRateMaxAvail; @@ -1879,6 +2781,17 @@ namespace EvaporativeCoolers { Node( OutletNode ).HumRat = EvapCond( EvapCoolNum ).OutletHumRat; Node( OutletNode ).Enthalpy = EvapCond( EvapCoolNum ).OutletEnthalpy; Node( OutletNode ).Press = EvapCond( EvapCoolNum ).OutletPressure; + + if ( EvapCond( EvapCoolNum ).SecondaryOutletNode > 0 ) { + // set outlet nodes of the secondary air side of the EvapCooler (mass Flow Rate Only) + if ( EvapCond( EvapCoolNum ).EvapCoolerType == iEvapCoolerInDirectRDDSpecial && EvapCond( EvapCoolNum ).EvapCoolerOperationControlFlag ) { + Node( OutletNodeSec ).Temp = EvapCond( EvapCoolNum ).SecOutletTemp; + Node( OutletNodeSec ).HumRat = EvapCond( EvapCoolNum ).SecOutletHumRat; + Node( OutletNodeSec ).Enthalpy = EvapCond( EvapCoolNum ).SecOutletEnthalpy; + Node( OutletNodeSec ).MassFlowRate = EvapCond( EvapCoolNum ).SecOutletMassFlowRate; + } + } + // Set the outlet nodes for properties that just pass through & not used Node( OutletNode ).Quality = Node( InletNode ).Quality; diff --git a/src/EnergyPlus/EvaporativeCoolers.hh b/src/EnergyPlus/EvaporativeCoolers.hh index 87e66ed75a5..cb4496d29c5 100644 --- a/src/EnergyPlus/EvaporativeCoolers.hh +++ b/src/EnergyPlus/EvaporativeCoolers.hh @@ -39,6 +39,14 @@ namespace EvaporativeCoolers { extern FArray1D_bool CheckZoneEvapUnitName; extern bool GetInputZoneEvapUnit; + // Indirect Evaporative Coolers Research Special Operating Modes + extern int const None; // the indirect evaporative cooler Research Special is scheduled off or turned off + extern int const DryModulated; // the evaporative cooler Research Special is modulated in Dry Mode + extern int const DryFull; // the evaporative cooler Research Special is run in full capacity in Dry Mode + extern int const DryWetModulated; // the evaporative cooler Research Special is modulated in Dry Mode or wet Mode + extern int const WetModulated; // the evaporative cooler Research Special is modulated in wet Mode + extern int const WetFull; // the evaporative cooler Research Special is run in full capacity in Wet Mode + // SUBROUTINE SPECIFICATIONS FOR MODULE EvapCoolers // Types @@ -65,6 +73,7 @@ namespace EvaporativeCoolers { int InletNode; int OutletNode; int SecondaryInletNode; // This is usually OA node feeding into the purge/secondary side + int SecondaryOutletNode; // This outlet node of the secondary side and ilet to the secondary fan int TertiaryInletNode; // This node is used to run building exhaust into purge side. Real64 InletMassFlowRate; // Inlet is primary process air node at inlet to cooler Real64 InletMassFlowRateMaxAvail; @@ -82,6 +91,11 @@ namespace EvaporativeCoolers { Real64 SecInletHumRat; Real64 SecInletEnthalpy; Real64 SecInletPressure; + Real64 SecOutletTemp; // secondary air outlet node drybulb temperature + Real64 SecOuletWetBulbTemp; // secondarr air outlet node wetbulb temperature + Real64 SecOutletHumRat; // secondarr air outlet node humidity ratio + Real64 SecOutletEnthalpy; // secondarr air outlet node enthalpy + Real64 SecOutletMassFlowRate; // Mass Flow through the secondary air side [kg/Sec] Real64 PadDepth; Real64 PadArea; Real64 RecircPumpPower; @@ -114,7 +128,24 @@ namespace EvaporativeCoolers { Real64 DesiredOutletTemp; // setpoint manager should set this Real64 PartLoadFract; // reduces cooling performance and associated fan power int DewPointBoundFlag; // report when indirect research special cooler is bound by dewpoint + Real64 MinOATDBEvapCooler; // Minimum outdoor air operating dry-bulb temperature for evaporative cooler + Real64 MaxOATDBEvapCooler; // Maximum outdoor air operating dry-bulb temperature for evaporative cooler + bool EvapCoolerOperationControlFlag; // turns the evap cooler on/off depending on the outdoor air temperature min and max limits + Real64 MaxOATWBEvapCooler; // Evaporative Operation Maximum Limit Outdoor Wetbulb Temperature + Real64 DryCoilMaxEfficiency; // Cooler Drybulb Design Effectiveness + Real64 IndirectFanPower; // Secondary Fan Design Power + Real64 FanSizingSpecificPower; // secondary fan sizing specific power in W/(m3/s) + Real64 RecircPumpSizingFactor; // water pump power sizing factor W/(m3/s) air + Real64 IndirectVolFlowScalingFactor; // secondary air flow sizing Factor + int WetbulbEffecCurveIndex; // wetbulb effectiveness modifier curve name as a function of flow fraction + int DrybulbEffecCurveIndex; // drybulb effectiveness modifier curve name as a function of flow fraction + int FanPowerModifierCurveIndex; // secondary fan power modifier curve name as a function of flow fraction + int PumpPowerModifierCurveIndex; // recirculating pump power modifier curve name as a function of flow fraction + int IECOperatingStatus; // operating mode status of indirect evaporative cooler research special (0: Off, 1: Dry, 2: Wet) + int IterationLimit; // used for Used for RegulaFalsi recurring error message error -1 + int IterationFailed; // Used for RegulaFalsi recurring error message error -2 // rather than wetbulb-depression approach + int EvapCoolerRDDOperatingMode; // the indirect evaporative cooler Research Special operating mode variable // Default Constructor EvapConditions() : @@ -134,6 +165,7 @@ namespace EvaporativeCoolers { InletNode( 0 ), OutletNode( 0 ), SecondaryInletNode( 0 ), + SecondaryOutletNode( 0 ), TertiaryInletNode( 0 ), InletMassFlowRate( 0.0 ), InletMassFlowRateMaxAvail( 0.0 ), @@ -151,6 +183,11 @@ namespace EvaporativeCoolers { SecInletHumRat( 0.0 ), SecInletEnthalpy( 0.0 ), SecInletPressure( 0.0 ), + SecOutletTemp( 0.0 ), + SecOuletWetBulbTemp( 0.0 ), + SecOutletHumRat( 0.0 ), + SecOutletEnthalpy( 0.0 ), + SecOutletMassFlowRate( 0.0 ), PadDepth( 0.0 ), PadArea( 0.0 ), RecircPumpPower( 0.0 ), @@ -181,148 +218,24 @@ namespace EvaporativeCoolers { EvapControlNodeNum( 0 ), DesiredOutletTemp( 0.0 ), PartLoadFract( 0.0 ), - DewPointBoundFlag( 0 ) - {} - - // Member Constructor - EvapConditions( - std::string const & EvapCoolerName, // Name of the EvapCooler - int const EquipIndex, - int const EvapCoolerType, // Type of the EvapCooler (parameters in DataGlobalConstants.cc - std::string const & EvapControlType, // Type of Control for the EvapCooler - std::string const & Schedule, // HeatingCoil Operation Schedule - int const SchedPtr, // Pointer to the correct schedule - Real64 const VolFlowRate, // Volume Flow Rate in Evap Cooler needed for calculating SatEff - Real64 const OutletTemp, - Real64 const OuletWetBulbTemp, - Real64 const OutletHumRat, - Real64 const OutletEnthalpy, - Real64 const OutletPressure, - Real64 const OutletMassFlowRate, // MassFlow through the EvapCooler being Simulated [kg/Sec] - Real64 const OutletMassFlowRateMaxAvail, // [kg/Sec] - Real64 const OutletMassFlowRateMinAvail, // [kg/Sec] - bool const InitFlag, - int const InletNode, - int const OutletNode, - int const SecondaryInletNode, // This is usually OA node feeding into the purge/secondary side - int const TertiaryInletNode, // This node is used to run building exhaust into purge side. - Real64 const InletMassFlowRate, // Inlet is primary process air node at inlet to cooler - Real64 const InletMassFlowRateMaxAvail, - Real64 const InletMassFlowRateMinAvail, - Real64 const InletTemp, - Real64 const InletWetBulbTemp, - Real64 const InletHumRat, - Real64 const InletEnthalpy, - Real64 const InletPressure, - Real64 const SecInletMassFlowRate, // Secondary inlet is for indirect coolers - Real64 const SecInletMassFlowRateMaxAvail, - Real64 const SecInletMassFlowRateMinAvail, - Real64 const SecInletTemp, - Real64 const SecInletWetBulbTemp, - Real64 const SecInletHumRat, - Real64 const SecInletEnthalpy, - Real64 const SecInletPressure, - Real64 const PadDepth, - Real64 const PadArea, - Real64 const RecircPumpPower, - Real64 const IndirectRecircPumpPower, - Real64 const IndirectPadDepth, - Real64 const IndirectPadArea, - Real64 const IndirectVolFlowRate, - Real64 const IndirectFanEff, - Real64 const IndirectFanDeltaPress, - Real64 const IndirectHXEffectiveness, - Real64 const DirectEffectiveness, // input saturation effectiveness for constant effectiveness model - Real64 const WetCoilMaxEfficiency, - Real64 const WetCoilFlowRatio, - Real64 const EvapCoolerEnergy, - Real64 const EvapCoolerPower, - int const EvapWaterSupplyMode, // where does water come from - std::string const & EvapWaterSupplyName, // name of water source e.g. water storage tank - int const EvapWaterSupTankID, - int const EvapWaterTankDemandARRID, - Real64 const DriftFraction, // excess water from drift as fraction of Evap Water Consumption rate - Real64 const BlowDownRatio, // excess water use for blowdown as solids ratio to be maintained - Real64 const EvapWaterConsumpRate, // Evap Water Consumption rate in m3/sec - Real64 const EvapWaterConsump, // Evap Water Consumption in m3 - Real64 const EvapWaterStarvMakupRate, // Evap water consumed but not really available from tank m3/s - Real64 const EvapWaterStarvMakup, // Evap water consumed but not really available from tank m3 - Real64 const SatEff, // Reporting for Direct Stage and Ind Dry Saturation Efficiency - Real64 const StageEff, // Reporting for Indirect Total Stage Efficiency - Real64 const DPBoundFactor, // in RDDSpecial efficency w.r.t. dewpoint - int const EvapControlNodeNum, // need to control to avoid over cooling - Real64 const DesiredOutletTemp, // setpoint manager should set this - Real64 const PartLoadFract, // reduces cooling performance and associated fan power - int const DewPointBoundFlag // report when indirect research special cooler is bound by dewpoint - ) : - EvapCoolerName( EvapCoolerName ), - EquipIndex( EquipIndex ), - EvapCoolerType( EvapCoolerType ), - EvapControlType( EvapControlType ), - Schedule( Schedule ), - SchedPtr( SchedPtr ), - VolFlowRate( VolFlowRate ), - OutletTemp( OutletTemp ), - OuletWetBulbTemp( OuletWetBulbTemp ), - OutletHumRat( OutletHumRat ), - OutletEnthalpy( OutletEnthalpy ), - OutletPressure( OutletPressure ), - OutletMassFlowRate( OutletMassFlowRate ), - OutletMassFlowRateMaxAvail( OutletMassFlowRateMaxAvail ), - OutletMassFlowRateMinAvail( OutletMassFlowRateMinAvail ), - InitFlag( InitFlag ), - InletNode( InletNode ), - OutletNode( OutletNode ), - SecondaryInletNode( SecondaryInletNode ), - TertiaryInletNode( TertiaryInletNode ), - InletMassFlowRate( InletMassFlowRate ), - InletMassFlowRateMaxAvail( InletMassFlowRateMaxAvail ), - InletMassFlowRateMinAvail( InletMassFlowRateMinAvail ), - InletTemp( InletTemp ), - InletWetBulbTemp( InletWetBulbTemp ), - InletHumRat( InletHumRat ), - InletEnthalpy( InletEnthalpy ), - InletPressure( InletPressure ), - SecInletMassFlowRate( SecInletMassFlowRate ), - SecInletMassFlowRateMaxAvail( SecInletMassFlowRateMaxAvail ), - SecInletMassFlowRateMinAvail( SecInletMassFlowRateMinAvail ), - SecInletTemp( SecInletTemp ), - SecInletWetBulbTemp( SecInletWetBulbTemp ), - SecInletHumRat( SecInletHumRat ), - SecInletEnthalpy( SecInletEnthalpy ), - SecInletPressure( SecInletPressure ), - PadDepth( PadDepth ), - PadArea( PadArea ), - RecircPumpPower( RecircPumpPower ), - IndirectRecircPumpPower( IndirectRecircPumpPower ), - IndirectPadDepth( IndirectPadDepth ), - IndirectPadArea( IndirectPadArea ), - IndirectVolFlowRate( IndirectVolFlowRate ), - IndirectFanEff( IndirectFanEff ), - IndirectFanDeltaPress( IndirectFanDeltaPress ), - IndirectHXEffectiveness( IndirectHXEffectiveness ), - DirectEffectiveness( DirectEffectiveness ), - WetCoilMaxEfficiency( WetCoilMaxEfficiency ), - WetCoilFlowRatio( WetCoilFlowRatio ), - EvapCoolerEnergy( EvapCoolerEnergy ), - EvapCoolerPower( EvapCoolerPower ), - EvapWaterSupplyMode( EvapWaterSupplyMode ), - EvapWaterSupplyName( EvapWaterSupplyName ), - EvapWaterSupTankID( EvapWaterSupTankID ), - EvapWaterTankDemandARRID( EvapWaterTankDemandARRID ), - DriftFraction( DriftFraction ), - BlowDownRatio( BlowDownRatio ), - EvapWaterConsumpRate( EvapWaterConsumpRate ), - EvapWaterConsump( EvapWaterConsump ), - EvapWaterStarvMakupRate( EvapWaterStarvMakupRate ), - EvapWaterStarvMakup( EvapWaterStarvMakup ), - SatEff( SatEff ), - StageEff( StageEff ), - DPBoundFactor( DPBoundFactor ), - EvapControlNodeNum( EvapControlNodeNum ), - DesiredOutletTemp( DesiredOutletTemp ), - PartLoadFract( PartLoadFract ), - DewPointBoundFlag( DewPointBoundFlag ) + DewPointBoundFlag( 0 ), + MinOATDBEvapCooler( 0.0 ), + MaxOATDBEvapCooler( 0.0 ), + EvapCoolerOperationControlFlag( false ), + MaxOATWBEvapCooler( 0.0 ), + DryCoilMaxEfficiency( 0.0 ), + IndirectFanPower( 0.0 ), + FanSizingSpecificPower( 0.0 ), + RecircPumpSizingFactor( 0.0 ), + IndirectVolFlowScalingFactor( 0.0 ), + WetbulbEffecCurveIndex( 0 ), + DrybulbEffecCurveIndex( 0 ), + FanPowerModifierCurveIndex( 0 ), + PumpPowerModifierCurveIndex( 0 ), + IECOperatingStatus( 0 ), + IterationLimit( 0 ), + IterationFailed( 0 ), + EvapCoolerRDDOperatingMode( 0 ) {} }; @@ -451,135 +364,6 @@ namespace EvaporativeCoolers { HVACSizingIndex( 0 ) {} - // Member Constructor - ZoneEvapCoolerUnitStruct( - std::string const & Name, // user identifier - int const ZoneNodeNum, - int const AvailSchedIndex, // pointer to local availability schedule - std::string const & AvailManagerListName, // Name of an availability manager list object - bool const UnitIsAvailable, - int const FanAvailStatus, - int const OAInletNodeNum, // outdoor air inlet node index - int const UnitOutletNodeNum, // Unit air outlet (to zone) node index - int const UnitReliefNodeNum, // Unit relief air (from zone) node index (optional) - std::string const & FanObjectClassName, - int const FanType_Num, - std::string const & FanName, - int const FanIndex, - Real64 const ActualFanVolFlowRate, - int const FanAvailSchedPtr, - int const FanInletNodeNum, - int const FanOutletNodeNum, - Real64 const DesignAirVolumeFlowRate, - Real64 const DesignAirMassFlowRate, - Real64 const DesignFanSpeedRatio, - Real64 const FanSpeedRatio, - int const FanLocation, - int const ControlSchemeType, - Real64 const TimeElapsed, - Real64 const ThrottlingRange, // temperature range for hystersis type tstat contorl [Delta C] - bool const IsOnThisTimestep, - bool const WasOnLastTimestep, - Real64 const ThresholdCoolingLoad, - std::string const & EvapCooler_1_ObjectClassName, - std::string const & EvapCooler_1_Name, - int const EvapCooler_1_Type_Num, - int const EvapCooler_1_Index, - bool const EvapCooler_1_AvailStatus, - std::string const & EvapCooler_2_ObjectClassName, - std::string const & EvapCooler_2_Name, - int const EvapCooler_2_Type_Num, - int const EvapCooler_2_Index, - bool const EvapCooler_2_AvailStatus, - Real64 const OAInletRho, // fills internal variable, current inlet air density [kg/m3] - Real64 const OAInletCp, // fills internal variable, current inlet air specific heat [J/kg-c] - Real64 const OAInletTemp, // fills internal variable, current inlet air temperature [C] - Real64 const OAInletHumRat, // fills internal variable, current inlet air humidity ratio [kg/kg] - Real64 const OAInletMassFlowRate, // fills internal variable, current inlet air mass flow rate [kg/s] - Real64 const UnitOutletTemp, // filled by actuator, component outlet temperature [C] - Real64 const UnitOutletHumRat, // filled by actuator, component outlet humidity ratio [kg/kg] - Real64 const UnitOutletMassFlowRate, // filled by actuator, component outlet mass flow rate [kg/s] - Real64 const UnitReliefTemp, // filled by actuator, component outlet temperature [C] - Real64 const UnitReliefHumRat, // filled by actuator, component outlet humidity ratio [kg/kg] - Real64 const UnitReliefMassFlowRate, // filled by actuator, component outlet mass flow rate [kg/s] - Real64 const UnitTotalCoolingRate, // unit output to zone, total cooling rate [W] - Real64 const UnitTotalCoolingEnergy, // unit output to zone, total cooling energy [J] - Real64 const UnitSensibleCoolingRate, // unit output to zone, sensible cooling rate [W] - Real64 const UnitSensibleCoolingEnergy, // unit output to zone, sensible cooling energy [J] - Real64 const UnitLatentHeatingRate, // unit output to zone, latent heating rate [W] - Real64 const UnitLatentHeatingEnergy, // unit output to zone, latent heating energy [J] - Real64 const UnitLatentCoolingRate, // unit output to zone, latent cooling rate [W] - Real64 const UnitLatentCoolingEnergy, // unit output to zone, latent cooling energy [J] - Real64 const UnitFanSpeedRatio, // unit fan speed ratio, dimensionless [ ] - int const UnitVSControlMaxIterErrorIndex, // regula falsi errors, fan speed iteration limits - int const UnitVSControlLimitsErrorIndex, // regula falsi errors, limits exceeded. - int const ZonePtr, // pointer to a zone served by an evaportive cooler unit - int const HVACSizingIndex // index of a HVACSizing object for an evaportive cooler unit - ) : - Name( Name ), - ZoneNodeNum( ZoneNodeNum ), - AvailSchedIndex( AvailSchedIndex ), - AvailManagerListName( AvailManagerListName ), - UnitIsAvailable( UnitIsAvailable ), - FanAvailStatus( FanAvailStatus ), - OAInletNodeNum( OAInletNodeNum ), - UnitOutletNodeNum( UnitOutletNodeNum ), - UnitReliefNodeNum( UnitReliefNodeNum ), - FanObjectClassName( FanObjectClassName ), - FanType_Num( FanType_Num ), - FanName( FanName ), - FanIndex( FanIndex ), - ActualFanVolFlowRate( ActualFanVolFlowRate ), - FanAvailSchedPtr( FanAvailSchedPtr ), - FanInletNodeNum( FanInletNodeNum ), - FanOutletNodeNum( FanOutletNodeNum ), - DesignAirVolumeFlowRate( DesignAirVolumeFlowRate ), - DesignAirMassFlowRate( DesignAirMassFlowRate ), - DesignFanSpeedRatio( DesignFanSpeedRatio ), - FanSpeedRatio( FanSpeedRatio ), - FanLocation( FanLocation ), - ControlSchemeType( ControlSchemeType ), - TimeElapsed( TimeElapsed ), - ThrottlingRange( ThrottlingRange ), - IsOnThisTimestep( IsOnThisTimestep ), - WasOnLastTimestep( WasOnLastTimestep ), - ThresholdCoolingLoad( ThresholdCoolingLoad ), - EvapCooler_1_ObjectClassName( EvapCooler_1_ObjectClassName ), - EvapCooler_1_Name( EvapCooler_1_Name ), - EvapCooler_1_Type_Num( EvapCooler_1_Type_Num ), - EvapCooler_1_Index( EvapCooler_1_Index ), - EvapCooler_1_AvailStatus( EvapCooler_1_AvailStatus ), - EvapCooler_2_ObjectClassName( EvapCooler_2_ObjectClassName ), - EvapCooler_2_Name( EvapCooler_2_Name ), - EvapCooler_2_Type_Num( EvapCooler_2_Type_Num ), - EvapCooler_2_Index( EvapCooler_2_Index ), - EvapCooler_2_AvailStatus( EvapCooler_2_AvailStatus ), - OAInletRho( OAInletRho ), - OAInletCp( OAInletCp ), - OAInletTemp( OAInletTemp ), - OAInletHumRat( OAInletHumRat ), - OAInletMassFlowRate( OAInletMassFlowRate ), - UnitOutletTemp( UnitOutletTemp ), - UnitOutletHumRat( UnitOutletHumRat ), - UnitOutletMassFlowRate( UnitOutletMassFlowRate ), - UnitReliefTemp( UnitReliefTemp ), - UnitReliefHumRat( UnitReliefHumRat ), - UnitReliefMassFlowRate( UnitReliefMassFlowRate ), - UnitTotalCoolingRate( UnitTotalCoolingRate ), - UnitTotalCoolingEnergy( UnitTotalCoolingEnergy ), - UnitSensibleCoolingRate( UnitSensibleCoolingRate ), - UnitSensibleCoolingEnergy( UnitSensibleCoolingEnergy ), - UnitLatentHeatingRate( UnitLatentHeatingRate ), - UnitLatentHeatingEnergy( UnitLatentHeatingEnergy ), - UnitLatentCoolingRate( UnitLatentCoolingRate ), - UnitLatentCoolingEnergy( UnitLatentCoolingEnergy ), - UnitFanSpeedRatio( UnitFanSpeedRatio ), - UnitVSControlMaxIterErrorIndex( UnitVSControlMaxIterErrorIndex ), - UnitVSControlLimitsErrorIndex( UnitVSControlLimitsErrorIndex ), - ZonePtr( ZonePtr ), - HVACSizingIndex( HVACSizingIndex ) - {} - }; struct ZoneEvapCoolerUnitFieldData @@ -649,6 +433,50 @@ namespace EvaporativeCoolers { void CalcResearchSpecialPartLoad( int & EvapCoolNum ); + void + CalcIndirectResearchSpecialEvapCoolerAdvanced( + int const EvapCoolNum, + Real64 const InletDryBulbTempSec, + Real64 const InletWetBulbTempSec, + Real64 const InletDewPointTempSec, + Real64 const InletHumRatioSec + ); + + void + CalcSecondaryAirOutletCondition( + int const EvapCoolNum, + int const OperatingMode, + Real64 const AirMassFlowSec, + Real64 const EDBTSec, + Real64 const EWBTSec, + Real64 const EHumRatSec, + Real64 const QHXTotal, + Real64 & QHXLatent + ); + + void + CalcIndirectRDDEvapCoolerOutletTemp( + int const EvapCoolNum, + int const DryOrWetOperatingMode, + Real64 const AirMassFlowSec, + Real64 const EDBTSec, + Real64 const EWBTSec, + Real64 const EHumRatSec + ); + + Real64 + CalcEvapCoolRDDSecFlowResidual( + Real64 const AirMassFlowSec, + FArray1< Real64 > const & Par //Par( 6 ) is desired temperature C + ); + + Real64 + IndEvapCoolerPower( + int const EvapCoolIndex, // Unit index + int const DryWetMode, // dry or wet operating mode of evaporator cooler + Real64 const FlowRatio // secondary air flow fraction + ); + void CalcIndirectResearchSpecialEvapCooler( int const EvapCoolNum ); diff --git a/src/EnergyPlus/InternalHeatGains.cc b/src/EnergyPlus/InternalHeatGains.cc index 94c7448787a..52c5bec73fa 100644 --- a/src/EnergyPlus/InternalHeatGains.cc +++ b/src/EnergyPlus/InternalHeatGains.cc @@ -2211,7 +2211,7 @@ namespace InternalHeatGains { AlphaName = BlankString; IHGNumbers = 0.0; - GetObjectItem( CurrentModuleObject, Item, AlphaName, NumAlpha, IHGNumbers, NumNumber, IOStat, lNumericFieldBlanks, lAlphaFieldBlanks, cAlphaFieldNames, cNumericFieldNames ); + GetObjectItem( CurrentModuleObject, Loop, AlphaName, NumAlpha, IHGNumbers, NumNumber, IOStat, lNumericFieldBlanks, lAlphaFieldBlanks, cAlphaFieldNames, cNumericFieldNames ); ZoneITEq( Loop ).Name = AlphaName( 1 ); ZoneITEq( Loop ).ZonePtr = FindItemInList( AlphaName( 2 ), Zone.Name( ), NumOfZones ); @@ -2223,6 +2223,9 @@ namespace InternalHeatGains { if ( lNumericFieldBlanks( 1 ) ) { ShowWarningError( RoutineName + CurrentModuleObject + "=\"" + AlphaName( 1 ) + "\", specifies " + cNumericFieldNames( 1 ) + ", but that field is blank. 0 IT Equipment will result." ); } + if ( lNumericFieldBlanks( 2 ) ) { + ShowWarningError( RoutineName + CurrentModuleObject + "=\"" + AlphaName( 1 ) + "\", specifies " + cNumericFieldNames( 2 ) + ", but that field is blank. 0 IT Equipment will result." ); + } } else if ( equipmentLevel == "WATTS/AREA" ) { if ( ZoneITEq( Loop ).ZonePtr != 0 ) { @@ -2241,11 +2244,9 @@ namespace InternalHeatGains { } } else { - if ( Item1 == 1 ) { - ShowSevereError( RoutineName + CurrentModuleObject + "=\"" + AlphaName( 1 ) + "\", invalid " + cAlphaFieldNames( 4 ) + ", value =" + AlphaName( 4 ) ); - ShowContinueError( "...Valid values are \"Watts/Unit\" or \"Watts/Area\"." ); - ErrorsFound = true; - } + ShowSevereError( RoutineName + CurrentModuleObject + "=\"" + AlphaName( 1 ) + "\", invalid " + cAlphaFieldNames( 3 ) + ", value =" + AlphaName( 3 ) ); + ShowContinueError( "...Valid values are \"Watts/Unit\" or \"Watts/Area\"." ); + ErrorsFound = true; }} if ( lAlphaFieldBlanks( 4 ) ) { diff --git a/src/EnergyPlus/OutputReportPredefined.cc b/src/EnergyPlus/OutputReportPredefined.cc index 7f195bd712c..326b34d8af4 100644 --- a/src/EnergyPlus/OutputReportPredefined.cc +++ b/src/EnergyPlus/OutputReportPredefined.cc @@ -89,6 +89,17 @@ namespace OutputReportPredefined { int pdchDXCoolCoilEERIP; // EER value in IP unit at AHRI std. 340/360 conditions [Btu/W-h] int pdchDXCoolCoilIEERIP; // IEER value in IP unit at AHRI std. 340/360 conditions + // DX Cooling Coil subtable per ANSI/ASHRAE Std 127 for Tests A, B, C and D + int pdstDXCoolCoil2; + int pdchDXCoolCoilNetCapSIA; // Standard Rated (Net) Cooling Capacity [W], Test A + int pdchDXCoolCoilElecPowerA; // Standard Rated Electric Power [W], Test A + int pdchDXCoolCoilNetCapSIB; // Standard Rated (Net) Cooling Capacity [W], Test B + int pdchDXCoolCoilElecPowerB; // Standard Rated Electric Power [W], Test B + int pdchDXCoolCoilNetCapSIC; // Standard Rated (Net) Cooling Capacity [W], Test C + int pdchDXCoolCoilElecPowerC; // Standard Rated Electric Power [W], Test C + int pdchDXCoolCoilNetCapSID; // Standard Rated (Net) Cooling Capacity [W], Test D + int pdchDXCoolCoilElecPowerD; // Standard Rated Electric Power [W], Test D + // VAV DX Cooling Ratings Details int pdstVAVDXCoolCoil; // details for Packaged VAV rating under AHRI 340/360 int pdchVAVDXCoolCoilType; @@ -877,6 +888,18 @@ namespace OutputReportPredefined { pdchDXCoolCoilSEERIP = newPreDefColumn( pdstDXCoolCoil, "SEER [Btu/W-h]" ); pdchDXCoolCoilIEERIP = newPreDefColumn( pdstDXCoolCoil, "IEER [Btu/W-h]" ); + // for DX Cooling Coil ASHRAE 127-12 Report + pdstDXCoolCoil2 = newPreDefSubTable( pdrEquip, "DX Cooling Coil ASHRAE 127 Standard Ratings Report" ); + pdchDXCoolCoilType = newPreDefColumn( pdstDXCoolCoil2, "DX Cooling Coil Type" ); + pdchDXCoolCoilNetCapSIA = newPreDefColumn( pdstDXCoolCoil2, "Rated Net Cooling Capacity Test A [W]" ); + pdchDXCoolCoilElecPowerA = newPreDefColumn( pdstDXCoolCoil2, "Rated Electric Power Test A [W]" ); + pdchDXCoolCoilNetCapSIB = newPreDefColumn( pdstDXCoolCoil2, "Rated Net Cooling Capacity Test B [W]" ); + pdchDXCoolCoilElecPowerB = newPreDefColumn( pdstDXCoolCoil2, "Rated Electric Power Test B [W]" ); + pdchDXCoolCoilNetCapSIC = newPreDefColumn( pdstDXCoolCoil2, "Rated Net Cooling Capacity Test C [W]" ); + pdchDXCoolCoilElecPowerC = newPreDefColumn( pdstDXCoolCoil2, "Rated Electric Power Test C [W]" ); + pdchDXCoolCoilNetCapSID = newPreDefColumn( pdstDXCoolCoil2, "Rated Net Cooling Capacity Test D [W]" ); + pdchDXCoolCoilElecPowerD = newPreDefColumn( pdstDXCoolCoil2, "Rated Electric Power Test D [W]" ); + pdstDXHeatCoil = newPreDefSubTable( pdrEquip, "DX Heating Coils" ); pdchDXHeatCoilType = newPreDefColumn( pdstDXHeatCoil, "DX Heating Coil Type" ); pdchDXHeatCoilHighCap = newPreDefColumn( pdstDXHeatCoil, "High Temperature Heating (net) Rating Capacity [W]" ); diff --git a/src/EnergyPlus/OutputReportPredefined.hh b/src/EnergyPlus/OutputReportPredefined.hh index 47f5e0547ad..aaa915c3af7 100644 --- a/src/EnergyPlus/OutputReportPredefined.hh +++ b/src/EnergyPlus/OutputReportPredefined.hh @@ -80,6 +80,17 @@ namespace OutputReportPredefined { extern int pdchDXCoolCoilEERIP; // EER value in IP unit at AHRI std. 340/360 conditions [Btu/W-h] extern int pdchDXCoolCoilIEERIP; // IEER value in IP unit at AHRI std. 340/360 conditions + // DX Cooling Coil subtable per ANSI/ASHRAE Std 127 for Tests A, B, C and D + extern int pdstDXCoolCoil2; + extern int pdchDXCoolCoilNetCapSIA; // Standard Rated (Net) Cooling Capacity [W], Test A + extern int pdchDXCoolCoilElecPowerA; // Standard Rated Electric Power [W], Test A + extern int pdchDXCoolCoilNetCapSIB; // Standard Rated (Net) Cooling Capacity [W], Test B + extern int pdchDXCoolCoilElecPowerB; // Standard Rated Electric Power [W], Test B + extern int pdchDXCoolCoilNetCapSIC; // Standard Rated (Net) Cooling Capacity [W], Test C + extern int pdchDXCoolCoilElecPowerC; // Standard Rated Electric Power [W], Test C + extern int pdchDXCoolCoilNetCapSID; // Standard Rated (Net) Cooling Capacity [W], Test D + extern int pdchDXCoolCoilElecPowerD; // Standard Rated Electric Power [W], Test D + // VAV DX Cooling Ratings Details extern int pdstVAVDXCoolCoil; // details for Packaged VAV rating under AHRI 340/360 extern int pdchVAVDXCoolCoilType; diff --git a/src/EnergyPlus/StandardRatings.cc b/src/EnergyPlus/StandardRatings.cc index b0545e28833..1db9a449ba1 100644 --- a/src/EnergyPlus/StandardRatings.cc +++ b/src/EnergyPlus/StandardRatings.cc @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -16,6 +17,7 @@ #include #include #include +#include #include namespace EnergyPlus { @@ -133,6 +135,16 @@ namespace StandardRatings { Real64 const HeatingOutdoorCoilInletAirDBTempH3Test( -8.33 ); // Outdoor air dry-bulb temp in degrees C (17F) // Test H3 (low and High Speed) Std. AHRI 210/240 + // ANSI/ASHRAE Standard 127-2012 -- Method of Testing for Rating Computer and Data Processing Room Unitary Air Conditioners + // Class 1 23.9°C( 75.0°F ) 23.9°C( 75.0°F ) 23.9°C( 75.0°F ) 23.9°C( 75.0°F ) + // Class 2 29.4°C( 85.0°F ) 29.4°C( 85.0°F ) 29.4°C( 85.0°F ) 29.4°C( 85.0°F ) + // Class 3 35.0°C( 95.0°F ) 35.0°C( 95.0°F ) 35.0°C( 95.0°F ) 35.0°C( 95.0°F ) + // Class 4 40.5°C( 105°F ) 40.5°C( 105°F ) 40.5°C( 105°F ) 40.5°C( 105°F ) + FArray1D < Real64 > const IndoorDBTempClassI2IV( 4, { 23.9, 29.4, 35.0, 40.5 } ); + Real64 const IndoorTDPA2D( 11.1 ); + //35.0°C( 95.0°F ) 26.7°C( 80.0°F ) 18.3°C( 65.0°F ) 4.4°C( 40.0°F ) + FArray1D < Real64 > const OutdoorDBTempAllClassA2D( 4, { 35.0, 26.7, 18.3, 4.4 } ); + // Functions void @@ -715,7 +727,8 @@ namespace StandardRatings { Optional< Real64 const > MinOATCompressor, // Minimum OAT for heat pump compressor operation [C] //Autodesk:OPTIONAL Used without PRESENT check Optional< Real64 const > OATempCompressorOn, // The outdoor temperature when the compressor is automatically turned //Autodesk:OPTIONAL Used without PRESENT check Optional_bool_const OATempCompressorOnOffBlank, // Flag used to determine low temperature cut out factor //Autodesk:OPTIONAL Used without PRESENT check - Optional_int_const DefrostControl // defrost control; 1=timed, 2=on-demand //Autodesk:OPTIONAL Used without PRESENT check + Optional_int_const DefrostControl, // defrost control; 1=timed, 2=on-demand //Autodesk:OPTIONAL Used without PRESENT check + Optional_bool_const ASHRAE127StdRprt // true if user wishes to report ASHRAE 127 standard ratings ) { @@ -891,6 +904,8 @@ namespace StandardRatings { static Real64 NetHeatingCapRatedHighTemp( 0.0 ); // Net Rated heating capacity at high temp [W] static Real64 NetHeatingCapRatedLowTemp( 0.0 ); // Net Rated heating capacity at low temp [W] FArray1D< Real64 > NetCoolingCapRated( ns ); // Net Cooling Coil capacity at Rated conditions, accounting for supply fan heat [W] + FArray1D< Real64 > NetTotCoolingCapRated( 16 ); // net total cooling capacity of DX Coils for the sixteen ASHRAE Std 127 Test conditions + FArray1D< Real64 > TotElectricPowerRated( 16 ); // total electric power of DX Coils for the sixteen ASHRAE Std 127 Test conditions NetCoolingCapRated = 0.0; @@ -906,6 +921,10 @@ namespace StandardRatings { // Writes the net rated cooling capacity, SEER, EER and IEER values to the EIO file and standard tabular output tables ReportDXCoilRating( DXCoilType, DXCoilName, DXCoilType_Num, NetCoolingCapRated( 1 ), SEER * ConvFromSIToIP, EER, EER * ConvFromSIToIP, IEER * ConvFromSIToIP, NetHeatingCapRatedHighTemp, NetHeatingCapRatedLowTemp, HSPF * ConvFromSIToIP, RegionNum ); + if ( ASHRAE127StdRprt ) { + DXCoolingCoilDataCenterStandardRatings( DXCoilName, DXCoilType, CapFTempCurveIndex( 1 ), CapFFlowCurveIndex( 1 ), EIRFTempCurveIndex( 1 ), EIRFFlowCurveIndex( 1 ), PLFFPLRCurveIndex( 1 ), RatedTotalCapacity( 1 ), RatedCOP( 1 ), RatedAirVolFlowRate( 1 ), FanPowerPerEvapAirFlowRateFromInput( 1 ), NetTotCoolingCapRated, TotElectricPowerRated ); + ReportDXCoolCoilDataCenterApplication( DXCoilType, DXCoilName, DXCoilType_Num, NetTotCoolingCapRated, TotElectricPowerRated ); + } } else if ( SELECT_CASE_var == CoilDX_HeatingEmpirical ) { // Coil:Heating:DX:SingleSpeed CheckCurveLimitsForStandardRatings( DXCoilName, DXCoilType, DXCoilType_Num, CapFTempCurveIndex( 1 ), CapFFlowCurveIndex( 1 ), EIRFTempCurveIndex( 1 ), EIRFFlowCurveIndex( 1 ), PLFFPLRCurveIndex( 1 ) ); @@ -1388,6 +1407,110 @@ namespace StandardRatings { } + void + DXCoolingCoilDataCenterStandardRatings( + std::string const & DXCoilName, // Name of DX coil for which HSPF is calculated + std::string const & DXCoilType, // Type of DX coil - heating or cooling + int const CapFTempCurveIndex, // Index for the capacity as a function of temperature modifier curve + int const CapFFlowCurveIndex, // Index for the capacity as a function of flow fraction modifier curve + int const EIRFTempCurveIndex, // Index for the EIR as a function of temperature modifier curve + int const EIRFFlowCurveIndex, // Index for the EIR as a function of flow fraction modifier curve + int const PLFFPLRCurveIndex, // Index for the EIR vs part-load ratio curve + Real64 const RatedTotalCapacity, // Rated gross total cooling capacity + Real64 const RatedCOP, // Rated gross COP + Real64 const RatedAirVolFlowRate, // air flow rate through the coil at rated condition + Real64 const FanPowerPerEvapAirFlowRateFromInput, // Fan power per air volume flow rate through the evaporator coil + FArray1D< Real64 > & NetCoolingCapRated, // net cooling capacity of single speed DX cooling coil + FArray1D< Real64 > & TotElectricPowerRated // total electric power including supply fan + ) { + + // SUBROUTINE INFORMATION: + // AUTHOR B. Nigusse, FSEC + // DATE WRITTEN October 2014 + // MODIFIED + // RE-ENGINEERED na + + // PURPOSE OF THIS SUBROUTINE: + // Calculates the standard ratings net cooling capacity and total electric power + // for room unitary air conditioners single speed DX cooling coils. + + // METHODOLOGY EMPLOYED: + // na + + // REFERENCES: + // ANSI/ASHRAE Standard 127-2012 - Method of Testing for Rating Computer and Data Processing + // Room Unitary Air Conditioners + + // Using/Aliasing + using CurveManager::CurveValue; + using Psychrometrics::PsyWFnTdpPb; + using Psychrometrics::PsyTwbFnTdbWPb; + using DataEnvironment::StdBaroPress; + + // Locals + // SUBROUTINE ARGUMENT DEFINITIONS: + // na + + // SUBROUTINE PARAMETER DEFINITIONS: + // na + + // INTERFACE BLOCK SPECIFICATIONS + // na + + // DERIVED TYPE DEFINITIONS + // na + + // SUBROUTINE LOCAL VARIABLE DECLARATIONS: + static Real64 TotCapFlowModFac( 0.0 ); // Total capacity modifier f(actual flow vs rated flow) for each speed [-] + static Real64 EIRFlowModFac( 0.0 ); // EIR modifier f(actual supply air flow vs rated flow) for each speed [-] + static Real64 TotCapTempModFac( 0.0 ); // Total capacity modifier (function of entering wetbulb, outside drybulb) [-] + static Real64 EIRTempModFac( 0.0 ); // EIR modifier (function of entering wetbulb, outside drybulb) [-] + static Real64 TotCoolingCapRated( 0.0 ); // Total Cooling Coil capacity (gross) at one of the rated test conditions [W] + static Real64 NetTotCoolingCapRated( 0.0 ); // Net Total Cooling Coil capacity at one of the rated test conditions, accounting for fan heat [W] + static Real64 TotalElecPowerRated( 0.0 ); // Net power consumption (Cond Fan+Compressor+Indoor Fan) at Rated test conditions [W] + static Real64 EIR( 0.0 ); // Energy Efficiency Ratio at AHRI test conditions for SEER [-] + Real64 FanPowerPerEvapAirFlowRate; // Fan power per air volume flow rate through the evaporator coil [W/(m3/s)] + + Real64 TWBIndoor; // indoor air dry bulb temperature + Real64 TDBOutdoor; // outdor air dry bulb temperature + int ClassNum; // class number (Class I, II, II, IV) + int TestNum; // test number (Test A, B, C, D) + int Num; // text number counter + + if ( FanPowerPerEvapAirFlowRateFromInput <= 0.0 ) { + FanPowerPerEvapAirFlowRate = DefaultFanPowerPerEvapAirFlowRate; + } else { + FanPowerPerEvapAirFlowRate = FanPowerPerEvapAirFlowRateFromInput; + } + if ( RatedTotalCapacity > 0.0 ) { + + for ( ClassNum = 1; ClassNum <= 4; ++ClassNum ) { + TWBIndoor = PsyTwbFnTdbWPb( IndoorDBTempClassI2IV( ClassNum ), PsyWFnTdpPb( IndoorTDPA2D, StdBaroPress ), StdBaroPress ); + for ( TestNum = 1; TestNum <= 4; ++TestNum ) { + TDBOutdoor = OutdoorDBTempAllClassA2D( TestNum ); + Num = ( ClassNum - 1 ) * 4 + TestNum; + // Standard Rating Net Cooling Capacity at Test A: + TotCapFlowModFac = CurveValue( CapFFlowCurveIndex, AirMassFlowRatioRated ); + TotCapTempModFac = CurveValue( CapFTempCurveIndex, TWBIndoor, TDBOutdoor ); + TotCoolingCapRated = RatedTotalCapacity * TotCapTempModFac * TotCapFlowModFac; + NetCoolingCapRated( Num ) = TotCoolingCapRated - FanPowerPerEvapAirFlowRate * RatedAirVolFlowRate; + // Standard Rating total electric power at Test A: + EIRTempModFac = CurveValue( EIRFTempCurveIndex, TWBIndoor, TDBOutdoor ); + EIRFlowModFac = CurveValue( EIRFFlowCurveIndex, AirMassFlowRatioRated ); + EIR = 0.0; + if ( RatedCOP > 0.0 ) { + EIR = EIRTempModFac * EIRFlowModFac / RatedCOP; + } + // Calculate net cooling capacity at Test A: + TotElectricPowerRated( Num ) = EIR * TotCoolingCapRated + FanPowerPerEvapAirFlowRate * RatedAirVolFlowRate; + } + } + } else { + ShowSevereError( "Standard Ratings: " + DXCoilType + ' ' + DXCoilName + " has zero rated total cooling capacity. Capacity and Power cannot be calculated." ); + } + + } + void MultiSpeedDXCoolingCoilStandardRatings( std::string const & DXCoilName, // Name of DX coil for which HSPF is calculated @@ -2047,6 +2170,95 @@ namespace StandardRatings { } + void + ReportDXCoolCoilDataCenterApplication( + std::string const & CompType, // Type of component + std::string const & CompName, // Name of component + int const CompTypeNum, // TypeNum of component + FArray1D< Real64 > & NetCoolingCapRated, // net cooling capacity of single speed DX cooling coil + FArray1D< Real64 > & TotElectricPowerRated // total electric power including supply fan + ) { + + // SUBROUTINE INFORMATION: + // AUTHOR Bereket Nigusse + // DATE WRITTEN October 2014 + // MODIFIED na + // + // RE-ENGINEERED na + + // PURPOSE OF THIS SUBROUTINE: + // This subroutine writes the standard rating (net) cooling capacity and Electric Power for + // for room unitary air conditioners single speed DX cooling coils to the "eio" and tabular + // output files. + + // METHODOLOGY EMPLOYED: + // na + + // REFERENCES: + // ANSI/ASHRAE Standard 127-2012 - Method of Testing for Rating Computer and Data Processing + // Room Unitary Air Conditioners + + // Using/Aliasing + using namespace DataPrecisionGlobals; + using DataGlobals::OutputFileInits; + using General::RoundSigDigits; + using namespace OutputReportPredefined; + using DataHVACGlobals::CoilDX_CoolingSingleSpeed; + + // Locals + // SUBROUTINE ARGUMENT DEFINITIONS: + // na + + // SUBROUTINE PARAMETER DEFINITIONS: + + // INTERFACE BLOCK SPECIFICATIONS + // na + + // DERIVED TYPE DEFINITIONS + // na + + // SUBROUTINE LOCAL VARIABLE DECLARATIONS: + static bool MyCoolOneTimeFlag( true ); + static bool MyHeatOneTimeFlag( true ); + int ClassNum; // class number (Class I, II, II, IV) + int Num; // text number counter + static std::string ClassName; + static std::string CompNameNew; + + // Formats + static gio::Fmt Format_101( "('! , Component Type, Component Name, Standard 127 Classification, ','Rated Net Cooling Capacity Test A {W}, ','Rated Total Electric Power Test A {W}, ','Rated Net Cooling Capacity Test B {W}, ','Rated Total Electric Power Test B {W}, ','Rated Net Cooling Capacity Test C {W}, ','Rated Total Electric Power Test C {W}, ','Rated Net Cooling Capacity Test D {W}, ','Rated Total Electric Power Test D {W} ')" ); + static gio::Fmt Format_102( "(' DX Cooling Coil ASHRAE 127 Standard Ratings Information, ',A,', ',A,', ',A,', ',A,', ',A,', ',A,', ',A,', ',A,', ',A,', ',A,', ',A)" ); + + + { auto const SELECT_CASE_var( CompTypeNum ); + + if ( SELECT_CASE_var == CoilDX_CoolingSingleSpeed ) { + if ( MyCoolOneTimeFlag ) { + gio::write( OutputFileInits, Format_101 ); + MyCoolOneTimeFlag = false; + } + for ( ClassNum = 1; ClassNum <= 4; ++ClassNum ) { + Num = ( ClassNum - 1 ) * 4; + ClassName = "Class " + RoundSigDigits(ClassNum); + CompNameNew = CompName + "(" + ClassName + ")"; + gio::write( OutputFileInits, Format_102 ) << CompType << CompName << ClassName << RoundSigDigits( NetCoolingCapRated( Num + 1 ), 1 ) << RoundSigDigits( TotElectricPowerRated( Num + 1 ), 1 ) << RoundSigDigits( NetCoolingCapRated( Num + 2 ), 1 ) << RoundSigDigits( TotElectricPowerRated( Num + 2 ), 1 ) << RoundSigDigits( NetCoolingCapRated( Num + 3 ), 1 ) << RoundSigDigits( TotElectricPowerRated( Num + 3 ), 1 ) << RoundSigDigits( NetCoolingCapRated( Num + 4 ), 1 ) << RoundSigDigits( TotElectricPowerRated( Num + 4 ), 1 ); + PreDefTableEntry( pdchDXCoolCoilType, CompNameNew, CompType ); + PreDefTableEntry( pdchDXCoolCoilNetCapSIA, CompNameNew, RoundSigDigits( NetCoolingCapRated( Num + 1 ), 1 ) ); + PreDefTableEntry( pdchDXCoolCoilElecPowerA, CompNameNew, RoundSigDigits( TotElectricPowerRated( Num + 1 ), 1 ) ); + PreDefTableEntry( pdchDXCoolCoilNetCapSIB, CompNameNew, RoundSigDigits( NetCoolingCapRated( Num + 2 ), 1 ) ); + PreDefTableEntry( pdchDXCoolCoilElecPowerB, CompNameNew, RoundSigDigits( TotElectricPowerRated( Num + 2 ), 1 ) ); + PreDefTableEntry( pdchDXCoolCoilNetCapSIC, CompNameNew, RoundSigDigits( NetCoolingCapRated( Num + 3 ), 1 ) ); + PreDefTableEntry( pdchDXCoolCoilElecPowerC, CompNameNew, RoundSigDigits( TotElectricPowerRated( Num + 3 ), 1 ) ); + PreDefTableEntry( pdchDXCoolCoilNetCapSID, CompNameNew, RoundSigDigits( NetCoolingCapRated( Num + 4 ), 1 ) ); + PreDefTableEntry( pdchDXCoolCoilElecPowerD, CompNameNew, RoundSigDigits( TotElectricPowerRated( Num + 4 ), 1 ) ); + addFootNoteSubTable( pdstDXCoolCoil2, "ANSI/ASHRAE Standard 127 includes supply fan heat effect and electric power." ); + } + + } else { + }} + + } + void CheckCurveLimitsForStandardRatings( std::string const & DXCoilName, // Name of DX coil for which HSPF is calculated diff --git a/src/EnergyPlus/StandardRatings.hh b/src/EnergyPlus/StandardRatings.hh index 1e6d93a9f95..5ee1880dbef 100644 --- a/src/EnergyPlus/StandardRatings.hh +++ b/src/EnergyPlus/StandardRatings.hh @@ -82,6 +82,14 @@ namespace StandardRatings { // Test H2 (low and High Speed) Std. AHRI 210/240 extern Real64 const HeatingOutdoorCoilInletAirDBTempH3Test; // Outdoor air dry-bulb temp in degrees C (17F) // Test H3 (low and High Speed) Std. AHRI 210/240 + + // ANSI/ASHRAE Standard 127-2012 -Method of Testing for Rating Computer and Data Processing Room Unitary Air Conditioners + // indoor dry bulb temperatures for tests A, B, C and D and Classes I, II, III, and IV + extern FArray1D < Real64 > const IndoorDBTempClassI2IV; + // indoor dew point temperature + extern Real64 const IndoorTDPA2D; + // outdoor dry bulb temperatures for tests A, B, C and D + extern FArray1D < Real64 > const OutdoorDBTempAllClassA2D; // Functions @@ -143,7 +151,8 @@ namespace StandardRatings { Optional< Real64 const > MinOATCompressor = _, // Minimum OAT for heat pump compressor operation [C] //Autodesk:OPTIONAL Used without PRESENT check Optional< Real64 const > OATempCompressorOn = _, // The outdoor temperature when the compressor is automatically turned //Autodesk:OPTIONAL Used without PRESENT check Optional_bool_const OATempCompressorOnOffBlank = _, // Flag used to determine low temperature cut out factor //Autodesk:OPTIONAL Used without PRESENT check - Optional_int_const DefrostControl = _ // defrost control; 1=timed, 2=on-demand //Autodesk:OPTIONAL Used without PRESENT check + Optional_int_const DefrostControl = _, // defrost control; 1=timed, 2=on-demand //Autodesk:OPTIONAL Used without PRESENT check + Optional_bool_const ASHRAE127StdRprt = _ // true if user wishes to report ASHRAE 127 standard ratings ); void @@ -185,6 +194,23 @@ namespace StandardRatings { Real64 & IEER // Integareted energy efficiency ratio of single speed DX cooling coil ); + void + DXCoolingCoilDataCenterStandardRatings( + std::string const & DXCoilName, // Name of DX coil for which HSPF is calculated + std::string const & DXCoilType, // Type of DX coil - heating or cooling + int const CapFTempCurveIndex, // Index for the capacity as a function of temperature modifier curve + int const CapFFlowCurveIndex, // Index for the capacity as a function of flow fraction modifier curve + int const EIRFTempCurveIndex, // Index for the EIR as a function of temperature modifier curve + int const EIRFFlowCurveIndex, // Index for the EIR as a function of flow fraction modifier curve + int const PLFFPLRCurveIndex, // Index for the EIR vs part-load ratio curve + Real64 const RatedTotalCapacity, // Rated gross total cooling capacity + Real64 const RatedCOP, // Rated gross COP + Real64 const RatedAirVolFlowRate, // air flow rate through the coil at rated condition + Real64 const FanPowerPerEvapAirFlowRateFromInput, // Fan power per air volume flow rate through the evaporator coil + FArray1D< Real64 > & NetCoolingCapRated, // net cooling capacity of single speed DX cooling coil + FArray1D< Real64 > & TotElectricPowerRated // total electric power including supply fan + ); + void MultiSpeedDXCoolingCoilStandardRatings( std::string const & DXCoilName, // Name of DX coil for which HSPF is calculated @@ -243,6 +269,15 @@ namespace StandardRatings { int const RegionNum // Region Number for which HSPF is calculated ); + void + ReportDXCoolCoilDataCenterApplication( + std::string const & CompType, // Type of component + std::string const & CompName, // Name of component + int const CompTypeNum, // TypeNum of component + FArray1D< Real64 > & NetCoolingCapRated, // net cooling capacity of single speed DX cooling coil + FArray1D< Real64 > & TotElectricPowerRated // total electric power including supply fan + ); + void CheckCurveLimitsForStandardRatings( std::string const & DXCoilName, // Name of DX coil for which HSPF is calculated diff --git a/src/Transition/CreateNewIDFUsingRulesV8_3_0.f90 b/src/Transition/CreateNewIDFUsingRulesV8_3_0.f90 index 8e99c3c222e..c41dccd9a68 100644 --- a/src/Transition/CreateNewIDFUsingRulesV8_3_0.f90 +++ b/src/Transition/CreateNewIDFUsingRulesV8_3_0.f90 @@ -119,6 +119,11 @@ SUBROUTINE CreateNewIDFUsingRules(EndOfFile,DiffOnly,InLfn,AskForInput,InputFile CHARACTER(len=MaxNameLength) :: OutScheduleName LOGICAL :: ErrFlag + + REAL :: IndirectOldFieldFive + REAL :: IndirectOldFieldSix + REAL :: IndirectNewFieldThirteen + CHARACTER(len=10) :: IndirectNewFieldString If (FirstTime) THEN ! do things that might be applicable only to this new version FirstTime=.false. @@ -375,6 +380,64 @@ SUBROUTINE CreateNewIDFUsingRules(EndOfFile,DiffOnly,InLfn,AskForInput,InputFile OutArgs(11:CurArgs-1) = InArgs(12:CurArgs) CurArgs = CurArgs - 1 + CASE('EVAPORATIVECOOLER:INDIRECT:RESEARCHSPECIAL') + ! data center hvac changes + nodiff = .false. + CALL GetNewObjectDefInIDD(ObjectName,NwNUmArgs,NwAorN,NwReqFld,NwObjMinFlds,NwFldNames,NwFldDefaults,NwFldUnits) + ! no change from F1-F3 + OutArgs(1:3) = InArgs(1:3) + ! remove old F4 + ! new F4, 5, 6 are blank + OutArgs(4:6) = '' + ! new F7 is old F5 + OutArgs(7) = InArgs(5) + ! new F8, F9 are blank + OutArgs(8:9) = '' + ! new F10 is old F6 + OutArgs(10) = InArgs(6) + ! new F11 is 1.0 + OutArgs(11) = '1.0' + ! Now we need to read the values of fields 7 and 8 for calculation, so need to cast to real + ! Numerics should be enforced by the input processor, so I'm not going to validate much here + READ(InArgs(7), *) IndirectOldFieldFive + READ(InArgs(8), *) IndirectOldFieldSix + ! new F12 is just an autosize field + OutArgs(12) = 'Autosize' + ! Calculate a new 13 from old 7 and 8 + ! Again relying on the input processor to protect from NaN + IndirectNewFieldThirteen = IndirectOldFieldSix / IndirectOldFieldFive + WRITE(IndirectNewFieldString,'(F10.5)') IndirectNewFieldThirteen + OutArgs(13) = TRIM(ADJUSTL(IndirectNewFieldString)) + ! new F14 is just blank + OutArgs(14) = '' + ! new F15,16 are shifted + OutArgs(15:16) = InArgs(9:10) + ! new F17 is just autosize + OutArgs(17) = 'Autosize' + ! new F17,19 are shifted, old F11 is removed entirely + OutArgs(18:19) = InArgs(12:13) + ! new F20 is a new outlet node...hopefully not needed + OutArgs(20) = '' + ! new fields F21-25 are shifted + OutArgs(21:25) = InArgs(14:18) + ! there are some additional new fields, but they are optional and intentionally blank + + CASE('EVAPORATIVECOOLER:DIRECT:RESEARCHSPECIAL') + ! data center hvac changes + nodiff = .false. + CALL GetNewObjectDefInIDD(ObjectName,NwNUmArgs,NwAorN,NwReqFld,NwObjMinFlds,NwFldNames,NwFldDefaults,NwFldUnits) + ! keep the same first few fields + OutArgs(1:3) = InArgs(1:3) + ! Add a blank + OutArgs(4) = '' + ! shift down one field + OutArgs(5) = InArgs(4) + ! add two blanks + OutArgs(6:7) = '' + ! shift the rest + OutArgs(8:13) = InArgs(5:10) + ! there are some additional new fields, but they are optional and intentionally blank + !!! Changes for report variables, meters, tables -- update names CASE('OUTPUT:VARIABLE') CALL GetNewObjectDefInIDD(ObjectName,NwNumArgs,NwAorN,NwReqFld,NwObjMinFlds,NwFldNames,NwFldDefaults,NwFldUnits) diff --git a/testfiles/1ZoneDataCenterCRAC_wPumpedDXCoolingCoil.idf b/testfiles/1ZoneDataCenterCRAC_wPumpedDXCoolingCoil.idf index 0bda32edfaf..2202a5f489c 100644 --- a/testfiles/1ZoneDataCenterCRAC_wPumpedDXCoolingCoil.idf +++ b/testfiles/1ZoneDataCenterCRAC_wPumpedDXCoolingCoil.idf @@ -405,8 +405,8 @@ , !- Basin Heater Setpoint Temperature , !- Basin Heater Operating Schedule Name , !- Sensible Heat Ratio Function of Temperature Curve Name - ; !- Sensible Heat Ratio Function of Flow Fraction Curve Name -! Yes; !- Report ASHRAE Standard 127 Performance Ratings + , !- Sensible Heat Ratio Function of Flow Fraction Curve Name + Yes; !- Report ASHRAE Standard 127 Performance Ratings Table:TwoIndependentVariables, Cool Cap Mod func of Temperature, !- Name @@ -967,7 +967,7 @@ ElectricEquipment:ITE:AirCooled, Until: 24:00,0.50, !- Field 23 Through: 7/31, !- Field 25 For: AllDays, !- Field 26 - Until: 24:00,0.1, !- Field 27 + Until: 24:00,0.1, !- Field 27 Through: 8/31, !- Field 29 For: AllDays, !- Field 30 Until: 24:00,1.0, !- Field 31 diff --git a/testfiles/2ZoneDataCenterHVAC_wEconomizer.idf b/testfiles/2ZoneDataCenterHVAC_wEconomizer.idf new file mode 100644 index 00000000000..6bcef2ffac8 --- /dev/null +++ b/testfiles/2ZoneDataCenterHVAC_wEconomizer.idf @@ -0,0 +1,3073 @@ +! 2ZoneDataCenterHVAC_wEconomizer.idf +! Basic file description: Basic test for Single Zone Air Loop System For Data Center Application. +! HVAC Components include: Air Economizer, Direct Evaporative Cooler, +! Indirect Evaporative Coolers, Single Speed DX Cooling Coil, +! Chilled Water Coil and VAV with No Reheat Air Terminal Unit. +! +! Mass walls. Regular slab floor. 2 Thermal Zones, and 2 supply plenum +! Regular roof. No Windows. +! +! Highlights: Example of single zone Airloop HVAC system for Data Center Application +! +! +! Simulation Location/Run: CHICAGO_OHARE_INTL_IL_USA, 2 design days, four run periods, +! Run Control executes four single day run periods (see RUN PERIOD object) +! +! Location: Chicago, IL +! +! Design Days: Chicago Ohare Intl Ap IL USA Annual Heating 99%, MaxDB=-16.6°C +! Chicago Ohare Intl Ap IL USA Annual Cooling (DB=>MWB) 1%, MaxDB=31.6°C MWB=23°C +! +! Run Period (Weather File): 1/1 - 12/31. +! +! Run Control: Zone sizing, weather file run period control +! +! Building: Fictional 2 zone building +! +! The building is oriented due north. +! +! Floor Area: 491.34 m2 +! Number of Stories: 1 +! +! Zone Description Details: +! +! (0,0,0) (15.24,15.24,0) ---> True North +! __________________________________ +! | | +! | West Zone | +! | Inlet Node |<--SPLITTER--< <--------| +! | | | +! | | AirLoopHVAC ( Data Center ) +! | Zone | | +! | Return Node |>----MXER----> >--------| +! | | +! | | +! |__________________________________| +! (15.24,0,0) (15.24,15.24,0) +! | | +! | | +! | | +! | East Zone | +! | Inlet Node |<--SPLITTER--< <--------| +! | | | +! | | AirLoopHVAC ( Data Center ) +! | Zone | | +! | Return Node |>----MXER----> >--------| +! | | +! | | +! | | +! |__________________________________| +! (32.24,0,0) (32.24,15.24,0) +! +! Internal gains description: NA +! +! Interzone Surfaces: None +! Internal Mass: None +! People: 0 Occupants +! Lights: 284 Watts +! Equipment: 0 Watts +! IT Equipment: 200 Watts/m2 +! Windows: 0 +! Detached Shading: None +! Daylight: None +! Natural Ventilation: None +! Compact Schedules: Yes +! Solar Distribution: MinimalShadowing +! +! HVAC: AirLoopHVAC serving a single thermal zone as a Data Center +! There are two data centers, and each data center is served +! by its own airloopHVAC. The air loops has a DX cooling coil +! and a chilled water cooling coil. +! +! For west zone (West data Center) the chilled water coil is +! always scheduled off. For East zone (East data Center) the +! DX cooling coil is always scheduled off. But the schedules +! can be modified to allow to the DX and Chilled water coils +! to run alternately during the day and night or during week +! days and week ends. +! +! Zonal Equipment: none +! +! +! Central Air Handling Equipment: Yes (Serving single zone) +! System Equipment Autosize: Yes +! Purchased Cooling: No +! Purchased Heating: No +! Purchased Chilled Water: No +! Purchased Hot Water: No +! Air Terminal Unit Type: AirTerminal:SingleDuct:VAV:NoReheat +! Evaporative Cooler: EvaporativeCooler:Direct:ResearchSpecial, EvaporativeCooler:Indirect:ResearchSpecial +! Coils: Coil:Cooling:DX:SingleSpeed, Coil:Cooling:Water +! Pumps: Pump:VariableSpeed +! Boilers: None +! Chillers: Chiller:Electric, +! Towers: CoolingTower:VariableSpeed, +! +! Results: +! Standard Reports: Variable Dictionary, Surfaces (dxf-wireframe), Meter File +! Timestep or Hourly Variables: Timestep +! Time bins Report: None +! HTML Report: None +! Environmental Emissions: None +! Utility Tariffs: None + + Version,8.2; + + Timestep,4; + + Building, + Simple One Zone (Wireframe DXF), !- Name + 0.0000000E+00, !- North Axis {deg} + Suburbs, !- Terrain + .04, !- Loads Convergence Tolerance Value + .004, !- Temperature Convergence Tolerance Value {deltaC} + MinimalShadowing, !- Solar Distribution + 30, !- Maximum Number of Warmup Days + 6; !- Minimum Number of Warmup Days + + HeatBalanceAlgorithm,ConductionTransferFunction; + + SurfaceConvectionAlgorithm:Inside,TARP; + + SurfaceConvectionAlgorithm:Outside,DOE-2; + + SimulationControl, + Yes, !- Do Zone Sizing Calculation + Yes, !- Do System Sizing Calculation + Yes, !- Do Plant Sizing Calculation + No, !- Run Simulation for Sizing Periods + Yes; !- Run Simulation for Weather File Run Periods + + RunPeriod, + WinterSeasonDay, !- Name + 1, !- Begin Month + 12, !- Begin Day of Month + 1, !- End Month + 14, !- End Day of Month + Tuesday, !- Day of Week for Start Day + Yes, !- Use Weather File Holidays and Special Days + Yes, !- Use Weather File Daylight Saving Period + No, !- Apply Weekend Holiday Rule + Yes, !- Use Weather File Rain Indicators + Yes; !- Use Weather File Snow Indicators + + RunPeriod, + SpringSeasonDay, !- Name + 4, !- Begin Month + 14, !- Begin Day of Month + 4, !- End Month + 16, !- End Day of Month + Tuesday, !- Day of Week for Start Day + Yes, !- Use Weather File Holidays and Special Days + Yes, !- Use Weather File Daylight Saving Period + No, !- Apply Weekend Holiday Rule + Yes, !- Use Weather File Rain Indicators + Yes; !- Use Weather File Snow Indicators + + RunPeriod, + SummerSeasonDay, !- Name + 7, !- Begin Month + 14, !- Begin Day of Month + 7, !- End Month + 16, !- End Day of Month + Tuesday, !- Day of Week for Start Day + Yes, !- Use Weather File Holidays and Special Days + Yes, !- Use Weather File Daylight Saving Period + No, !- Apply Weekend Holiday Rule + Yes, !- Use Weather File Rain Indicators + Yes; !- Use Weather File Snow Indicators + + RunPeriod, + AutumnSeasonDay, !- Name + 10, !- Begin Month + 12, !- Begin Day of Month + 10, !- End Month + 16, !- End Day of Month + Tuesday, !- Day of Week for Start Day + Yes, !- Use Weather File Holidays and Special Days + Yes, !- Use Weather File Daylight Saving Period + No, !- Apply Weekend Holiday Rule + Yes, !- Use Weather File Rain Indicators + Yes; !- Use Weather File Snow Indicators + + Site:Location, + CHICAGO_IL_USA TMY2-94846, !- Name + 41.78, !- Latitude {deg} + -87.75, !- Longitude {deg} + -6.00, !- Time Zone {hr} + 190.00; !- Elevation {m} + + +! CHICAGO_IL_USA Annual Heating 99% Design Conditions DB, MaxDB= -17.3°C + + SizingPeriod:DesignDay, + CHICAGO_IL_USA Annual Heating 99% Design Conditions DB, !- Name + 1, !- Month + 8, !- Day of Month + WinterDesignDay, !- Day Type + -17.3, !- Maximum Dry-Bulb Temperature {C} + 0.0, !- Daily Dry-Bulb Temperature Range {deltaC} + , !- Dry-Bulb Temperature Range Modifier Type + , !- Dry-Bulb Temperature Range Modifier Day Schedule Name + Wetbulb, !- Humidity Condition Type + -17.3, !- Wetbulb or DewPoint at Maximum Dry-Bulb {C} + , !- Humidity Condition Day Schedule Name + , !- Humidity Ratio at Maximum Dry-Bulb {kgWater/kgDryAir} + , !- Enthalpy at Maximum Dry-Bulb {J/kg} + , !- Daily Wet-Bulb Temperature Range {deltaC} + 99063., !- Barometric Pressure {Pa} + 4.9, !- Wind Speed {m/s} + 270, !- Wind Direction {deg} + No, !- Rain Indicator + No, !- Snow Indicator + No, !- Daylight Saving Time Indicator + ASHRAEClearSky, !- Solar Model Indicator + , !- Beam Solar Day Schedule Name + , !- Diffuse Solar Day Schedule Name + , !- ASHRAE Clear Sky Optical Depth for Beam Irradiance (taub) {dimensionless} + , !- ASHRAE Clear Sky Optical Depth for Diffuse Irradiance (taud) {dimensionless} + 0.0; !- Sky Clearness + +! CHICAGO_IL_USA Annual Cooling 1% Design Conditions, MaxDB= 31.5°C MCWB= 23.0°C + + SizingPeriod:DesignDay, + CHICAGO_IL_USA Annual Cooling 1% Design Conditions DB/MCWB, !- Name + 7, !- Month + 3, !- Day of Month + SummerDesignDay, !- Day Type + 31.5, !- Maximum Dry-Bulb Temperature {C} + 10.7, !- Daily Dry-Bulb Temperature Range {deltaC} + , !- Dry-Bulb Temperature Range Modifier Type + , !- Dry-Bulb Temperature Range Modifier Day Schedule Name + Wetbulb, !- Humidity Condition Type + 23.0, !- Wetbulb or DewPoint at Maximum Dry-Bulb {C} + , !- Humidity Condition Day Schedule Name + , !- Humidity Ratio at Maximum Dry-Bulb {kgWater/kgDryAir} + , !- Enthalpy at Maximum Dry-Bulb {J/kg} + , !- Daily Wet-Bulb Temperature Range {deltaC} + 99063., !- Barometric Pressure {Pa} + 5.3, !- Wind Speed {m/s} + 230, !- Wind Direction {deg} + No, !- Rain Indicator + No, !- Snow Indicator + No, !- Daylight Saving Time Indicator + ASHRAEClearSky, !- Solar Model Indicator + , !- Beam Solar Day Schedule Name + , !- Diffuse Solar Day Schedule Name + , !- ASHRAE Clear Sky Optical Depth for Beam Irradiance (taub) {dimensionless} + , !- ASHRAE Clear Sky Optical Depth for Diffuse Irradiance (taud) {dimensionless} + 1.0; !- Sky Clearness + + Site:GroundTemperature:Shallow,20.03,20.03,20.13,20.30,20.43,20.52,20.62,20.77,20.78,20.55,20.44,20.20; + Site:GroundTemperature:BuildingSurface,20.03,20.03,20.13,20.30,20.43,20.52,20.62,20.77,20.78,20.55,20.44,20.20; + Site:GroundTemperature:Deep,16.1,16.1,16.1,16.1,16.1,16.1,16.1,16.1,16.1,16.1,16.1,16.1; + + +! ******************* Materials and Constructions ****************************************** + + Material:NoMass, + R19LAYER, !- Name + Rough, !- Roughness + 3.344, !- Thermal Resistance {m2-K/W} + 0.9000000, !- Thermal Absorptance + 0.7500000, !- Solar Absorptance + 0.7500000; !- Visible Absorptance + + Material, + C5 - 4 IN HW CONCRETE, !- Name + MediumRough, !- Roughness + 0.1014984, !- Thickness {m} + 1.729577, !- Conductivity {W/m-K} + 2242.585, !- Density {kg/m3} + 836.8000, !- Specific Heat {J/kg-K} + 0.9000000, !- Thermal Absorptance + 0.6500000, !- Solar Absorptance + 0.6500000; !- Visible Absorptance + + Material, + 1IN Stucco, !- Name + Smooth, !- Roughness + 0.0253, !- Thickness {m} + 0.6918, !- Conductivity {W/m-K} + 1858.0000, !- Density {kg/m3} + 837.0000, !- Specific Heat {J/kg-K} + 0.9000, !- Thermal Absorptance + 0.9200, !- Solar Absorptance + 0.9200; !- Visible Absorptance + + Material, + 8IN Concrete HW, !- Name + MediumRough, !- Roughness + 0.2033, !- Thickness {m} + 1.7296, !- Conductivity {W/m-K} + 2243.0000, !- Density {kg/m3} + 837.0000, !- Specific Heat {J/kg-K} + 0.9000, !- Thermal Absorptance + 0.6500, !- Solar Absorptance + 0.6500; !- Visible Absorptance + + Material, + Wall Insulation [5], !- Name + MediumRough, !- Roughness + 0.0453, !- Thickness {m} + 0.0432, !- Conductivity {W/m-K} + 91.0000, !- Density {kg/m3} + 837.0000, !- Specific Heat {J/kg-K} + 0.9000, !- Thermal Absorptance + 0.5000, !- Solar Absorptance + 0.5000; !- Visible Absorptance + + Material, + 1/2IN Gypsum, !- Name + Smooth, !- Roughness + 0.0127, !- Thickness {m} + 0.1600, !- Conductivity {W/m-K} + 784.9000, !- Density {kg/m3} + 830.0000, !- Specific Heat {J/kg-K} + 0.9000, !- Thermal Absorptance + 0.9200, !- Solar Absorptance + 0.9200; !- Visible Absorptance + + Material, + C19 - 2 IN LIGHT WEIGHT CONCRETE, !- Name + MediumRough, !- Roughness + 5.0810162E-02, !- Thickness {m} + 0.1298912, !- Conductivity {W/m-K} + 480.5539, !- Density {kg/m3} + 836.8000, !- Specific Heat {J/kg-K} + 0.9000000, !- Thermal Absorptance + 0.2000000, !- Solar Absorptance + 0.2000000; !- Visible Absorptance + + Material, + E1 - 3 / 4 IN PLASTER OR GYP BOARD, !- Name + Smooth, !- Roughness + 1.9050000E-02, !- Thickness {m} + 0.7264224, !- Conductivity {W/m-K} + 1601.846, !- Density {kg/m3} + 836.8000, !- Specific Heat {J/kg-K} + 0.9000000, !- Thermal Absorptance + 0.9200000, !- Solar Absorptance + 0.9200000; !- Visible Absorptance + + Material, + C6 - 8 IN CLAY TILE, !- Name + Smooth, !- Roughness + 0.2033016, !- Thickness {m} + 0.5707605, !- Conductivity {W/m-K} + 1121.292, !- Density {kg/m3} + 836.8000, !- Specific Heat {J/kg-K} + 0.9000000, !- Thermal Absorptance + 0.8200000, !- Solar Absorptance + 0.8200000; !- Visible Absorptance + + + Construction, + ext-walls, !- Name + 1IN Stucco, !- Outside Layer + 8IN Concrete HW, !- Layer 2 + Wall Insulation [5], !- Layer 3 + 1/2IN Gypsum; !- Layer 4 + + Construction, + FLOOR, !- Name + C5 - 4 IN HW CONCRETE; !- Outside Layer + + Construction, + ROOF19, !- Name + R19LAYER; !- Outside Layer + + Construction, + PARTITION, !- Name + E1 - 3 / 4 IN PLASTER OR GYP BOARD, !- Outside Layer + C6 - 8 IN CLAY TILE, !- Layer 2 + E1 - 3 / 4 IN PLASTER OR GYP BOARD; !- Layer 3 + + Construction, + PLENUM FLOOR, !- Name + C19 - 2 IN LIGHT WEIGHT CONCRETE; !- Outside Layer + + Zone, + West Zone, !- Name + 0.0000000E+00, !- Direction of Relative North {deg} + 0.0000000E+00, !- X Origin {m} + 0.0000000E+00, !- Y Origin {m} + 0.0000000E+00, !- Z Origin {m} + 1, !- Type + 1, !- Multiplier + autocalculate, !- Ceiling Height {m} + autocalculate; !- Volume {m3} + + Zone, + East Zone, !- Name + 0.0000000E+00, !- Direction of Relative North {deg} + 0.0000000E+00, !- X Origin {m} + 0.0000000E+00, !- Y Origin {m} + 0.0000000E+00, !- Z Origin {m} + 1, !- Type + 1, !- Multiplier + autocalculate, !- Ceiling Height {m} + autocalculate; !- Volume {m3} + + Zone, + West Plenum, !- Name + 0.0000000E+00, !- Direction of Relative North {deg} + 0.0000000E+00, !- X Origin {m} + 0.0000000E+00, !- Y Origin {m} + 0.0000000E+00, !- Z Origin {m} + 1, !- Type + 1, !- Multiplier + autocalculate, !- Ceiling Height {m} + autocalculate; !- Volume {m3} + + Zone, + East Plenum, !- Name + 0.0000000E+00, !- Direction of Relative North {deg} + 0.0000000E+00, !- X Origin {m} + 0.0000000E+00, !- Y Origin {m} + 0.0000000E+00, !- Z Origin {m} + 1, !- Type + 1, !- Multiplier + autocalculate, !- Ceiling Height {m} + autocalculate; !- Volume {m3} + + GlobalGeometryRules, + UpperLeftCorner, !- Starting Vertex Position + CounterClockWise, !- Vertex Entry Direction + World; !- Coordinate System + + BuildingSurface:Detailed, + Zn001:Wall001W, !- Name + Wall, !- Surface Type + ext-walls, !- Construction Name + West Zone, !- Zone Name + Outdoors, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + SunExposed, !- Sun Exposure + WindExposed, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 0.00E+00,0.0E+00,4.572000, !- X,Y,Z ==> Vertex 1 {m} + 0.00E+00,0.0E+00,0.50E+00, !- X,Y,Z ==> Vertex 2 {m} + 15.24000,0.0E+00,0.50E+00, !- X,Y,Z ==> Vertex 3 {m} + 15.24000,0.0E+00,4.572000; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + Zn001:Wall001E, !- Name + Wall, !- Surface Type + ext-walls, !- Construction Name + East Zone, !- Zone Name + Outdoors, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + SunExposed, !- Sun Exposure + WindExposed, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 15.24000,0.0E+00,4.572000, !- X,Y,Z ==> Vertex 1 {m} + 15.24000,0.0E+00,0.50E+00, !- X,Y,Z ==> Vertex 2 {m} + 32.24000,0.0E+00,0.50E+00, !- X,Y,Z ==> Vertex 3 {m} + 32.24000,0.0E+00,4.572000; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + PZn001:Wall001W, !- Name + Wall, !- Surface Type + ext-walls, !- Construction Name + West Plenum, !- Zone Name + Outdoors, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + SunExposed, !- Sun Exposure + WindExposed, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 0.00E+00,0.000E+00,0.50, !- X,Y,Z ==> Vertex 1 {m} + 0.00E+00,0.000E+00,0.00, !- X,Y,Z ==> Vertex 2 {m} + 15.24000,0.000E+00,0.00, !- X,Y,Z ==> Vertex 3 {m} + 15.24000,0.000E+00,0.50; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + PZn001:Wall001E, !- Name + Wall, !- Surface Type + ext-walls, !- Construction Name + East Plenum, !- Zone Name + Outdoors, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + SunExposed, !- Sun Exposure + WindExposed, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 15.24000,0.000E+00,0.50, !- X,Y,Z ==> Vertex 1 {m} + 15.24000,0.000E+00,0.00, !- X,Y,Z ==> Vertex 2 {m} + 32.24000,0.000E+00,0.00, !- X,Y,Z ==> Vertex 3 {m} + 32.24000,0.000E+00,0.50; !- X,Y,Z ==> Vertex 4 {m} + + + BuildingSurface:Detailed, + Zn001:Wall002, !- Name + Wall, !- Surface Type + ext-walls, !- Construction Name + East Zone, !- Zone Name + Outdoors, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + SunExposed, !- Sun Exposure + WindExposed, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 32.24000,0.00E+00,4.5720, !- X,Y,Z ==> Vertex 1 {m} + 32.24000,0.00E+00,0.50E+00, !- X,Y,Z ==> Vertex 2 {m} + 32.24000,15.24000,0.50E+00, !- X,Y,Z ==> Vertex 3 {m} + 32.24000,15.24000,4.572000; !- X,Y,Z ==> Vertex 4 {m} + + + BuildingSurface:Detailed, + PZn001:Wall002, !- Name + Wall, !- Surface Type + ext-walls, !- Construction Name + East Plenum, !- Zone Name + Outdoors, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + SunExposed, !- Sun Exposure + WindExposed, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 32.24000,0.00E+00,0.50, !- X,Y,Z ==> Vertex 1 {m} + 32.24000,0.00E+00,0.0E+00, !- X,Y,Z ==> Vertex 2 {m} + 32.24000,15.24000,0.0E+00, !- X,Y,Z ==> Vertex 3 {m} + 32.24000,15.24000,0.50; !- X,Y,Z ==> Vertex 4 {m} + + + BuildingSurface:Detailed, + Zn001:Wall003W, !- Name + Wall, !- Surface Type + ext-walls, !- Construction Name + West Zone, !- Zone Name + Outdoors, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + SunExposed, !- Sun Exposure + WindExposed, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 15.2400,15.240,4.572000, !- X,Y,Z ==> Vertex 1 {m} + 15.2400,15.240,0.50E+00, !- X,Y,Z ==> Vertex 2 {m} + 0.0E+00,15.240,0.50E+00, !- X,Y,Z ==> Vertex 3 {m} + 0.0E+00,15.240,4.572000; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + Zn001:Wall003E, !- Name + Wall, !- Surface Type + ext-walls, !- Construction Name + East Zone, !- Zone Name + Outdoors, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + SunExposed, !- Sun Exposure + WindExposed, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 32.2400,15.240,4.572000, !- X,Y,Z ==> Vertex 1 {m} + 32.2400,15.240,0.50E+00, !- X,Y,Z ==> Vertex 2 {m} + 15.2400,15.240,0.50E+00, !- X,Y,Z ==> Vertex 3 {m} + 15.2400,15.240,4.572000; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + PZn001:Wall003W, !- Name + Wall, !- Surface Type + ext-walls, !- Construction Name + West Plenum, !- Zone Name + Outdoors, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + SunExposed, !- Sun Exposure + WindExposed, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 15.2400,15.240,0.50000, !- X,Y,Z ==> Vertex 1 {m} + 15.2400,15.240,0.0E+00, !- X,Y,Z ==> Vertex 2 {m} + 0.0E+00,15.240,0.0E+00, !- X,Y,Z ==> Vertex 3 {m} + 0.0E+00,15.240,0.50000; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + PZn001:Wall003E, !- Name + Wall, !- Surface Type + ext-walls, !- Construction Name + East Plenum, !- Zone Name + Outdoors, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + SunExposed, !- Sun Exposure + WindExposed, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 32.2400,15.240,0.50000, !- X,Y,Z ==> Vertex 1 {m} + 32.2400,15.240,0.0E+00, !- X,Y,Z ==> Vertex 2 {m} + 15.2400,15.240,0.0E+00, !- X,Y,Z ==> Vertex 3 {m} + 15.2400,15.240,0.50000; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + Zn001:Wall004, !- Name + Wall, !- Surface Type + ext-walls, !- Construction Name + West Zone, !- Zone Name + Outdoors, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + SunExposed, !- Sun Exposure + WindExposed, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 0.00E+00,15.240,4.572000, !- X,Y,Z ==> Vertex 1 {m} + 0.00E+00,15.240,0.50E+00, !- X,Y,Z ==> Vertex 2 {m} + 0.00E+00,0.0E+0,0.50E+00, !- X,Y,Z ==> Vertex 3 {m} + 0.00E+00,0.0E+0,4.572000; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + PZn001:Wall004, !- Name + Wall, !- Surface Type + ext-walls, !- Construction Name + West Plenum, !- Zone Name + Outdoors, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + SunExposed, !- Sun Exposure + WindExposed, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 0.0E+00,15.240,0.5000, !- X,Y,Z ==> Vertex 1 {m} + 0.0E+00,15.240,0.0E+00, !- X,Y,Z ==> Vertex 2 {m} + 0.0E+00,0.0E+0,0.0E+00, !- X,Y,Z ==> Vertex 3 {m} + 0.0E+00,0.0E+0,0.5000; !- X,Y,Z ==> Vertex 4 {m} + + + BuildingSurface:Detailed, + Zn001:Flr001W, !- Name + Floor, !- Surface Type + Plenum Floor, !- Construction Name + West Zone, !- Zone Name + Surface, !- Outside Boundary Condition + PZn001:CeilingW, !- Outside Boundary Condition Object + NoSun, !- Sun Exposure + NoWind, !- Wind Exposure + 1.000000, !- View Factor to Ground + 4, !- Number of Vertices + 15.240, 0.000000, 0.50, !- X,Y,Z ==> Vertex 1 {m} + 0.0000, 0.000000, 0.50, !- X,Y,Z ==> Vertex 2 {m} + 0.0000, 15.24000, 0.50, !- X,Y,Z ==> Vertex 3 {m} + 15.240, 15.24000, 0.50; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + Zn001:Flr001E, !- Name + Floor, !- Surface Type + Plenum Floor, !- Construction Name + East Zone, !- Zone Name + Surface, !- Outside Boundary Condition + PZn001:CeilingE, !- Outside Boundary Condition Object + NoSun, !- Sun Exposure + NoWind, !- Wind Exposure + 1.000000, !- View Factor to Ground + 4, !- Number of Vertices + 32.240, 0.000000, 0.50, !- X,Y,Z ==> Vertex 1 {m} + 15.240, 0.000000, 0.50, !- X,Y,Z ==> Vertex 2 {m} + 15.240, 15.24000, 0.50, !- X,Y,Z ==> Vertex 3 {m} + 32.240, 15.24000, 0.50; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + PZn001:CeilingW, !- Name + Roof, !- Surface Type + Plenum Floor, !- Construction Name + West Plenum, !- Zone Name + Surface, !- Outside Boundary Condition + Zn001:Flr001W, !- Outside Boundary Condition Object + NoSun, !- Sun Exposure + NoWind, !- Wind Exposure + 1.000000, !- View Factor to Ground + 4, !- Number of Vertices + 15.240, 0.000000, 0.50, !- X,Y,Z ==> Vertex 1 {m} + 15.240, 15.24000, 0.50, !- X,Y,Z ==> Vertex 4 {m} + 0.0000, 15.24000, 0.50, !- X,Y,Z ==> Vertex 3 {m} + 0.0000, 0.000000, 0.50; !- X,Y,Z ==> Vertex 2 {m} + + BuildingSurface:Detailed, + PZn001:CeilingE, !- Name + Roof, !- Surface Type + Plenum Floor, !- Construction Name + East Plenum, !- Zone Name + Surface, !- Outside Boundary Condition + Zn001:Flr001E, !- Outside Boundary Condition Object + NoSun, !- Sun Exposure + NoWind, !- Wind Exposure + 1.000000, !- View Factor to Ground + 4, !- Number of Vertices + 32.240, 0.000000, 0.50, !- X,Y,Z ==> Vertex 1 {m} + 32.240, 15.24000, 0.50, !- X,Y,Z ==> Vertex 4 {m} + 15.240, 15.24000, 0.50, !- X,Y,Z ==> Vertex 3 {m} + 15.240, 0.000000, 0.50; !- X,Y,Z ==> Vertex 2 {m} + + BuildingSurface:Detailed, + PZn001:Flr001W, !- Name + Floor, !- Surface Type + FLOOR, !- Construction Name + West Plenum, !- Zone Name + Ground, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + NoSun, !- Sun Exposure + NoWind, !- Wind Exposure + 1.000000, !- View Factor to Ground + 4, !- Number of Vertices + 15.240, 0.000000, 0.00, !- X,Y,Z ==> Vertex 1 {m} + 0.0000, 0.000000, 0.00, !- X,Y,Z ==> Vertex 2 {m} + 0.0000, 15.24000, 0.00, !- X,Y,Z ==> Vertex 3 {m} + 15.240, 15.24000, 0.00; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + PZn001:Flr001E, !- Name + Floor, !- Surface Type + FLOOR, !- Construction Name + East Plenum, !- Zone Name + Ground, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + NoSun, !- Sun Exposure + NoWind, !- Wind Exposure + 1.000000, !- View Factor to Ground + 4, !- Number of Vertices + 32.240, 0.000000, 0.00, !- X,Y,Z ==> Vertex 1 {m} + 15.240, 0.000000, 0.00, !- X,Y,Z ==> Vertex 2 {m} + 15.240, 15.24000, 0.00, !- X,Y,Z ==> Vertex 3 {m} + 32.240, 15.24000, 0.00; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + Zn001:Roof001W, !- Name + Roof, !- Surface Type + ROOF19, !- Construction Name + West Zone, !- Zone Name + Outdoors, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + SunExposed, !- Sun Exposure + WindExposed, !- Wind Exposure + 0.0000000E+00, !- View Factor to Ground + 4, !- Number of Vertices + 0.000000,15.2400,4.572, !- X,Y,Z ==> Vertex 1 {m} + 0.000000,0.00000,4.572, !- X,Y,Z ==> Vertex 2 {m} + 15.24000,0.00000,4.572, !- X,Y,Z ==> Vertex 3 {m} + 15.24000,15.2400,4.572; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + Zn001:Roof001E, !- Name + Roof, !- Surface Type + ROOF19, !- Construction Name + East Zone, !- Zone Name + Outdoors, !- Outside Boundary Condition + , !- Outside Boundary Condition Object + SunExposed, !- Sun Exposure + WindExposed, !- Wind Exposure + 0.0000000E+00, !- View Factor to Ground + 4, !- Number of Vertices + 15.24000,15.2400,4.572, !- X,Y,Z ==> Vertex 1 {m} + 15.24000,0.00000,4.572, !- X,Y,Z ==> Vertex 2 {m} + 32.24000,0.00000,4.572, !- X,Y,Z ==> Vertex 3 {m} + 32.24000,15.2400,4.572; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + Zn001:Partiton001, !- Name + Wall, !- Surface Type + PARTITION, !- Construction Name + West Zone, !- Zone Name + Surface, !- Outside Boundary Condition + Zn002:Partiton001, !- Outside Boundary Condition Object + NoSun, !- Sun Exposure + NoWind, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 15.24000,0.00E+00,4.5720, !- X,Y,Z ==> Vertex 1 {m} + 15.24000,0.00E+00,0.50E+00, !- X,Y,Z ==> Vertex 2 {m} + 15.24000,15.24000,0.50E+00, !- X,Y,Z ==> Vertex 3 {m} + 15.24000,15.24000,4.572000; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + PZn001:Partiton001, !- Name + Wall, !- Surface Type + PARTITION, !- Construction Name + West Plenum, !- Zone Name + Surface, !- Outside Boundary Condition + PZn001:Partiton001, !- Outside Boundary Condition Object + NoSun, !- Sun Exposure + NoWind, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 15.24000,0.00E+00,0.50, !- X,Y,Z ==> Vertex 1 {m} + 15.24000,0.00E+00,0.0E+00, !- X,Y,Z ==> Vertex 2 {m} + 15.24000,15.24000,0.0E+00, !- X,Y,Z ==> Vertex 3 {m} + 15.24000,15.24000,0.50; !- X,Y,Z ==> Vertex 4 {m} + + BuildingSurface:Detailed, + Zn002:Partiton001, !- Name + Wall, !- Surface Type + PARTITION, !- Construction Name + East Zone, !- Zone Name + Surface, !- Outside Boundary Condition + Zn001:Partiton001, !- Outside Boundary Condition Object + NoSun, !- Sun Exposure + NoWind, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 15.240,0.00E+0,4.5720, !- X,Y,Z ==> Vertex 1 {m} + 15.240,15.2400,4.572000, !- X,Y,Z ==> Vertex 4 {m} + 15.240,15.2400,0.50E+00, !- X,Y,Z ==> Vertex 3 {m} + 15.240,0.00E+0,0.50E+00; !- X,Y,Z ==> Vertex 2 {m} + + BuildingSurface:Detailed, + PZn002:Partiton001, !- Name + Wall, !- Surface Type + PARTITION, !- Construction Name + East Plenum, !- Zone Name + Surface, !- Outside Boundary Condition + PZn001:Partiton001, !- Outside Boundary Condition Object + NoSun, !- Sun Exposure + NoWind, !- Wind Exposure + 0.5000000, !- View Factor to Ground + 4, !- Number of Vertices + 15.2400,0.00E+00,0.50, !- X,Y,Z ==> Vertex 1 {m} + 15.2400,15.24000,0.50, !- X,Y,Z ==> Vertex 4 {m} + 15.2400,15.24000,0.0E+0, !- X,Y,Z ==> Vertex 3 {m} + 15.2400,0.00E+00,0.0E+0; !- X,Y,Z ==> Vertex 2 {m} + + +! ******************** End of materials and construction *********************************** +!******************************************************************************************** + +! ******************************************************************************************* +! * ********************* Beginning HVAC Air Loop Serving West Zone ************************ + + ZoneHVAC:EquipmentConnections, + West Zone, !- Zone Name + West Zone Equipment, !- Zone Conditioning Equipment List Name + West Zone Inlets, !- Zone Air Inlet Node or NodeList Name + , !- Zone Air Exhaust Node or NodeList Name + West Zone Air Node, !- Zone Air Node Name + West Zone Return Node; !- Zone Return Air Node Name + + NodeList, + West Zone Inlets, !- Name + West Zone Inlet Node; !- Node 1 Name + + ZoneHVAC:EquipmentList, + West Zone Equipment, !- Name + ZoneHVAC:AirDistributionUnit, !- Zone Equipment 1 Object Type + West Zone ATU, !- Zone Equipment 1 Name + 1, !- Zone Equipment 1 Cooling Sequence + 1; !- Zone Equipment 1 Heating or No-Load Sequence + + ZoneHVAC:AirDistributionUnit, + West Zone ATU, !- Name + West Zone Inlet Node, !- Air Distribution Unit Outlet Node Name + AirTerminal:SingleDuct:VAV:NoReheat, !- Air Terminal Object Type + West Zone VAV System; !- Air Terminal Name + +!- =========== ALL OBJECTS IN CLASS: AIRTERMINAL:SINGLEDUCT:VAV:NOREHEAT =========== + + AirTerminal:SingleDuct:VAV:NoReheat, + West Zone VAV System, !- Name + FanAndCoilAvailSched, !- Availability Schedule Name + West Zone Inlet Node, !- Air Outlet Node Name + West Zone ATU Inlet Node, !- Air Inlet Node Name + autosize, !- Maximum Air Flow Rate {m3/s} + Constant, !- Zone Minimum Air Flow Input Method + 0.40; !- Constant Minimum Air Flow Fraction + + BranchList, + West Zone Air Loop Branches, !- Name + West Zone Air Loop Main Branch; !- Branch 1 Name + +!- =========== ALL OBJECTS IN CLASS: BRANCH =========== + + Branch, + West Zone Air Loop Main Branch, !- Name + autosize, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + AirLoopHVAC:OutdoorAirSystem, !- Component 1 Object Type + West Zone OA System, !- Component 1 Name + West Zone Return Air Node, !- Component 1 Inlet Node Name + West Zone Mixed Air Node, !- Component 1 Outlet Node Name + ACTIVE, !- Component 1 Branch Control Type + Fan:VariableVolume, !- Component 2 Object Type + West Zone Supply Fan, !- Component 2 Name + West Zone Mixed Air Node, !- Component 2 Inlet Node Name + West Zone Supply Fan Outlet Node, !- Component 2 Outlet Node Name + ACTIVE, !- Component 2 Branch Control Type + EvaporativeCooler:Direct:ResearchSpecial, !- Component 3 Object Type + West Data Center DEC , !- Component 3 Name + West Zone Supply Fan Outlet Node, !- Component 3 Inlet Node Name + West Zone DEC Outlet Node, !- Component 3 Outlet Node Name + ACTIVE, !- Component 3 Branch Control Type + EvaporativeCooler:Indirect:ResearchSpecial, !- Component 4 Object Type + West Data Center IEC, !- Component 4 Name + West Zone DEC Outlet Node, !- Component 4 Inlet Node Name + West Zone IEC Outlet Node, !- Component 4 Outlet Node Name + ACTIVE, !- Component 4 Branch Control Type + CoilSystem:Cooling:DX, !- Component 5 Object Type + West Zone DX Cooling Coil,!- Component 5 Name + West Zone IEC Outlet Node, !- Component 5 Inlet Node Name + West Zone CCoil Air Outlet Node, !- Component 5 Outlet Node Name + PASSIVE, !- Component 5 Branch Control Type + Coil:Cooling:Water, !- Component 6 Object Type + West Zone CW Cooling Coil, !- Component 6 Name + West Zone CCoil Air Outlet Node, !- Component 6 Inlet Node Name + West Air Loop Outlet Node, !- Component 6 Outlet Node Name + PASSIVE; !- Component 6 Branch Control Type + +!- =========== ALL OBJECTS IN CLASS: AIR PRIMARY LOOP =========== + + AirLoopHVAC, + West Zone Air System, !- Name + West Data Center Sys Controllers, !- Controller List Name + West Data Center Avail List, !- Availability Manager List Name + autosize, !- Design Supply Air Flow Rate {m3/s} + West Zone Air Loop Branches, !- Branch List Name + , !- Connector List Name + West Zone Return Air Node, !- Supply Side Inlet Node Name + West Return Air Mixer Outlet, !- Demand Side Outlet Node Name + West Zone Equipment Inlet Node, !- Demand Side Inlet Node Names + West Air Loop Outlet Node; !- Supply Side Outlet Node Names + +!- =========== ALL OBJECTS IN CLASS: ZONE SUPPLY AIR PATH =========== + + AirLoopHVAC:SupplyPath, + WestSysSupplyPath, !- Name + West Zone Equipment Inlet Node, !- Supply Air Path Inlet Node Name + AirLoopHVAC:SupplyPlenum, !- Component 1 Object Type + West Supply Plenum, !- Component 1 Name + AirLoopHVAC:ZoneSplitter, !- Component 2 Object Type + West Supply Air Splitter; !- Component 2 Name + + AirLoopHVAC:SupplyPlenum, + West Supply Plenum, !- Name + West Plenum, !- Zone Name + West Plenum Zone Node, !- Zone Node Name + West Zone Equipment Inlet Node, !- Inlet Node Name + West Plenum Outlet Node; !- Outlet 1 Node Name + +!- =========== ALL OBJECTS IN CLASS: ZONE RETURN AIR PATH =========== + + AirLoopHVAC:ReturnPath, + WestSysReturnPath, !- Name + West Return Air Mixer Outlet, !- Return Air Path Outlet Node Name + AirLoopHVAC:ZoneMixer, !- Component 1 Object Type + Zone Return Air Mixer; !- Component 1 Name + +!- =========== ALL OBJECTS IN CLASS: ZONE SPLITTER =========== + + AirLoopHVAC:ZoneSplitter, + West Supply Air Splitter, !- Name + West Plenum Outlet Node, !- Inlet Node Name + West Zone ATU Inlet Node; !- Outlet 1 Node Name + +!- =========== ALL OBJECTS IN CLASS: ZONE MIXER =========== + + AirLoopHVAC:ZoneMixer, + Zone Return Air Mixer, !- Name + West Return Air Mixer Outlet, !- Outlet Node Name + West Zone Return Node; !- Inlet 1 Node Name + +!- =========== ALL OBJECTS IN CLASS: CONTROLLER LIST =========== + + AirLoopHVAC:ControllerList, + West Data Center OA Controllers, !- Name + Controller:OutdoorAir, !- Controller 1 Object Type + West Data Center OA Controller; !- Controller 1 Name + +!- =========== ALL OBJECTS IN CLASS: AIR LOOP EQUIPMENT LIST =========== + + AirLoopHVAC:OutdoorAirSystem:EquipmentList, + West Data Center OA Equipment, !- Name + OutdoorAir:Mixer, !- Component 1 Object Type + West Data Center OAM Box; !- Component 1 Name + +!- =========== ALL OBJECTS IN CLASS: OUTSIDE AIR SYSTEM =========== + + AirLoopHVAC:OutdoorAirSystem, + West Zone OA System, !- Name + West Data Center OA Controllers, !- Controller List Name + West Data Center OA Equipment, !- Outdoor Air Equipment List Name + West Data Center Avail List; !- Availability Manager List Name + +!- =========== ALL OBJECTS IN CLASS: OUTSIDE AIR INLET NODE LIST =========== + + OutdoorAir:NodeList, + OutsideAirInletNodes; !- Node or NodeList Name 1 + + NodeList, + OutsideAirInletNodes, !- Name + West Outside Air Inlet Node; !- Node 1 Name + +!- =========== ALL OBJECTS IN CLASS: OUTSIDE AIR INLET NODE LIST =========== + + OutdoorAir:NodeList, + IECOutsideAirInletNodes; !- Node or NodeList Name 1 + + NodeList, + IECOutsideAirInletNodes, !- Name + West IEC Secondary Air Inlet Node; !- Node 1 Name + +!- =========== ALL OBJECTS IN CLASS: OUTSIDE AIR MIXER =========== + + OutdoorAir:Mixer, + West Data Center OAM Box, !- Name + West Zone Mixed Air Node, !- Mixed Air Node Name + West Outside Air Inlet Node, !- Outdoor Air Stream Node Name + West Relief Air Outlet Node, !- Relief Air Stream Node Name + West Zone Return Air Node; !- Return Air Stream Node Name + +!- =========== ALL OBJECTS IN CLASS: SYSTEM AVAILABILITY MANAGER LIST =========== + + AvailabilityManagerAssignmentList, + West Data Center Avail List, !- Name + AvailabilityManager:Scheduled, !- Availability Manager 1 Object Type + West Data Center Avail; !- Availability Manager 1 Name + +!- =========== ALL OBJECTS IN CLASS: SYSTEM AVAILABILITY MANAGER:SCHEDULED =========== + + AvailabilityManager:Scheduled, + West Data Center Avail, !- Name + FanAndCoilAvailSched; !- Schedule Name + +!- =========== ALL OBJECTS IN CLASS: SET POINT MANAGER:MIXED AIR =========== + + SetpointManager:MixedAir, + West Zone Mixed Air Temp Manager, !- Name + Temperature, !- Control Variable + West Air Loop Outlet Node, !- Reference Setpoint Node Name + West Zone Mixed Air Node, !- Fan Inlet Node Name + West Zone Supply Fan Outlet Node, !- Fan Outlet Node Name + West Zone Mixed Air Node; !- Setpoint Node or NodeList Name + +!- =========== ALL OBJECTS IN CLASS: CONTROLLER:OUTSIDE AIR =========== + + Controller:OutdoorAir, + West Data Center OA Controller, !- Name + West Relief Air Outlet Node,!- Relief Air Outlet Node Name + West Zone Return Air Node, !- Return Air Node Name + West Zone Mixed Air Node, !- Mixed Air Node Name + West Outside Air Inlet Node,!- Actuator Node Name + autosize, !- Minimum Outdoor Air Flow Rate {m3/s} + autosize, !- Maximum Outdoor Air Flow Rate {m3/s} + FixedDryBulb, !- Economizer Control Type + , !- Economizer Control Action Type + 23.0, !- Economizer Maximum Limit Dry-Bulb Temperature {C} + , !- Economizer Maximum Limit Enthalpy {J/kg} + 13.5, !- Economizer Maximum Limit Dewpoint Temperature {C} + , !- Electronic Enthalpy Limit Curve Name + -20.0, !- Economizer Minimum Limit Dry-Bulb Temperature {C} + NoLockout, !- Lockout Type + FixedMinimum, !- Minimum Limit Type + OAFractionSched, !- Minimum Outdoor Air Schedule Name + , !- Minimum Fraction of Outdoor Air Schedule Name + , !- Maximum Fraction of Outdoor Air Schedule Name + ; !- Mechanical Ventilation Controller Name + + EvaporativeCooler:Direct:ResearchSpecial, + West Data Center DEC, !- Name + ALWAYS_ON, !- Availability Schedule Name + 0.7, !- Cooler Design Effectiveness + , !- Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Design Power + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + West Zone Supply Fan Outlet Node, !- Air Inlet Node Name + West Zone DEC Outlet Node, !- Air Outlet Node Name + West Zone DEC Outlet Node, !- Sensor Node Name + , !- Water Supply Storage Tank Name + 0.0, !- Drift Loss Fraction + 3.0, !- Blowdown Concentration Ratio + 16.0, !- Evaporative Operation Minimum Limit DryBulb Temperature + 18.0, !- Evaporative Operation Maximum Limit Wetbulb Temperature + 20.0; !- Evaporative Operation Maximum Limit Drybulb Temperature + + EvaporativeCooler:Indirect:ResearchSpecial, + West Data Center IEC, !- Name + ALWAYS_ON, !- Availability Schedule Name + 0.70, !- Cooler Wetbulb Design Effectiveness + IECEffWBFlowMod, !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + 0.72, !- Cooler Drybulb Design Effectiveness + IECEffDBFlowMod, !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + autosize, !- Recirculating Water Design Pump Power + 150.0, !- Water Pump Power Sizing Factor W /(m3/s)air + IECPumpPowerMod, !- Water Pump Power Modifier Curve Name + autosize, !- Secondary Design Air Flow Rate + 1.4, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Fan Design Power + 200.0, !- Secondary Fan Sizing Specific Power W /(m3/s) + IECFanPowerMod, !- Secondary Fan Power Modifier Curve Name + West Zone DEC Outlet Node, !- Primary Air Inlet Node Name + West Zone IEC Outlet Node, !- Primary Air Outlet Node Name + autosize, !- Primary Design Air Flow Rate + 0.9 , !- Dewpoint Effectiveness Factor + West IEC Secondary Air Inlet Node, !- Secondary Air Inlet Node Name + West IEC Secondary Air Outlet Node, !- Secondary Air Outlet Node Name + West Zone IEC Outlet Node, !- Sensor Node Name + , !- Relief Air Inlet Node Name + , !- Water Supply Storage Tank Name + 0.0, !- Drift Loss Fraction + , !- Blowdown Concentration Ratio + 20.0, !- Evaporative Operation Minimum Limit DryBulb Temperature + 24.0, !- Evaporative Operation Maximum Limit Wetbulb Temperature + 50.0; !- Evaporative Operation Maximum Limit Drybulb Temperature + + + Table:OneIndependentVariable, + IECEffWBFlowMod, + !Munters Oasis Wet Op Eff Mod Fac, + Cubic, !- Curve Type + LagrangeInterpolationLinearExtrapolation, !- Interpolation Method + 0.0, !- Minimum Value of X + 1.875, !- Maximum Value of X + 0.0, !- Minimum Table Output + 1.15, !- Maximum Table Output + Dimensionless, !- Input Unit Type for X + Dimensionless, !- Output Unit Type + , !- Normalization Reference + 0.0, 0.0, + 0.125, 0.503563817, + 0.250, 0.669042545, + 0.375, 0.765841395, + 0.500, 0.834521272, + 0.625, 0.887793524, + 0.750, 0.931320123, + 0.875, 0.968121338, + 1.000, 1.0, + 1.125, 1.028118973, + 1.25 , 1.053272252, + 1.375, 1.07602616, + 1.500, 1.09679885, + 1.625, 1.115907873, + 1.750, 1.133600065, + 1.875, 1.150071102; + + Table:OneIndependentVariable, + ! Munters Oasis Dry Op Eff Mod Fac, ! formulated no mass capacitance flux ratio, flow ratio = sec/sys + IECEffDBFlowMod, + Cubic, !- Curve Type + LagrangeInterpolationLinearExtrapolation, !- Interpolation Method + 0.0, + 1.1, + 0.0, + 1.0, + Dimensionless, + Dimensionless, + , + 0.0, 0.0, + 0.156016442, 0.251901141, + 0.224969531, 0.272633745, + 0.245292433, 0.297085202, + 0.269624525, 0.32635468, + 0.299327692, 0.362021858, + 0.33698954, 0.406441718, + 0.385709241, 0.463286713, + 0.453044107, 0.538617886, + 0.553875806, 0.643203883, + 0.732741489, 0.798192771, + 0.899289342, 0.907534247, + 1.047473735, 0.989130435, + 1.074970273, 0.994186047, + 1.104173513, 1.0; + + Table:OneIndependentVariable, + IECFanPowerMod, !- Name + !Fan Power Mod Fac x raised to 2_6 , ! fan power following x^2.6 + Cubic, !- Curve Type + LagrangeInterpolationLinearExtrapolation, !- Interpolation Method + 0.0, + 1.0, + 0.0, + 1.0, + Dimensionless, + Dimensionless, + , + 0 , 0, + 0.125 , 0.004487103, + 0.25 , 0.027204705, + 0.375 , 0.078069482, + 0.5 , 0.164938489, + 0.625 , 0.294637516, + 0.75 , 0.473324827, + 0.875 , 0.706676969, + 1 , 1; + + + Table:OneIndependentVariable, + !Pump Power Mod Fac two speed spray pump , ! + IECPumpPowerMod, !- Name + Cubic, !- Curve Type + LagrangeInterpolationLinearExtrapolation, !- Interpolation Method + 0.0, + 1.0, + 0.0, + 1.0, + Dimensionless, + Dimensionless, + , + 0, 0.4, + 0.125, 0.4, + 0.25, 0.4, + 0.375, 0.4, + 0.5, 1, + 0.625 , 1, + 0.75, 1, + 0.875, 1, + 1, 1; + + SetpointManager:SingleZone:Cooling, + System Setpoint manager, !- Name + Temperature, !- Control Variable + -99.0, !- Minimum Supply Air Temperature {C} + 99.0, !- Maximum Supply Air Temperature {C} + West Zone, !- Control Zone Name + West Zone Air Node, !- Zone Node Name + West Zone Inlets, !- Zone Inlet Node Name + West Sys Setpoint nodes; !- Setpoint Node or NodeList Name + + NodeList, + West Sys Setpoint nodes, !- Name + West Zone DEC Outlet Node, !- Node 1 Name + West Zone IEC Outlet Node, !- Node 2 Name + West Zone CCoil Air Outlet Node, !- Node 3 Name + West Air Loop Outlet Node; !- Node 4 Name + + CoilSystem:Cooling:DX, + West Zone DX Cooling Coil, !- Name + WestDXCCoilAvailSched, !- Availability Schedule Name + West Zone IEC Outlet Node, !- DX Cooling Coil System Inlet Node Name + West Zone CCoil Air Outlet Node, !- DX Cooling Coil System Outlet Node Name + West Zone CCoil Air Outlet Node, !- DX Cooling Coil System Sensor Node Name + Coil:Cooling:DX:SingleSpeed, !- Cooling Coil Object Type + West DX Cooling Coil, !- Cooling Coil Name + None, !- Dehumidification Control Type + yes, !- Run on Sensible Load + No; !- Run on Latent Load + + Sizing:System, + West Zone Air System, !- AirLoop Name + Sensible, !- Type of Load to Size On + autosize, !- Design Outdoor Air Flow Rate {m3/s} + 0.4, !- Minimum System Air Flow Ratio + 7.0, !- Preheat Design Temperature {C} + 0.0085, !- Preheat Design Humidity Ratio {kgWater/kgDryAir} + 11.0, !- Precool Design Temperature {C} + 0.0085, !- Precool Design Humidity Ratio {kgWater/kgDryAir} + 12.8, !- Central Cooling Design Supply Air Temperature {C} + 16.7, !- Central Heating Design Supply Air Temperature {C} + NonCoincident, !- Sizing Option + Yes, !- 100% Outdoor Air in Cooling + No, !- 100% Outdoor Air in Heating + 0.0085, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} + 0.0085, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} + DesignDay, !- Cooling Design Air Flow Method + , !- Cooling Design Air Flow Rate {m3/s} + , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} + , !- Fraction of Autosized Design Cooling Supply Air Flow Rate {-} + , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Design Air Flow Method + , !- Heating Design Air Flow Rate {m3/s} + , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} + , !- Fraction of Autosized Design Heating Supply Air Flow Rate {-} + , !- Fraction of Autosized Design Cooling Supply Air Flow Rate {-} + , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + ; !- System Outdoor Air Method + + +!- =========== ALL OBJECTS IN CLASS: FAN:SIMPLE:VARIABLEVOLUME =========== + + Fan:VariableVolume, + West Zone Supply Fan, !- Name + FanAndCoilAvailSched, !- Availability Schedule Name + 0.7, !- Fan Total Efficiency + 300.0, !- Pressure Rise {Pa} + autosize, !- Maximum Flow Rate {m3/s} + Fraction, !- Fan Power Minimum Flow Rate Input Method + 0.25, !- Fan Power Minimum Flow Fraction + , !- Fan Power Minimum Air Flow Rate {m3/s} + 0.9, !- Motor Efficiency + 0.0, !- Motor In Airstream Fraction + 0.35071223, !- Fan Power Coefficient 1 + 0.30850535, !- Fan Power Coefficient 2 + -0.54137364, !- Fan Power Coefficient 3 + 0.87198823, !- Fan Power Coefficient 4 + 0.000, !- Fan Power Coefficient 5 + West Zone Mixed Air Node, !- Air Inlet Node Name + West Zone Supply Fan Outlet Node; !- Air Outlet Node Name + + Schedule:Compact, + OAFractionSched, !- Name + Fraction, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: AllDays, !- Field 2 + Until: 7:00,0.05, !- Field 3 + Until: 18:00,1.0, !- Field 5 + Until: 24:00,0.05; !- Field 7 + + Coil:Cooling:DX:SingleSpeed, + West DX Cooling Coil, !- Name + WestDXCCoilAvailSched, !- Availability Schedule Name + autosize, !- Gross Rated Total Cooling Capacity {W} + autosize, !- Gross Rated Sensible Heat Ratio + 3.0, !- Gross Rated Cooling COP {W/W} + autosize, !- Rated Air Flow Rate {m3/s} + , !- Rated Evaporator Fan Power Per Volume Flow Rate {W/(m3/s)} + West Zone IEC Outlet Node, !- Air Inlet Node Name + West Zone CCoil Air Outlet Node, !- Air Outlet Node Name + DXSysACCoolCapFT, !- Total Cooling Capacity Function of Temperature Curve Name + DXSysACCoolCapFFF, !- Total Cooling Capacity Function of Flow Fraction Curve Name + DXSysACCoolEIRFT, !- Energy Input Ratio Function of Temperature Curve Name + DXSysACCoolEIRFFF, !- Energy Input Ratio Function of Flow Fraction Curve Name + DXSysACCoolPLFFPLR, !- Part Load Fraction Correlation Curve Name + , !- Nominal Time for Condensate Removal to Begin {s} + , !- Ratio of Initial Moisture Evaporation Rate and Steady State Latent Capacity {dimensionless} + , !- Maximum Cycling Rate {cycles/hr} + , !- Latent Capacity Time Constant {s} + , !- Condenser Air Inlet Node Name + , !- Condenser Type + , !- Evaporative Condenser Effectiveness + , !- Evaporative Condenser Air Flow Rate + , !- Evaporative Condenser Pump Rated Power Consumption + , !- Crankcase Heater Capacity + , !- Maximum Outdoor Dry-Bulb Temperature for Crankcase Heater Operation + , !- Supply Water Storage Tank Name + , !- Condensate Collection Water Storage Tank Name + , !- Basin Heater Capacity + , !- Basin Heater Setpoint Temperature + , !- Basin Heater Operating Schedule Name + , !- Sensible Heat Ratio Function of Temperature Curve Name + , !- Sensible Heat Ratio Function of Flow Fraction Curve Name + Yes; !- Report ASHRAE Standard 127 Performance Ratings + + Curve:Biquadratic, + DXSysACCoolCapFT, !- Name + 0.766956, !- Coefficient1 Constant + 0.0107756, !- Coefficient2 x + -0.0000414703, !- Coefficient3 x**2 + 0.00134961, !- Coefficient4 y + -0.000261144, !- Coefficient5 y**2 + 0.000457488, !- Coefficient6 x*y + 12.77778, !- Minimum Value of x + 23.88889, !- Maximum Value of x + 18.0, !- Minimum Value of y + 46.11111, !- Maximum Value of y + , !- Minimum Curve Output + , !- Maximum Curve Output + Temperature, !- Input Unit Type for X + Temperature, !- Input Unit Type for Y + Dimensionless; !- Output Unit Type + + Curve:Biquadratic, + DXSysACCoolEIRFT, !- Name + 0.297145, !- Coefficient1 Constant + 0.0430933, !- Coefficient2 x + -0.000748766, !- Coefficient3 x**2 + 0.00597727, !- Coefficient4 y + 0.000482112, !- Coefficient5 y**2 + -0.000956448, !- Coefficient6 x*y + 12.77778, !- Minimum Value of x + 23.88889, !- Maximum Value of x + 18.0, !- Minimum Value of y + 46.11111, !- Maximum Value of y + , !- Minimum Curve Output + , !- Maximum Curve Output + Temperature, !- Input Unit Type for X + Temperature, !- Input Unit Type for Y + Dimensionless; !- Output Unit Type + + Curve:Quadratic, + DXSysACCoolCapFFF, !- Name + 0.8, !- Coefficient1 Constant + 0.2, !- Coefficient2 x + 0.0, !- Coefficient3 x**2 + 0.5, !- Minimum Value of x + 1.5; !- Maximum Value of x + + Curve:Quadratic, + DXSysACCoolEIRFFF, !- Name + 1.156, !- Coefficient1 Constant + -0.1816, !- Coefficient2 x + 0.0256, !- Coefficient3 x**2 + 0.5, !- Minimum Value of x + 1.5; !- Maximum Value of x + + Curve:Quadratic, + DXSysACCoolPLFFPLR, !- Name + 0.85, !- Coefficient1 Constant + 0.15, !- Coefficient2 x + 0.0, !- Coefficient3 x**2 + 0.0, !- Minimum Value of x + 1.0; !- Maximum Value of x +! ***************End of HVAC Air Loop Serving West Zone ************************************* + +! ******************************************************************************************* +! * ********************* Beginning HVAC Air Loop Serving East Zone ************************ + + + ZoneHVAC:EquipmentConnections, + East Zone, !- Zone Name + East Zone Equipment, !- Zone Conditioning Equipment List Name + East Zone Inlets, !- Zone Air Inlet Node or NodeList Name + , !- Zone Air Exhaust Node or NodeList Name + East Zone Air Node, !- Zone Air Node Name + East Zone Return Node; !- Zone Return Air Node Name + + NodeList, + East Zone Inlets, !- Name + East Zone Inlet Node; !- Node 1 Name + + ZoneHVAC:EquipmentList, + East Zone Equipment, !- Name + ZoneHVAC:AirDistributionUnit, !- Zone Equipment 1 Object Type + East Zone ATU, !- Zone Equipment 1 Name + 1, !- Zone Equipment 1 Cooling Sequence + 1; !- Zone Equipment 1 Heating or No-Load Sequence + + ZoneHVAC:AirDistributionUnit, + East Zone ATU, !- Name + East Zone Inlet Node, !- Air Distribution Unit Outlet Node Name + AirTerminal:SingleDuct:VAV:NoReheat, !- Air Terminal Object Type + East Zone VAV System; !- Air Terminal Name + +!- =========== ALL OBJECTS IN CLASS: AIRTERMINAL:SINGLEDUCT:VAV:NOREHEAT =========== + + AirTerminal:SingleDuct:VAV:NoReheat, + East Zone VAV System, !- Name + FanAndCoilAvailSched, !- Availability Schedule Name + East Zone Inlet Node, !- Air Outlet Node Name + East Zone ATU Inlet Node, !- Air Inlet Node Name + autosize, !- Maximum Air Flow Rate {m3/s} + Constant, !- Zone Minimum Air Flow Input Method + 0.40; !- Constant Minimum Air Flow Fraction + + + BranchList, + East Zone Air Loop Branches, !- Name + East Zone Air Loop Main Branch; !- Branch 1 Name + +!- =========== ALL OBJECTS IN CLASS: BRANCH =========== + + Branch, + East Zone Air Loop Main Branch, !- Name + autosize, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + AirLoopHVAC:OutdoorAirSystem, !- Component 1 Object Type + East Zone OA System, !- Component 1 Name + East Zone Return Air Node, !- Component 1 Inlet Node Name + East Zone Mixed Air Node, !- Component 1 Outlet Node Name + ACTIVE, !- Component 1 Branch Control Type + Fan:VariableVolume, !- Component 2 Object Type + East Zone Supply Fan, !- Component 2 Name + East Zone Mixed Air Node, !- Component 2 Inlet Node Name + East Zone Supply Fan Outlet Node, !- Component 2 Outlet Node Name + ACTIVE, !- Component 2 Branch Control Type + EvaporativeCooler:Direct:ResearchSpecial, !- Component 3 Object Type + East Data Center DEC , !- Component 3 Name + East Zone Supply Fan Outlet Node, !- Component 3 Inlet Node Name + East Zone DEC Outlet Node, !- Component 3 Outlet Node Name + ACTIVE, !- Component 3 Branch Control Type + EvaporativeCooler:Indirect:ResearchSpecial, !- Component 4 Object Type + East Data Center IEC, !- Component 4 Name + East Zone DEC Outlet Node, !- Component 4 Inlet Node Name + East Zone IEC Outlet Node, !- Component 4 Outlet Node Name + ACTIVE, !- Component 4 Branch Control Type + CoilSystem:Cooling:DX, !- Component 5 Object Type + East Zone DX Cooling Coil, !- Component 5 Name + East Zone IEC Outlet Node, !- Component 5 Inlet Node Name + East Zone CCoil Air Outlet Node, !- Component 5 Outlet Node Name + PASSIVE, !- Component 5 Branch Control Type + Coil:Cooling:Water, !- Component 6 Object Type + East Zone CW Cooling Coil, !- Component 6 Name + East Zone CCoil Air Outlet Node, !- Component 6 Inlet Node Name + East Air Loop Outlet Node, !- Component 6 Outlet Node Name + PASSIVE; !- Component 6 Branch Control Type + +!- =========== ALL OBJECTS IN CLASS: AIR PRIMARY LOOP =========== + + AirLoopHVAC, + East Zone Air System, !- Name + East Data Center Sys Controllers, !- Controller List Name + East Data Center Avail List, !- Availability Manager List Name + autosize, !- Design Supply Air Flow Rate {m3/s} + East Zone Air Loop Branches, !- Branch List Name + , !- Connector List Name + East Zone Return Air Node, !- Supply Side Inlet Node Name + East Return Air Mixer Outlet, !- Demand Side Outlet Node Name + East Zone Equipment Inlet Node, !- Demand Side Inlet Node Names + East Air Loop Outlet Node; !- Supply Side Outlet Node Names + +!- =========== ALL OBJECTS IN CLASS: ZONE SUPPLY AIR PATH =========== + + AirLoopHVAC:SupplyPath, + EastSysSupplyPath, !- Name + East Zone Equipment Inlet Node, !- Supply Air Path Inlet Node Name + AirLoopHVAC:SupplyPlenum, !- Component 1 Object Type + East Supply Plenum, !- Component 1 Name + AirLoopHVAC:ZoneSplitter, !- Component 2 Object Type + East Supply Air Splitter; !- Component 2 Name + + AirLoopHVAC:SupplyPlenum, + East Supply Plenum, !- Name + East Plenum, !- Zone Name + East Plenum Zone Node, !- Zone Node Name + East Zone Equipment Inlet Node, !- Inlet Node Name + East Plenum Outlet Node; !- Outlet 1 Node Name + +!- =========== ALL OBJECTS IN CLASS: ZONE RETURN AIR PATH =========== + + AirLoopHVAC:ReturnPath, + EastSysReturnPath, !- Name + East Return Air Mixer Outlet, !- Return Air Path Outlet Node Name + AirLoopHVAC:ZoneMixer, !- Component 1 Object Type + East Return Air Mixer; !- Component 1 Name + +!- =========== ALL OBJECTS IN CLASS: ZONE SPLITTER =========== + + AirLoopHVAC:ZoneSplitter, + East Supply Air Splitter, !- Name + East Plenum Outlet Node, !- Inlet Node Name + East Zone ATU Inlet Node; !- Outlet 1 Node Name + +!- =========== ALL OBJECTS IN CLASS: ZONE MIXER =========== + + AirLoopHVAC:ZoneMixer, + East Return Air Mixer, !- Name + East Return Air Mixer Outlet, !- Outlet Node Name + East Zone Return Node; !- Inlet 1 Node Name + +!- =========== ALL OBJECTS IN CLASS: CONTROLLER LIST =========== + + AirLoopHVAC:ControllerList, + East Data Center OA Controllers, !- Name + Controller:OutdoorAir, !- Controller 1 Object Type + East Data Center OA Controller; !- Controller 1 Name + +!- =========== ALL OBJECTS IN CLASS: AIR LOOP EQUIPMENT LIST =========== + + AirLoopHVAC:OutdoorAirSystem:EquipmentList, + East Data Center OA Equipment, !- Name + OutdoorAir:Mixer, !- Component 1 Object Type + East Data Center OAM Box; !- Component 1 Name + +!- =========== ALL OBJECTS IN CLASS: OUTSIDE AIR SYSTEM =========== + + AirLoopHVAC:OutdoorAirSystem, + East Zone OA System, !- Name + East Data Center OA Controllers, !- Controller List Name + East Data Center OA Equipment, !- Outdoor Air Equipment List Name + East Data Center Avail List; !- Availability Manager List Name + +!- =========== ALL OBJECTS IN CLASS: OUTSIDE AIR INLET NODE LIST =========== + + OutdoorAir:NodeList, + EastOutsideAirInletNodes; !- Node or NodeList Name 1 + + NodeList, + EastOutsideAirInletNodes, !- Name + East Outside Air Inlet Node; !- Node 1 Name + + OutdoorAir:NodeList, + EastIECOutsideAirInletNodes; !- Node or NodeList Name 1 + + NodeList, + EastIECOutsideAirInletNodes, !- Name + East IEC Secondary Air Inlet Node; !- Node 1 Name + +!- =========== ALL OBJECTS IN CLASS: OUTSIDE AIR MIXER =========== + + OutdoorAir:Mixer, + East Data Center OAM Box, !- Name + East Zone Mixed Air Node, !- Mixed Air Node Name + East Outside Air Inlet Node, !- Outdoor Air Stream Node Name + East Relief Air Outlet Node, !- Relief Air Stream Node Name + East Zone Return Air Node; !- Return Air Stream Node Name + +!- =========== ALL OBJECTS IN CLASS: SYSTEM AVAILABILITY MANAGER LIST =========== + + AvailabilityManagerAssignmentList, + East Data Center Avail List, !- Name + AvailabilityManager:Scheduled, !- Availability Manager 1 Object Type + East Data Center Avail; !- Availability Manager 1 Name + +!- =========== ALL OBJECTS IN CLASS: SYSTEM AVAILABILITY MANAGER:SCHEDULED =========== + + AvailabilityManager:Scheduled, + East Data Center Avail, !- Name + FanAndCoilAvailSched; !- Schedule Name + +!- =========== ALL OBJECTS IN CLASS: SET POINT MANAGER:MIXED AIR =========== + + SetpointManager:MixedAir, + East Zone Mixed Air Temp Manager, !- Name + Temperature, !- Control Variable + East Air Loop Outlet Node, !- Reference Setpoint Node Name + East Zone Mixed Air Node, !- Fan Inlet Node Name + East Zone Supply Fan Outlet Node, !- Fan Outlet Node Name + East Zone Mixed Air Node; !- Setpoint Node or NodeList Name + +!- =========== ALL OBJECTS IN CLASS: CONTROLLER:OUTSIDE AIR =========== + + Controller:OutdoorAir, + East Data Center OA Controller, !- Name + East Relief Air Outlet Node,!- Relief Air Outlet Node Name + East Zone Return Air Node, !- Return Air Node Name + East Zone Mixed Air Node, !- Mixed Air Node Name + East Outside Air Inlet Node,!- Actuator Node Name + autosize, !- Minimum Outdoor Air Flow Rate {m3/s} + autosize, !- Maximum Outdoor Air Flow Rate {m3/s} + FixedDryBulb, !- Economizer Control Type + , !- Economizer Control Action Type + 16.0, !- Economizer Maximum Limit Dry-Bulb Temperature {C} + , !- Economizer Maximum Limit Enthalpy {J/kg} + 13.5, !- Economizer Maximum Limit Dewpoint Temperature {C} + , !- Electronic Enthalpy Limit Curve Name + -20.0, !- Economizer Minimum Limit Dry-Bulb Temperature {C} + NoLockout, !- Lockout Type + FixedMinimum, !- Minimum Limit Type + OAFractionSched, !- Minimum Outdoor Air Schedule Name + , !- Minimum Fraction of Outdoor Air Schedule Name + , !- Maximum Fraction of Outdoor Air Schedule Name + ; !- Mechanical Ventilation Controller Name + + EvaporativeCooler:Direct:ResearchSpecial, + East Data Center DEC, !- Name + ALWAYS_ON, !- Availability Schedule Name + 0.7, !- Cooler Design Effectiveness + , !- Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Design Power + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + East Zone Supply Fan Outlet Node, !- Air Inlet Node Name + East Zone DEC Outlet Node, !- Air Outlet Node Name + East Zone DEC Outlet Node, !- Sensor Node Name + , !- Water Supply Storage Tank Name + 0.0, !- Drift Loss Fraction + 3.0, !- Blowdown Concentration Ratio + 16.0, !- Evaporative Operation Minimum Limit DryBulb Temperature + 20.0, !- Evaporative Operation Maximum Limit Wetbulb Temperature + 22.0; !- Evaporative Operation Maximum Limit Drybulb Temperature + + EvaporativeCooler:Indirect:ResearchSpecial, + East Data Center IEC, !- Name + ALWAYS_ON, !- Availability Schedule Name + 0.70, !- Cooler Wetbulb Design Effectiveness + IECEffWBFlowMod, !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + 0.72, !- Cooler Drybulb Design Effectiveness + IECEffDBFlowMod, !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + autosize, !- Recirculating Water Design Pump Power + 150.0, !- Water Pump Power Sizing Factor W /(m3/s)air + IECPumpPowerMod, !- Water Pump Power Modifier Curve Name + autosize, !- Secondary Design Air Flow Rate + 1.4, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Fan Design Power + 200.0, !- Secondary Fan Sizing Specific Power W /(m3/s) + IECFanPowerMod, !- Secondary Fan Power Modifier Curve Name + East Zone DEC Outlet Node, !- Primary Air Inlet Node Name + East Zone IEC Outlet Node, !- Primary Air Outlet Node Name + autosize, !- Primary Design Air Flow Rate + 0.9 , !- Dewpoint Effectiveness Factor + East IEC Secondary Air Inlet Node, !- Secondary Air Inlet Node Name + East IEC Secondary Air Outlet Node, !- Secondary Air Outlet Node Name + East Zone IEC Outlet Node, !- Sensor Node Name + , !- Relief Air Inlet Node Name + , !- Water Supply Storage Tank Name + 0.0, !- Drift Loss Fraction + , !- Blowdown Concentration Ratio + 22.0, !- Evaporative Operation Minimum Limit DryBulb Temperature + 24.0, !- Evaporative Operation Maximum Limit Wetbulb Temperature + 35.0; !- Evaporative Operation Maximum Limit Drybulb Temperature + + SetpointManager:SingleZone:Cooling, + East System Setpoint manager, !- Name + Temperature, !- Control Variable + -99.0, !- Minimum Supply Air Temperature {C} + 99.0, !- Maximum Supply Air Temperature {C} + East Zone, !- Control Zone Name + East Zone Air Node, !- Zone Node Name + West Zone Inlets, !- Zone Inlet Node Name + East Sys Setpoint nodes; !- Setpoint Node or NodeList Name + + NodeList, + East Sys Setpoint nodes, !- Name + East Zone DEC Outlet Node, !- Node 1 Name + East Zone IEC Outlet Node, !- Node 1 Name + East Zone CCoil Air Outlet Node, !- Node 2 Name + East Air Loop Outlet Node; !- Node 3 Name + + CoilSystem:Cooling:DX, + East Zone DX Cooling Coil, !- Name + EastDXCCoilAvailSched, !- Availability Schedule Name + East Zone IEC Outlet Node, !- DX Cooling Coil System Inlet Node Name + East Zone CCoil Air Outlet Node, !- DX Cooling Coil System Outlet Node Name + East Zone CCoil Air Outlet Node, !- DX Cooling Coil System Sensor Node Name + Coil:Cooling:DX:SingleSpeed, !- Cooling Coil Object Type + East DX Cooling Coil, !- Cooling Coil Name + None, !- Dehumidification Control Type + yes, !- Run on Sensible Load + No; !- Run on Latent Load + + Sizing:System, + East Zone Air System, !- AirLoop Name + Sensible, !- Type of Load to Size On + autosize, !- Design Outdoor Air Flow Rate {m3/s} + 0.4, !- Minimum System Air Flow Ratio + 7.0, !- Preheat Design Temperature {C} + 0.009, !- Preheat Design Humidity Ratio {kgWater/kgDryAir} + 12.8000, !- Precool Design Temperature {C} + 0.009, !- Precool Design Humidity Ratio {kgWater/kgDryAir} + 12.8000, !- Central Cooling Design Supply Air Temperature {C} + 30.0, !- Central Heating Design Supply Air Temperature {C} + NonCoincident, !- Sizing Option + Yes, !- 100% Outdoor Air in Cooling + No, !- 100% Outdoor Air in Heating + 0.0090, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} + 0.0090, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} + DesignDay, !- Cooling Design Air Flow Method + , !- Cooling Design Air Flow Rate {m3/s} + , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} + , !- Fraction of Autosized Design Cooling Supply Air Flow Rate {-} + , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Design Air Flow Method + , !- Heating Design Air Flow Rate {m3/s} + , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} + , !- Fraction of Autosized Design Heating Supply Air Flow Rate {-} + , !- Fraction of Autosized Design Cooling Supply Air Flow Rate {-} + , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + ; !- System Outdoor Air Method + + +!- =========== ALL OBJECTS IN CLASS: FAN:SIMPLE:VARIABLEVOLUME =========== + + Fan:VariableVolume, + East Zone Supply Fan, !- Name + FanAndCoilAvailSched, !- Availability Schedule Name + 0.7, !- Fan Total Efficiency + 300.0, !- Pressure Rise {Pa} + autosize, !- Maximum Flow Rate {m3/s} + Fraction, !- Fan Power Minimum Flow Rate Input Method + 0.25, !- Fan Power Minimum Flow Fraction + , !- Fan Power Minimum Air Flow Rate {m3/s} + 0.9, !- Motor Efficiency + 0.0, !- Motor In Airstream Fraction + 0.35071223, !- Fan Power Coefficient 1 + 0.30850535, !- Fan Power Coefficient 2 + -0.54137364, !- Fan Power Coefficient 3 + 0.87198823, !- Fan Power Coefficient 4 + 0.000, !- Fan Power Coefficient 5 + East Zone Mixed Air Node, !- Air Inlet Node Name + East Zone Supply Fan Outlet Node; !- Air Outlet Node Name + + + Coil:Cooling:DX:SingleSpeed, + East DX Cooling Coil, !- Name + EastDXCCoilAvailSched, !- Availability Schedule Name + autosize, !- Gross Rated Total Cooling Capacity {W} + autosize, !- Gross Rated Sensible Heat Ratio + 3.0, !- Gross Rated Cooling COP {W/W} + autosize, !- Rated Air Flow Rate {m3/s} + , !- Rated Evaporator Fan Power Per Volume Flow Rate {W/(m3/s)} + East Zone IEC Outlet Node, !- Air Inlet Node Name + East Zone CCoil Air Outlet Node, !- Air Outlet Node Name + DXSysACCoolCapFT, !- Total Cooling Capacity Function of Temperature Curve Name + DXSysACCoolCapFFF, !- Total Cooling Capacity Function of Flow Fraction Curve Name + DXSysACCoolEIRFT, !- Energy Input Ratio Function of Temperature Curve Name + DXSysACCoolEIRFFF, !- Energy Input Ratio Function of Flow Fraction Curve Name + DXSysACCoolPLFFPLR, !- Part Load Fraction Correlation Curve Name + , !- Nominal Time for Condensate Removal to Begin {s} + , !- Ratio of Initial Moisture Evaporation Rate and Steady State Latent Capacity {dimensionless} + , !- Maximum Cycling Rate {cycles/hr} + , !- Latent Capacity Time Constant {s} + , !- Condenser Air Inlet Node Name + , !- Condenser Type + , !- Evaporative Condenser Effectiveness + , !- Evaporative Condenser Air Flow Rate + , !- Evaporative Condenser Pump Rated Power Consumption + , !- Crankcase Heater Capacity + , !- Maximum Outdoor Dry-Bulb Temperature for Crankcase Heater Operation + , !- Supply Water Storage Tank Name + , !- Condensate Collection Water Storage Tank Name + , !- Basin Heater Capacity + , !- Basin Heater Setpoint Temperature + , !- Basin Heater Operating Schedule Name + , !- Sensible Heat Ratio Function of Temperature Curve Name + , !- Sensible Heat Ratio Function of Flow Fraction Curve Name + Yes; !- Report ASHRAE Standard 127 Performance Ratings + + +! ***************End of HVAC Air Loop Serving East Zone ************************************* +!******************************************************************************************** + +! ************** Chilled Water Cooling Coil And Chilled Water Plant System ***************** +! ********************************DEFINE THE CHILLED WATER(CW) LOOP*************************** + + PlantLoop, + Chilled Water Loop, !- Name + Water, !- Fluid Type + , !- User Defined Fluid Type + CW Loop Operation, !- Plant Equipment Operation Scheme Name + CW Supply Outlet Node, !- Loop Temperature Setpoint Node Name + 100, !- Maximum Loop Temperature {C} + 3, !- Minimum Loop Temperature {C} + 0.001, !- Maximum Loop Flow Rate {m3/s} + 0, !- Minimum Loop Flow Rate {m3/s} + autocalculate, !- Plant Loop Volume {m3} + CW Supply Inlet Node, !- Plant Side Inlet Node Name + CW Supply Outlet Node, !- Plant Side Outlet Node Name + Cooling Supply Side Branches, !- Plant Side Branch List Name + Cooling Supply Side Connectors, !- Plant Side Connector List Name + CW Demand Inlet Node, !- Demand Side Inlet Node Name + CW Demand Outlet Node, !- Demand Side Outlet Node Name + Cooling Demand Side Branches, !- Demand Side Branch List Name + Cooling Demand Side Connectors, !- Demand Side Connector List Name + Optimal; !- Load Distribution Scheme + +! =======================INPUTTING THE SUPPLY SIDE OF CHILLED WATER LOOP====================== +! ----------Listing and Modeling all the branches on the supply side of the CW loop---------- + + BranchList, + Cooling Supply Side Branches, !- Name + CW Supply Pump Branch, !- Branch 1 Name + CW Supply Chiller Branch,!- Branch 2 Name + CW Supply Bypass Branch, !- Branch 3 Name + CW Supply Outlet Branch; !- Branch 4 Name + + Branch, + CW Supply Pump Branch, !- Name + autosize, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Pump:VariableSpeed, !- Component 1 Object Type + CW Circ Pump, !- Component 1 Name + CW Supply Inlet Node, !- Component 1 Inlet Node Name + CW Pump Outlet Node, !- Component 1 Outlet Node Name + Active; !- Component 1 Branch Control Type + + Branch, + CW Supply Chiller Branch,!- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Chiller:Electric, !- Component 1 Object Type + Chiller, !- Component 1 Name + Chiller Inlet Node, !- Component 1 Inlet Node Name + Chiller Outlet Node, !- Component 1 Outlet Node Name + Active; !- Component 1 Branch Control Type + + Branch, + CW Supply Bypass Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Pipe:Adiabatic, !- Component 1 Object Type + CW Supply Side Bypass Pipe, !- Component 1 Name + CW Supply Bypass Inlet Node, !- Component 1 Inlet Node Name + CW Supply Bypass Outlet Node, !- Component 1 Outlet Node Name + BYPASS; !- Component 1 Branch Control Type + + Branch, + CW Supply Outlet Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Pipe:Adiabatic, !- Component 1 Object Type + CW Supply Side Outlet Pipe, !- Component 1 Name + CW Supply Side Exit Pipe Inlet Node, !- Component 1 Inlet Node Name + CW Supply Outlet Node, !- Component 1 Outlet Node Name + PASSIVE; !- Component 1 Branch Control Type + +! ---Listing and Modeling all connectors on the supply side of the CW loop-- + ConnectorList, + Cooling Supply Side Connectors, !- Name + Connector:Splitter, !- Connector 1 Object Type + CW Loop Supply Splitter, !- Connector 1 Name + Connector:Mixer, !- Connector 2 Object Type + CW Loop Supply Mixer; !- Connector 2 Name + + Connector:Splitter, + CW Loop Supply Splitter, !- Name + CW Supply Pump Branch, !- Inlet Branch Name + CW Supply Chiller Branch,!- Outlet Branch 1 Name + CW Supply Bypass Branch; !- Outlet Branch 2 Name + + Connector:Mixer, + CW Loop Supply Mixer, !- Name + CW Supply Outlet Branch, !- Outlet Branch Name + CW Supply Chiller Branch,!- Inlet Branch 1 Name + CW Supply Bypass Branch; !- Inlet Branch 2 Name + +! ===INPUTTING THE DEMAND SIDE OF CHILLED WATER LOOP====== +! ---Listing and Modeling all the branches on the demand side of the CW loop---------- + BranchList, + Cooling Demand Side Branches, !- Name + CW Demand Inlet Branch, !- Branch 1 Name + West CW Cooling Coil Branch, !- Branch 2 Name + East CW Cooling Coil Branch, !- Branch 3 Name + CW Demand Bypass Branch, !- Branch 4 Name + CW Demand Outlet Branch; !- Branch 5 Name + + Branch, + CW Demand Inlet Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Pipe:Adiabatic, !- Component 1 Object Type + CW Demand Side Inlet Pipe, !- Component 1 Name + CW Demand Inlet Node, !- Component 1 Inlet Node Name + CW Demand Entrance Pipe Outlet Node, !- Component 1 Outlet Node Name + PASSIVE; !- Component 1 Branch Control Type + + Branch, + West CW Cooling Coil Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Coil:Cooling:Water, !- Component 1 Object Type + West Zone CW Cooling Coil, !- Component 1 Name + West CWCoil Water Inlet Node, !- Component 1 Inlet Node Name + West CWCoil Water Outlet Node, !- Component 1 Outlet Node Name + Active; !- Component 1 Branch Control Type + + Branch, + East CW Cooling Coil Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Coil:Cooling:Water, !- Component 1 Object Type + East Zone CW Cooling Coil, !- Component 1 Name + East CWCoil Water Inlet Node, !- Component 1 Inlet Node Name + East CWCoil Water Outlet Node, !- Component 1 Outlet Node Name + Active; !- Component 1 Branch Control Type + + Branch, + CW Demand Bypass Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Pipe:Adiabatic, !- Component 1 Object Type + CW Demand Side Bypass Pipe, !- Component 1 Name + CW Demand Bypass Inlet Node, !- Component 1 Inlet Node Name + CW Demand Bypass Outlet Node, !- Component 1 Outlet Node Name + BYPASS; !- Component 1 Branch Control Type + + Branch, + CW Demand Outlet Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Pipe:Adiabatic, !- Component 1 Object Type + CW Demand Side Outlet Pipe, !- Component 1 Name + CW Demand Exit Pipe Inlet Node, !- Component 1 Inlet Node Name + CW Demand Outlet Node, !- Component 1 Outlet Node Name + PASSIVE; !- Component 1 Branch Control Type + +! --Listing and Modeling all the connectors on the demand side of the CW loop-- + ConnectorList, + Cooling Demand Side Connectors, !- Name + Connector:Splitter, !- Connector 1 Object Type + CW Loop Demand Splitter, !- Connector 1 Name + Connector:Mixer, !- Connector 2 Object Type + CW Loop Demand Mixer; !- Connector 2 Name + + Connector:Splitter, + CW Loop Demand Splitter, !- Name + CW Demand Inlet Branch, !- Inlet Branch Name + West CW Cooling Coil Branch, !- Outlet Branch 1 Name + East CW Cooling Coil Branch, !- Outlet Branch 2 Name + CW Demand Bypass Branch; !- Outlet Branch 3 Name + + Connector:Mixer, + CW Loop Demand Mixer, !- Name + CW Demand Outlet Branch, !- Outlet Branch Name + West CW Cooling Coil Branch, !- Inlet Branch 1 Name + East CW Cooling Coil Branch, !- Inlet Branch 2 Name + CW Demand Bypass Branch; !- Inlet Branch 3 Name + + +!=============ELECTRIC CHILLER========================= + Chiller:Electric, + Chiller, !- Name + WaterCooled, !- Condenser Type + autosize, !- Nominal Capacity {W} + 5.0, !- Nominal COP {W/W} + Chiller Inlet Node, !- Chilled Water Inlet Node Name + Chiller Outlet Node, !- Chilled Water Outlet Node Name + Chiller Condenser Inlet Node, !- Condenser Inlet Node Name + Chiller Condenser Outlet Node, !- Condenser Outlet Node Name + 0.15, !- Minimum Part Load Ratio + 1.0, !- Maximum Part Load Ratio + 0.65, !- Optimum Part Load Ratio + 29.44, !- Design Condenser Inlet Temperature {C} + 2.682759, !- Temperature Rise Coefficient + 6.667, !- Design Chilled Water Outlet Temperature {C} + 0.01, !- Design Chilled Water Flow Rate {m3/s} + 0.01, !- Design Condenser Fluid Flow Rate {m3/s} + 0.94483600, !- Coefficient 1 of Capacity Ratio Curve + -.05700880, !- Coefficient 2 of Capacity Ratio Curve + -.00185486, !- Coefficient 3 of Capacity Ratio Curve + 1.907846, !- Coefficient 1 of Power Ratio Curve + -1.20498700, !- Coefficient 2 of Power Ratio Curve + 0.26346230, !- Coefficient 3 of Power Ratio Curve + 0.03303, !- Coefficient 1 of Full Load Ratio Curve + 0.6852, !- Coefficient 2 of Full Load Ratio Curve + 0.2818, !- Coefficient 3 of Full Load Ratio Curve + 5, !- Chilled Water Outlet Temperature Lower Limit {C} + NotModulated; !- Chiller Flow Mode + +!====Setpoint Manager for the Electric chiller======= + SetpointManager:Scheduled, + Chilled Water Loop Setpoint Manager, !- Name + Temperature, !- Control Variable + CW Loop Temp Schedule, !- Schedule Name + CW Supply Outlet Node; !- Setpoint Node or NodeList Name + +!====CW loop Circulation pump=================== + Pump:VariableSpeed, + CW Circ Pump, !- Name + CW Supply Inlet Node, !- Inlet Node Name + CW Pump Outlet Node, !- Outlet Node Name + 0.005, !- Rated Flow Rate {m3/s} + 160000, !- Rated Pump Head {Pa} + 1000, !- Rated Power Consumption {W} + 0.87, !- Motor Efficiency + 0.0, !- Fraction of Motor Inefficiencies to Fluid Stream + 0, !- Coefficient 1 of the Part Load Performance Curve + 1, !- Coefficient 2 of the Part Load Performance Curve + 0, !- Coefficient 3 of the Part Load Performance Curve + 0, !- Coefficient 4 of the Part Load Performance Curve + 0, !- Minimum Flow Rate {m3/s} + INTERMITTENT; !- Pump Control Type + +!===Modeling the various pipes used in the transport branches==== + Pipe:Adiabatic, + CW Supply Side Bypass Pipe, !- Name + CW Supply Bypass Inlet Node, !- Inlet Node Name + CW Supply Bypass Outlet Node; !- Outlet Node Name + + Pipe:Adiabatic, + CW Supply Side Outlet Pipe, !- Name + CW Supply Side Exit Pipe Inlet Node, !- Inlet Node Name + CW Supply Outlet Node; !- Outlet Node Name + + Pipe:Adiabatic, + CW Demand Side Inlet Pipe, !- Name + CW Demand Inlet Node, !- Inlet Node Name + CW Demand Entrance Pipe Outlet Node; !- Outlet Node Name + + Pipe:Adiabatic, + CW Demand Side Bypass Pipe, !- Name + CW Demand Bypass Inlet Node, !- Inlet Node Name + CW Demand Bypass Outlet Node; !- Outlet Node Name + + Pipe:Adiabatic, + CW Demand Side Outlet Pipe, !- Name + CW Demand Exit Pipe Inlet Node, !- Inlet Node Name + CW Demand Outlet Node; !- Outlet Node Name + +! --------------------------------------------------------------- +!- ====== ALL OBJECTS IN CLASS: COIL:COOLING:WATER =========== + + Coil:Cooling:Water, + West Zone CW Cooling Coil, !- Name + WestChWaterCoilAvailSched, !- Availability Schedule Name + autosize, !- Design Water Flow Rate {m3/s} + autosize, !- Design Air Flow Rate {m3/s} + autosize, !- Design Inlet Water Temperature {C} + autosize, !- Design Inlet Air Temperature {C} + autosize, !- Design Outlet Air Temperature {C} + autosize, !- Design Inlet Air Humidity Ratio {kgWater/kgDryAir} + autosize, !- Design Outlet Air Humidity Ratio {kgWater/kgDryAir} + West CWCoil Water Inlet Node, !- Water Inlet Node Name + West CWCoil Water Outlet Node, !- Water Outlet Node Name + West Zone CCoil Air Outlet Node, !- Air Inlet Node Name + West Air Loop Outlet Node, !- Air Outlet Node Name + SimpleAnalysis, !- Type of Analysis + CrossFlow; !- Heat Exchanger Configuration + +!- ======== ALL OBJECTS IN CLASS: CONTROLLER:WATERCOIL ======= + + Controller:WaterCoil, + West CW Coil Controller, !- Name + Temperature, !- Control Variable + Reverse, !- Action + FLOW, !- Actuator Variable + West Air Loop Outlet Node, !- Sensor Node Name + West CWCoil Water Inlet Node, !- Actuator Node Name + autosize, !- Controller Convergence Tolerance {deltaC} + autosize, !- Maximum Actuated Flow {m3/s} + 0.0; !- Minimum Actuated Flow {m3/s} + + AirLoopHVAC:ControllerList, + West Data Center Sys Controllers, !- Name + Controller:WaterCoil, !- Controller 1 Object Type + West CW Coil Controller; !- Controller 1 Name + + Coil:Cooling:Water, + East Zone CW Cooling Coil, !- Name + EastChWaterCoilAvailSched, !- Availability Schedule Name + autosize, !- Design Water Flow Rate {m3/s} + autosize, !- Design Air Flow Rate {m3/s} + autosize, !- Design Inlet Water Temperature {C} + autosize, !- Design Inlet Air Temperature {C} + autosize, !- Design Outlet Air Temperature {C} + autosize, !- Design Inlet Air Humidity Ratio {kgWater/kgDryAir} + autosize, !- Design Outlet Air Humidity Ratio {kgWater/kgDryAir} + East CWCoil Water Inlet Node, !- Water Inlet Node Name + East CWCoil Water Outlet Node, !- Water Outlet Node Name + East Zone CCoil Air Outlet Node, !- Air Inlet Node Name + East Air Loop Outlet Node, !- Air Outlet Node Name + SimpleAnalysis, !- Type of Analysis + CrossFlow; !- Heat Exchanger Configuration + + +!- ======== ALL OBJECTS IN CLASS: CONTROLLER:WATERCOIL ======= + + Controller:WaterCoil, + East CW Coil Controller, !- Name + Temperature, !- Control Variable + Reverse, !- Action + FLOW, !- Actuator Variable + East Air Loop Outlet Node, !- Sensor Node Name + East CWCoil Water Inlet Node, !- Actuator Node Name + autosize, !- Controller Convergence Tolerance {deltaC} + autosize, !- Maximum Actuated Flow {m3/s} + 0.0; !- Minimum Actuated Flow {m3/s} + + AirLoopHVAC:ControllerList, + East Data Center Sys Controllers, !- Name + Controller:WaterCoil, !- Controller 1 Object Type + East CW Coil Controller; !- Controller 1 Name + +!-------------------------------------------------------------- +!----Plant Equipment Operation Schemes for the CW Loop--------- + + PlantEquipmentOperationSchemes, + CW Loop Operation, !- Name + PlantEquipmentOperation:CoolingLoad, !- Control Scheme 1 Object Type + CW Loop Cooling Load, !- Control Scheme 1 Name + Chiller AlwaysOnSchedule;!- Control Scheme 1 Schedule Name + + PlantEquipmentOperation:CoolingLoad, + CW Loop Cooling Load, !- Name + 0, !- Load Range 1 Lower Limit {W} + 1000000000, !- Load Range 1 Upper Limit {W} + Chiller Plant; !- Range 1 Equipment List Name + + PlantEquipmentList, + Chiller Plant, !- Name + Chiller:Electric, !- Equipment 1 Object Type + Chiller; !- Equipment 1 Name + +!--------------------------------CW loop schedules-------------------------------------------- + + ScheduleTypeLimits, + CW Loop Any Number; !- Name + + ScheduleTypeLimits, + CW Loop On/Off, !- Name + 0, !- Lower Limit Value + 1, !- Upper Limit Value + DISCRETE; !- Numeric Type + + Schedule:Compact, + CW Loop Temp Schedule, !- Name + CW Loop Any Number, !- Schedule Type Limits Name + THROUGH: 12/31, !- Field 1 + FOR: AllDays, !- Field 2 + UNTIL: 24:00,7.0; !- Field 3 + + Schedule:Compact, + Chiller AlwaysOnSchedule,!- Name + CW Loop On/Off, !- Schedule Type Limits Name + THROUGH: 12/31, !- Field 1 + FOR: AllDays, !- Field 2 + UNTIL: 24:00,1; !- Field 3 + + Schedule:Compact, + Load Profile Flow Frac Schedule, !- Name + CW Loop Any Number, !- Schedule Type Limits Name + THROUGH: 12/31, !- Field 1 + FOR: AllDays, !- Field 2 + UNTIL: 24:00,1; !- Field 3 + + Sizing:Plant, + Chilled Water Loop, !- Plant or Condenser Loop Name + Cooling, !- Loop Type + 7.0, !- Design Loop Exit Temperature {C} + 4.0; !- Loop Design Temperature Difference {deltaC} + +!-------------------------------------------------------------------- +!******************Define the Condenser loop************************* + + PlantLoop, + Condenser Loop, !- Name + Water, !- Fluid Type + , !- User Defined Fluid Type + Tower Loop Operation, !- Plant Equipment Operation Scheme Name + Condenser Supply Outlet Node, !- Loop Temperature Setpoint Node Name + 100, !- Maximum Loop Temperature {C} + 3, !- Minimum Loop Temperature {C} + 1.0, !- Maximum Loop Flow Rate {m3/s} + 0, !- Minimum Loop Flow Rate {m3/s} + autocalculate, !- Plant Loop Volume {m3} + Condenser Supply Inlet Node, !- Plant Side Inlet Node Name + Condenser Supply Outlet Node, !- Plant Side Outlet Node Name + Condenser Supply Side Branches, !- Plant Side Branch List Name + Condenser Supply Side Connectors, !- Plant Side Connector List Name + Condenser Demand Inlet Node, !- Demand Side Inlet Node Name + Condenser Demand Outlet Node, !- Demand Side Outlet Node Name + Condenser Demand Side Branches, !- Demand Side Branch List Name + Condenser Demand Side Connectors, !- Demand Side Connector List Name + Optimal; !- Load Distribution Scheme + +! ----Listing and Modeling the supply side branches of the condenser loop---- + BranchList, + Condenser Supply Side Branches, !- Name + Condenser Supply Pump Branch, !- Branch 1 Name + Condenser Supply Tower Branch, !- Branch 2 Name + Condenser Supply Bypass Branch, !- Branch 3 Name + Condenser Supply Outlet Branch; !- Branch 4 Name + + Branch, + Condenser Supply Pump Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Pump:VariableSpeed, !- Component 1 Object Type + Cond Circ Pump, !- Component 1 Name + Condenser Supply Inlet Node, !- Component 1 Inlet Node Name + Condenser Pump Outlet Node, !- Component 1 Outlet Node Name + ACTIVE; !- Component 1 Branch Control Type + + Branch, + Condenser Supply Tower Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + CoolingTower:VariableSpeed, !- Component 1 Object Type + Cooling Tower, !- Component 1 Name + Condenser Tower Inlet Node, !- Component 1 Inlet Node Name + Condenser Tower Outlet Node, !- Component 1 Outlet Node Name + ACTIVE; !- Component 1 Branch Control Type + + Branch, + Condenser Supply Bypass Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Pipe:Adiabatic, !- Component 1 Object Type + Condenser Supply Bypass Pipe, !- Component 1 Name + Cond Supply Bypass Inlet Node, !- Component 1 Inlet Node Name + Cond Supply Bypass Outlet Node, !- Component 1 Outlet Node Name + BYPASS; !- Component 1 Branch Control Type + + Branch, + Condenser Supply Outlet Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Pipe:Adiabatic, !- Component 1 Object Type + Condenser Supply Outlet Pipe, !- Component 1 Name + Condenser Supply Exit Pipe Inlet Node, !- Component 1 Inlet Node Name + Condenser Supply Outlet Node, !- Component 1 Outlet Node Name + PASSIVE; !- Component 1 Branch Control Type + +! ----Listing and Modeling the supply side connectors of the condenser loop---- + + ConnectorList, + Condenser Supply Side Connectors, !- Name + Connector:Splitter, !- Connector 1 Object Type + Condenser Supply Splitter, !- Connector 1 Name + Connector:Mixer, !- Connector 2 Object Type + Condenser Supply Mixer; !- Connector 2 Name + + Connector:Splitter, + Condenser Supply Splitter, !- Name + Condenser Supply Pump Branch, !- Inlet Branch Name + Condenser Supply Tower Branch, !- Outlet Branch 1 Name + Condenser Supply Bypass Branch; !- Outlet Branch 2 Name + + Connector:Mixer, + Condenser Supply Mixer, !- Name + Condenser Supply Outlet Branch, !- Outlet Branch Name + Condenser Supply Tower Branch, !- Inlet Branch 1 Name + Condenser Supply Bypass Branch; !- Inlet Branch 2 Name + +! --Listing and Modeling the demand side branches of the condenser loop---- + + BranchList, + Condenser Demand Side Branches, !- Name + Condenser Demand Inlet Branch, !- Branch 1 Name + Condenser Demand Bypass Branch, !- Branch 2 Name + Condenser Demand Chiller Branch, !- Branch 3 Name + Condenser Demand Outlet Branch; !- Branch 4 Name + + Branch, + Condenser Demand Inlet Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Pipe:Adiabatic, !- Component 1 Object Type + Condenser Demand Inlet Pipe, !- Component 1 Name + Condenser Demand Inlet Node, !- Component 1 Inlet Node Name + Condenser Demand Entrance Pipe Outlet Node, !- Component 1 Outlet Node Name + PASSIVE; !- Component 1 Branch Control Type + + Branch, + Condenser Demand Chiller Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Chiller:Electric, !- Component 1 Object Type + Chiller, !- Component 1 Name + Chiller Condenser Inlet Node, !- Component 1 Inlet Node Name + Chiller Condenser Outlet Node, !- Component 1 Outlet Node Name + ACTIVE; !- Component 1 Branch Control Type + + Branch, + Condenser Demand Bypass Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Pipe:Adiabatic, !- Component 1 Object Type + Condenser Demand Bypass Pipe, !- Component 1 Name + Cond Demand Bypass Inlet Node, !- Component 1 Inlet Node Name + Cond Demand Bypass Outlet Node, !- Component 1 Outlet Node Name + BYPASS; !- Component 1 Branch Control Type + + Branch, + Condenser Demand Outlet Branch, !- Name + 0, !- Maximum Flow Rate {m3/s} + , !- Pressure Drop Curve Name + Pipe:Adiabatic, !- Component 1 Object Type + Condenser Demand Outlet Pipe, !- Component 1 Name + Condenser Demand Exit Pipe Inlet Node, !- Component 1 Inlet Node Name + Condenser Demand Outlet Node, !- Component 1 Outlet Node Name + PASSIVE; !- Component 1 Branch Control Type + +! ---Listing and Modeling the demand side connectors of the condenser loop--- + + ConnectorList, + Condenser Demand Side Connectors, !- Name + Connector:Splitter, !- Connector 1 Object Type + Condenser Demand Splitter, !- Connector 1 Name + Connector:Mixer, !- Connector 2 Object Type + Condenser Demand Mixer; !- Connector 2 Name + + Connector:Splitter, + Condenser Demand Splitter, !- Name + Condenser Demand Inlet Branch, !- Inlet Branch Name + Condenser Demand Chiller Branch, !- Outlet Branch 1 Name + Condenser Demand Bypass Branch; !- Outlet Branch 2 Name + + Connector:Mixer, + Condenser Demand Mixer, !- Name + Condenser Demand Outlet Branch, !- Outlet Branch Name + Condenser Demand Chiller Branch, !- Inlet Branch 1 Name + Condenser Demand Bypass Branch; !- Inlet Branch 2 Name + +!---------------------------------------------------------------- +! ======Modeling THE COOLING TOWER=============================== + + CoolingTower:VariableSpeed, + Cooling Tower, !- Name + Condenser Tower Inlet Node, !- Water Inlet Node Name + Condenser Tower Outlet Node, !- Water Outlet Node Name + YorkCalcUserDefined, !- Model Type + YorkCalc Default Tower Model, !- Model Coefficient Name + , !- Design Inlet Air Wet-Bulb Temperature {C} + , !- Design Approach Temperature {deltaC} + , !- Design Range Temperature {deltaC} + autosize, !- Design Water Flow Rate {m3/s} + autosize, !- Design Air Flow Rate {m3/s} + autosize, !- Design Fan Power {W} + CoolingTowerFanRatioCurve, !- Fan Power Ratio Function of Air Flow Rate Ratio Curve Name + 0.2, !- Minimum Air Flow Rate Ratio + 0.125, !- Fraction of Tower Capacity in Free Convection Regime + 450.0, !- Basin Heater Capacity {W/K} + 4.5, !- Basin Heater Setpoint Temperature {C} + , !- Basin Heater Operating Schedule Name + SaturatedExit, !- Evaporation Loss Mode + , !- Evaporation Loss Factor {percent/K} + 0.05, !- Drift Loss Percent {percent} + ConcentrationRatio, !- Blowdown Calculation Mode + 4.0; !- Blowdown Concentration Ratio + + Curve:Cubic, + CoolingTowerFanRatioCurve, !- Name + -0.00931516301535329, !- Coefficient1 Constant + 0.0512333965844443, !- Coefficient2 x + -0.0838364671381841, !- Coefficient3 x**2 + 1.04191823356909, !- Coefficient4 x**3 + 0.15, !- Minimum Value of x + 1.0; !- Maximum Value of x + + CoolingTowerPerformance:YorkCalc, + YorkCalc Default Tower Model, !- Name + -34.4, !- Minimum Inlet Air Wet-Bulb Temperature {C} + 26.6667, !- Maximum Inlet Air Wet-Bulb Temperature {C} + 1.1111, !- Minimum Range Temperature {deltaC} + 22.2222, !- Maximum Range Temperature {deltaC} + 1.1111, !- Minimum Approach Temperature {deltaC} + 40.0, !- Maximum Approach Temperature {deltaC} + 0.5, !- Minimum Water Flow Rate Ratio + 4.0, !- Maximum Water Flow Rate Ratio + 8.0, !- Maximum Liquid to Gas Ratio + -0.359741205, !- Coefficient 1 + -0.055053608, !- Coefficient 2 + 0.0023850432, !- Coefficient 3 + 0.173926877, !- Coefficient 4 + -0.0248473764, !- Coefficient 5 + 0.00048430224, !- Coefficient 6 + -0.005589849456, !- Coefficient 7 + 0.0005770079712, !- Coefficient 8 + -0.00001342427256, !- Coefficient 9 + 2.84765801111111, !- Coefficient 10 + -0.121765149, !- Coefficient 11 + 0.0014599242, !- Coefficient 12 + 1.680428651, !- Coefficient 13 + -0.0166920786, !- Coefficient 14 + -0.0007190532, !- Coefficient 15 + -0.025485194448, !- Coefficient 16 + 0.0000487491696, !- Coefficient 17 + 0.00002719234152, !- Coefficient 18 + -0.0653766255555556, !- Coefficient 19 + -0.002278167, !- Coefficient 20 + 0.0002500254, !- Coefficient 21 + -0.0910565458, !- Coefficient 22 + 0.00318176316, !- Coefficient 23 + 0.000038621772, !- Coefficient 24 + -0.0034285382352, !- Coefficient 25 + 0.00000856589904, !- Coefficient 26 + -0.000001516821552; !- Coefficient 27 + +!========Setpoint Manager for the Cooling tower=========== + + SetpointManager:FollowOutdoorAirTemperature, + CondenserControl SetpointManager, !- Name + Temperature, !- Control Variable + OutdoorAirWetBulb, !- Reference Temperature Type + 0, !- Offset Temperature Difference {deltaC} + 80, !- Maximum Setpoint Temperature {C} + 10, !- Minimum Setpoint Temperature {C} + Condenser Supply Outlet Node; !- Setpoint Node or NodeList Name + +!=======Circulation pump for the condenser loop=========== + Pump:VariableSpeed, + Cond Circ Pump, !- Name + Condenser Supply Inlet Node, !- Inlet Node Name + Condenser Pump Outlet Node, !- Outlet Node Name + autosize, !- Rated Flow Rate {m3/s} + 140000, !- Rated Pump Head {Pa} + autosize, !- Rated Power Consumption {W} + 0.9, !- Motor Efficiency + 0.0, !- Fraction of Motor Inefficiencies to Fluid Stream + 0, !- Coefficient 1 of the Part Load Performance Curve + 1, !- Coefficient 2 of the Part Load Performance Curve + 0, !- Coefficient 3 of the Part Load Performance Curve + 0, !- Coefficient 4 of the Part Load Performance Curve + 0, !- Minimum Flow Rate {m3/s} + INTERMITTENT; !- Pump Control Type + +!=====Modeling all the major pipes in the system============ + Pipe:Adiabatic, + Condenser Supply Bypass Pipe, !- Name + Cond Supply Bypass Inlet Node, !- Inlet Node Name + Cond Supply Bypass Outlet Node; !- Outlet Node Name + + Pipe:Adiabatic, + Condenser Supply Outlet Pipe, !- Name + Condenser Supply Exit Pipe Inlet Node, !- Inlet Node Name + Condenser Supply Outlet Node; !- Outlet Node Name + + Pipe:Adiabatic, + Condenser Demand Inlet Pipe, !- Name + Condenser Demand Inlet Node, !- Inlet Node Name + Condenser Demand Entrance Pipe Outlet Node; !- Outlet Node Name + + Pipe:Adiabatic, + Condenser Demand Bypass Pipe, !- Name + Cond Demand Bypass Inlet Node, !- Inlet Node Name + Cond Demand Bypass Outlet Node; !- Outlet Node Name + + Pipe:Adiabatic, + Condenser Demand Outlet Pipe, !- Name + Condenser Demand Exit Pipe Inlet Node, !- Inlet Node Name + Condenser Demand Outlet Node; !- Outlet Node Name + +!--Plant Equipment Operation Schemes for the Condenser Loop--------- + + PlantEquipmentOperationSchemes, + Tower Loop Operation, !- Name + PlantEquipmentOperation:CoolingLoad, !- Control Scheme 1 Object Type + Tower Load, !- Control Scheme 1 Name + Tower AlwaysOnSchedule; !- Control Scheme 1 Schedule Name + + PlantEquipmentOperation:CoolingLoad, + Tower Load, !- Name + 0, !- Load Range 1 Lower Limit {W} + 1000000000, !- Load Range 1 Upper Limit {W} + Tower Plant; !- Range 1 Equipment List Name + + PlantEquipmentList, + Tower Plant, !- Name + CoolingTower:VariableSpeed, !- Equipment 1 Object Type + Cooling Tower; !- Equipment 1 Name + +! -- Condenser loop schedules--------------------- + + ScheduleTypeLimits, + Tower On/Off, !- Name + 0, !- Lower Limit Value + 1, !- Upper Limit Value + DISCRETE; !- Numeric Type + + Schedule:Compact, + Tower AlwaysOnSchedule, !- Name + Tower On/Off, !- Schedule Type Limits Name + THROUGH: 12/31, !- Field 1 + FOR: AllDays, !- Field 2 + UNTIL: 24:00,1; !- Field 3 + + Sizing:Plant, + Condenser Loop, !- Plant or Condenser Loop Name + Condenser, !- Loop Type + 20.0, !- Design Loop Exit Temperature {C} + 5.0; !- Loop Design Temperature Difference {deltaC} + + +! End of chilled water plant definitions +! end of Data Center Air System serving a single zone +!********************************************************** + + Sizing:Parameters, + 1.3, !- Heating Sizing Factor + 1.3, !- Cooling Sizing Factor + ; !- Timesteps in Averaging Window + + Sizing:Zone, + West Zone, !- Zone or ZoneList Name + SupplyAirTemperature, !- Zone Cooling Design Supply Air Temperature Input Method + 13., !- Zone Cooling Design Supply Air Temperature {C} + , !- Zone Cooling Design Supply Air Temperature Difference {deltaC} + SupplyAirTemperature, !- Zone Heating Design Supply Air Temperature Input Method + 30., !- Zone Heating Design Supply Air Temperature {C} + , !- Zone Heating Design Supply Air Temperature Difference {deltaC} + 0.0075, !- Zone Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} + 0.004, !- Zone Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} + SZ DSOA West Zone, !- Design Specification Outdoor Air Object Name + 0.0, !- Zone Heating Sizing Factor + 0.0, !- Zone Cooling Sizing Factor + DesignDay, !- Cooling Design Air Flow Method + 0, !- Cooling Design Air Flow Rate {m3/s} + , !- Cooling Minimum Air Flow per Zone Floor Area {m3/s-m2} + , !- Cooling Minimum Air Flow {m3/s} + , !- Cooling Minimum Air Flow Fraction + DesignDay, !- Heating Design Air Flow Method + 0, !- Heating Design Air Flow Rate {m3/s} + , !- Heating Maximum Air Flow per Zone Floor Area {m3/s-m2} + , !- Heating Maximum Air Flow {m3/s} + ; !- Heating Maximum Air Flow Fraction + + DesignSpecification:OutdoorAir, + SZ DSOA West Zone, !- Name + flow/person, !- Outdoor Air Method + 0.0125, !- Outdoor Air Flow per Person {m3/s-person} + 0.0, !- Outdoor Air Flow per Zone Floor Area {m3/s-m2} + 0.0; !- Outdoor Air Flow per Zone {m3/s} + + People, + West Zone PEOPLE, !- Name + West Zone, !- Zone or ZoneList Name + OFFICE OCCUPANCY, !- Number of People Schedule Name + people, !- Number of People Calculation Method + 0, !- Number of People + , !- People per Zone Floor Area {person/m2} + , !- Zone Floor Area per Person {m2/person} + 0.3000000, !- Fraction Radiant + , !- Sensible Heat Fraction + Activity Sch, !- Activity Level Schedule Name + 3.82E-8, !- Carbon Dioxide Generation Rate {m3/s-W} + , !- Enable ASHRAE 55 Comfort Warnings + zoneaveraged, !- Mean Radiant Temperature Calculation Type + , !- Surface Name/Angle Factor List Name + Work Eff Sch, !- Work Efficiency Schedule Name + ClothingInsulationSchedule, !- Clothing Insulation Calculation Method + , !- Clothing Insulation Calculation Method Schedule Name + Clothing Sch, !- Clothing Insulation Schedule Name + Air Velo Sch, !- Air Velocity Schedule Name + FANGER; !- Thermal Comfort Model 1 Type + + Sizing:Zone, + East Zone, !- Zone or ZoneList Name + SupplyAirTemperature, !- Zone Cooling Design Supply Air Temperature Input Method + 13., !- Zone Cooling Design Supply Air Temperature {C} + , !- Zone Cooling Design Supply Air Temperature Difference {deltaC} + SupplyAirTemperature, !- Zone Heating Design Supply Air Temperature Input Method + 30., !- Zone Heating Design Supply Air Temperature {C} + , !- Zone Heating Design Supply Air Temperature Difference {deltaC} + 0.0075, !- Zone Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} + 0.004, !- Zone Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} + SZ DSOA East Zone, !- Design Specification Outdoor Air Object Name + 0.0, !- Zone Heating Sizing Factor + 0.0, !- Zone Cooling Sizing Factor + DesignDay, !- Cooling Design Air Flow Method + 0, !- Cooling Design Air Flow Rate {m3/s} + , !- Cooling Minimum Air Flow per Zone Floor Area {m3/s-m2} + , !- Cooling Minimum Air Flow {m3/s} + , !- Cooling Minimum Air Flow Fraction + DesignDay, !- Heating Design Air Flow Method + 0, !- Heating Design Air Flow Rate {m3/s} + , !- Heating Maximum Air Flow per Zone Floor Area {m3/s-m2} + , !- Heating Maximum Air Flow {m3/s} + ; !- Heating Maximum Air Flow Fraction + + DesignSpecification:OutdoorAir, + SZ DSOA East Zone, !- Name + flow/person, !- Outdoor Air Method + 0.0125, !- Outdoor Air Flow per Person {m3/s-person} + 0.0, !- Outdoor Air Flow per Zone Floor Area {m3/s-m2} + 0.0; !- Outdoor Air Flow per Zone {m3/s} + + People, + East Zone PEOPLE, !- Name + East Zone, !- Zone or ZoneList Name + OFFICE OCCUPANCY, !- Number of People Schedule Name + people, !- Number of People Calculation Method + 0, !- Number of People + , !- People per Zone Floor Area {person/m2} + , !- Zone Floor Area per Person {m2/person} + 0.3000000, !- Fraction Radiant + , !- Sensible Heat Fraction + Activity Sch, !- Activity Level Schedule Name + 3.82E-8, !- Carbon Dioxide Generation Rate {m3/s-W} + , !- Enable ASHRAE 55 Comfort Warnings + zoneaveraged, !- Mean Radiant Temperature Calculation Type + , !- Surface Name/Angle Factor List Name + Work Eff Sch, !- Work Efficiency Schedule Name + ClothingInsulationSchedule, !- Clothing Insulation Calculation Method + , !- Clothing Insulation Calculation Method Schedule Name + Clothing Sch, !- Clothing Insulation Schedule Name + Air Velo Sch, !- Air Velocity Schedule Name + FANGER; !- Thermal Comfort Model 1 Type + + Schedule:Compact, + OFFICE OCCUPANCY, !- Name + Fraction, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: WeekDays SummerDesignDay, !- Field 2 + Until: 6:00,0.0, !- Field 3 + Until: 7:00,0.10, !- Field 5 + Until: 8:00,0.50, !- Field 7 + Until: 12:00,1.00, !- Field 9 + Until: 13:00,0.50, !- Field 11 + Until: 16:00,1.00, !- Field 13 + Until: 17:00,0.50, !- Field 15 + Until: 18:00,0.10, !- Field 17 + Until: 24:00,0.0, !- Field 19 + For: AllOtherDays, !- Field 21 + Until: 24:00,0.0; !- Field 22 + + Schedule:Compact, + Activity Sch, !- Name + Any Number, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: AllDays, !- Field 2 + Until: 24:00,131.8; !- Field 3 + + Schedule:Compact, + Work Eff Sch, !- Name + Any Number, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: AllDays, !- Field 2 + Until: 24:00,0.0; !- Field 3 + + Schedule:Compact, + Clothing Sch, !- Name + Any Number, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: AllDays, !- Field 2 + Until: 24:00,1.0; !- Field 3 + + Schedule:Compact, + Air Velo Sch, !- Name + Any Number, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: AllDays, !- Field 2 + Until: 24:00,0.137; !- Field 3 + + Schedule:Compact, + BLDG_EQUIP_SCH, !- Name + Fraction, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: Weekdays, !- Field 2 + Until: 08:00,0.40, !- Field 3 + Until: 12:00,0.90, !- Field 5 + Until: 13:00,0.80, !- Field 7 + Until: 17:00,0.90, !- Field 9 + Until: 18:00,0.50, !- Field 11 + Until: 24:00,0.40, !- Field 13 + For: SummerDesignDay, !- Field 15 + Until: 24:00,1.0, !- Field 16 + For: Saturday, !- Field 18 + Until: 06:00,0.30, !- Field 19 + Until: 08:00,0.4, !- Field 21 + Until: 12:00,0.5, !- Field 23 + Until: 17:00,0.35, !- Field 25 + Until: 24:00,0.30, !- Field 27 + For: WinterDesignDay, !- Field 29 + Until: 24:00,0.0, !- Field 30 + For: Sunday Holidays AllOtherDays, !- Field 32 + Until: 24:00,0.30; !- Field 33 + + Schedule:Compact, + DataCenter_Equip_Sch, + Any Number, + Through: 1/31, + For: AllDays, + Until: 24:00, 0.25, + Through: 2/29, + For: AllDays, + Until: 24:00, 0.50, + Through: 3/31, + For: AllDays, + Until: 24:00, 0.75, + Through: 4/30, + For: AllDays, + Until: 24:00, 1.0, + Through: 5/31, + For: AllDays, + Until: 24:00, 0.25, + Through: 6/30, + For: AllDays, + Until: 24:00, 0.50, + Through: 7/31, + For: AllDays, + Until: 24:00, 0.75, + Through: 8/31, + For: AllDays, + Until: 24:00, 1.0, + Through: 9/30, + For: AllDays, + Until: 24:00, 0.25, + Through: 10/31, + For: AllDays, + Until: 24:00, 0.50, + Through: 11/30, + For: AllDays, + Until: 24:00, 0.75, + Through: 12/31, + For: AllDays, + Until: 24:00, 1.00; + + ScheduleTypeLimits, + Any Number; !- Name + + Lights, + West Zone Lights, !- Name + West Zone, !- Zone or ZoneList Name + LIGHTS-1, !- Schedule Name + LightingLevel, !- Design Level Calculation Method + 284, !- Lighting Level {W} + , !- Watts per Zone Floor Area {W/m2} + , !- Watts per Person {W/person} + 0.0, !- Return Air Fraction + 0.59, !- Fraction Radiant + 0.2, !- Fraction Visible + 0, !- Fraction Replaceable + GeneralLights; !- End-Use Subcategory + + ElectricEquipment, + West Zone_MiscPlug_Equip, !- Name + West Zone, !- Zone or ZoneList Name + BLDG_EQUIP_SCH, !- Schedule Name + EquipmentLevel, !- Design Level Calculation Method + 0., !- Design Level {W} + , !- Watts per Zone Floor Area {W/m2} + , !- Watts per Person {W/person} + 0.0000, !- Fraction Latent + 0.2500, !- Fraction Radiant + 0.0000, !- Fraction Lost + MiscPlug; !- End-Use Subcategory + + ElectricEquipment, + WestDataCenter_Equip, !- Name + West Zone, !- Zone or ZoneList Name + DataCenter_Equip_Sch, !- Schedule Name + Watts/Area, !- Design Level Calculation Method + , !- Design Level {W} + 200.0, !- Watts per Zone Floor Area {W/m2} + , !- Watts per Person {W/person} + 0.0000, !- Fraction Latent + 0.2500, !- Fraction Radiant + 0.0000, !- Fraction Lost + ITEquipMent; !- End-Use Subcategory + + Lights, + East Zone Lights, !- Name + East Zone, !- Zone or ZoneList Name + LIGHTS-1, !- Schedule Name + LightingLevel, !- Design Level Calculation Method + 284, !- Lighting Level {W} + , !- Watts per Zone Floor Area {W/m2} + , !- Watts per Person {W/person} + 0.0, !- Return Air Fraction + 0.59, !- Fraction Radiant + 0.2, !- Fraction Visible + 0, !- Fraction Replaceable + GeneralLights; !- End-Use Subcategory + + ElectricEquipment, + East Zone_MiscPlug_Equip, !- Name + East Zone, !- Zone or ZoneList Name + BLDG_EQUIP_SCH, !- Schedule Name + EquipmentLevel, !- Design Level Calculation Method + 0., !- Design Level {W} + , !- Watts per Zone Floor Area {W/m2} + , !- Watts per Person {W/person} + 0.0000, !- Fraction Latent + 0.5000, !- Fraction Radiant + 0.0000, !- Fraction Lost + MiscPlug; !- End-Use Subcategory + + ElectricEquipment, + EastDataCenter_Equip, !- Name + East Zone, !- Zone or ZoneList Name + DataCenter_Equip_Sch, !- Schedule Name + Watts/Area, !- Design Level Calculation Method + , !- Design Level {W} + 200.0, !- Watts per Zone Floor Area {W/m2} + , !- Watts per Person {W/person} + 0.0000, !- Fraction Latent + 0.5000, !- Fraction Radiant + 0.0000, !- Fraction Lost + ITEquipMent; !- End-Use Subcategory + + Schedule:Compact, + LIGHTS-1, !- Name + Fraction, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: Weekdays SummerDesignDay WinterDesignDay, !- Field 2 + Until: 9:00,0.05, !- Field 3 + Until: 10:00,0.9, !- Field 5 + Until: 11:00,0.95, !- Field 7 + Until: 12:00,1.0, !- Field 9 + Until: 13:00,0.95, !- Field 11 + Until: 14:00,0.8, !- Field 13 + Until: 15:00,0.9, !- Field 15 + Until: 17:00,1.0, !- Field 17 + Until: 24:00,0.05, !- Field 19 + For: AllOtherDays, !- Field 21 + Until: 24:00,0.05; !- Field 22 + + ZoneControl:Thermostat, + West Zone Thermostat, !- Name + West Zone, !- Zone or ZoneList Name + Zone Control Type Sched, !- Control Type Schedule Name + ThermostatSetpoint:DualSetpoint, !- Control 1 Object Type + Temperature Setpoints; !- Control 1 Name + + ZoneControl:Thermostat, + East Zone Thermostat, !- Name + East Zone, !- Zone or ZoneList Name + Zone Control Type Sched, !- Control Type Schedule Name + ThermostatSetpoint:DualSetpoint, !- Control 1 Object Type + Temperature Setpoints; !- Control 1 Name + + ThermostatSetpoint:DualSetpoint, + Temperature Setpoints, !- Name + Heating Setpoints, !- Heating Setpoint Temperature Schedule Name + Cooling Setpoints; !- Cooling Setpoint Temperature Schedule Name + + Schedule:Compact, + Zone Control Type Sched, !- Name + Control Type, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: AllDays, !- Field 2 + Until: 24:00,4; !- Field 3 + + ScheduleTypeLimits, + Control Type, !- Name + 0, !- Lower Limit Value + 4, !- Upper Limit Value + DISCRETE; !- Numeric Type + + ScheduleTypeLimits, + Temperature, !- Name + -60, !- Lower Limit Value + 200, !- Upper Limit Value + CONTINUOUS, !- Numeric Type + Temperature; !- Unit Type + + ScheduleTypeLimits, + Fraction, !- Name + 0.0, !- Lower Limit Value + 1.0, !- Upper Limit Value + CONTINUOUS; !- Numeric Type + + Schedule:Compact, + Heating Setpoints, !- Name + Temperature, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: AllDays, !- Field 2 + Until: 7:00,20.0, !- Field 3 + Until: 17:00,20.0, !- Field 5 + Until: 24:00,20.0; !- Field 7 + + Schedule:Compact, + Cooling Setpoints, !- Name + Temperature, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: AllDays, !- Field 2 + Until: 7:00,23.0, !- Field 3 + Until: 17:00,23.0, !- Field 5 + Until: 24:00,23.0; !- Field 7 + + Schedule:Compact, + ALWAYS_ON, !- Name + Fraction, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: AllDays, !- Field 2 + Until: 24:00,1.0; !- Field 3 + +! Schedule:Compact, +! ALWAYS_OFF, !- Name +! Fraction, !- Schedule Type Limits Name +! Through: 12/31, !- Field 1 +! For: AllDays, !- Field 2 +! Until: 24:00,.0; !- Field 3 + + Schedule:Compact, + FanAndCoilAvailSched, !- Name + Fraction, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: AllDays, !- Field 2 + Until: 24:00,1.0; !- Field 3 + + Schedule:Compact, + WestChWaterCoilAvailSched, !- Name + Fraction, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: AllDays, !- Field 2 + Until: 24:00, 0.0; !- Field 3 + + Schedule:Compact, + WestDXCCoilAvailSched, !- Name + Fraction, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: AllDays, !- Field 2 + Until: 7:00, 1.0, !- Field 3 + Until: 17:00, 1.0, !- Field 4 + Until: 24:00, 1.0; !- Field 5 + + Schedule:Compact, + EastChWaterCoilAvailSched, !- Name + Fraction, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: AllDays, !- Field 2 + Until: 7:00, 1.0, !- Field 3 + Until: 17:00, 1.0, !- Field 4 + Until: 24:00, 1.0; !- Field 5 + + Schedule:Compact, + EastDXCCoilAvailSched, !- Name + Fraction, !- Schedule Type Limits Name + Through: 12/31, !- Field 1 + For: AllDays, !- Field 2 + Until: 24:00, 0.0; !- Field 3 + + !**************************************************************** + ! Power Utilization Effectiveness (PUE) Calculation EMS Procedure + + EnergyManagementSystem:ProgramCallingManager, + Calculate Power Utilization Effectiveness, !- Name + EndOfZoneTimestepBeforeZoneReporting, !- EnergyPlus Model Calling Point + CalculatePUE; !- Program Name 1 + + Output:EnergyManagementSystem, + Verbose, !- Actuator Availability Dictionary Reporting + Verbose, !- Internal Variable Availability Dictionary Reporting + Verbose; !- EMS Runtime Language Debug Output Level + + ! The variable "Facility Total Building Electric Demand Power" includes: lighting and IT Equipment. + ! Other internal electric loads, electric equipment other than IT is set to zero. + EnergyManagementSystem:Sensor, + IT_Equip_Power, !- Name + Whole Building, !- Output:Variable or Output:Meter Index Key Name + Facility Total Building Electric Demand Power; !- Output:Variable or Output:Meter Name + + ! "Facility Total Electric Demand Power" is the total of the whole Building and HVAC electric demands. + EnergyManagementSystem:Sensor, + Whole_Building_Power, !- Name + Whole Building, !- Output:Variable or Output:Meter Index Key Name + Facility Total Electric Demand Power; !- Output:Variable or Output:Meter Name + + ! "Facility Total HVAC Electric Demand Power" is the total of the whole Building HVAC electric demands. + EnergyManagementSystem:Sensor, + Whole_HVAC_Power, !- Name + Whole Building, !- Output:Variable or Output:Meter Index Key Name + Facility Total HVAC Electric Demand Power; !- Output:Variable or Output:Meter Name + + EnergyManagementSystem:OutputVariable, + Power Utilization Effectiveness, !- Name + PUE_Value, !- EMS Variable Name + Averaged, !- Type of Data in Variable + SystemTimeStep, !- Update Frequency + , !- EMS Program or Subroutine Name + ; !- Units + + EnergyManagementSystem:GlobalVariable,PUE_Value; + + EnergyManagementSystem:Program, + CalculatePUE, + set PUE_Value = Whole_Building_Power / IT_Equip_Power; + + + OutputControl:Table:Style, + HTML; !- Column Separator + + Output:Table:SummaryReports, + AllSummary; !- Report 1 Name + + Output:Variable,*,Power Utilization Effectiveness,timestep; + + Output:Variable,*,Site Outdoor Air Drybulb Temperature,timestep; + + Output:Variable,West Zone,Zone Air Temperature,timestep; + Output:Variable,East Zone,Zone Air Temperature,timestep; + + Output:Variable,West Zone,Zone Air Relative Humidity,timestep; + Output:Variable,East Zone,Zone Air Relative Humidity,timestep; + + Output:Variable,*,Cooling Coil Total Cooling Rate,timestep; + Output:Variable,*,Cooling Coil Sensible Cooling Rate,timestep; + + Output:Variable,West Outside Air Inlet Node,System Node Mass Flow Rate,timestep; + Output:Variable,East Outside Air Inlet Node,System Node Mass Flow Rate,timestep; + Output:Variable,West Outside Air Inlet Node,System Node Temperature,timestep; + Output:Variable,East Outside Air Inlet Node,System Node Temperature,timestep; + + Output:Variable,West IEC Secondary Air Inlet Node,System Node Mass Flow Rate,timestep; + Output:Variable,West IEC Secondary Air Inlet Node,System Node Temperature,timestep; + Output:Variable,East IEC Secondary Air Inlet Node,System Node Mass Flow Rate,timestep; + Output:Variable,East IEC Secondary Air Inlet Node,System Node Temperature,timestep; + + Output:Variable,West IEC Secondary Air Outlet Node,System Node Temperature,timestep; + Output:Variable,West IEC Secondary Air Outlet Node,System Node Mass Flow Rate,timestep; + + Output:Variable,West Zone Return Air Node,System Node Mass Flow Rate,timestep; + Output:Variable,West Zone Return Air Node,System Node Temperature,timestep; + + Output:Variable,West Zone Mixed Air Node,System Node Mass Flow Rate,timestep; + Output:Variable,West Zone Mixed Air Node,System Node Temperature,timestep; + + Output:Variable, West Zone Supply Fan Outlet Node, System Node Temperature,timestep; + Output:Variable, East Zone Supply Fan Outlet Node, System Node Temperature,timestep; + + Output:Variable, West Zone DEC Outlet Node, System Node Temperature,timestep; + Output:Variable, West Zone IEC Outlet Node, System Node Temperature,timestep; + Output:Variable, West Zone IEC Outlet Node, System Node Setpoint Temperature,timestep; + + Output:Variable, East Zone DEC Outlet Node, System Node Temperature,timestep; + Output:Variable, East Zone IEC Outlet Node, System Node Temperature,timestep; + + Output:Variable, West Zone CCoil Air Outlet Node, System Node Temperature,timestep; + Output:Variable, East Zone CCoil Air Outlet Node, System Node Temperature,timestep; + + Output:Variable, West Air Loop Outlet Node, System Node Temperature,timestep; + Output:Variable, East Air Loop Outlet Node, System Node Temperature,timestep; + + Output:Variable,West Zone Inlet Node,System Node Mass Flow Rate,timestep; + Output:Variable,West Zone Inlet Node,System Node Temperature,timestep; + Output:Variable,East Zone Inlet Node,System Node Mass Flow Rate,timestep; + Output:Variable,East Zone Inlet Node,System Node Temperature,timestep; + + + Output:Variable,*,Evaporative Cooler Stage Effectiveness,timestep; + Output:Variable,*,Evaporative Cooler Total Stage Effectiveness,timestep; + Output:Variable, *,Evaporative Cooler Operating Mode Status, timestep; + Output:Variable,*,Evaporative Cooler Electric Power,timestep; + Output:Variable,*,Evaporative Cooler Water Volume,timestep; + + Output:VariableDictionary,Regular; + + Output:Surfaces:Drawing,dxf; + + Output:Constructions,Constructions; + diff --git a/testfiles/CMakeLists.txt b/testfiles/CMakeLists.txt index 457c520d59b..b5bcf65beaf 100644 --- a/testfiles/CMakeLists.txt +++ b/testfiles/CMakeLists.txt @@ -7,6 +7,7 @@ # This will override any attempt to run an annual simulation. Use DESIGN_DAY_ONLY for files without annual run periods ADD_SIMULATION_TEST(IDF_FILE 1ZoneDataCenterCRAC_wPumpedDXCoolingCoil.idf EPW_FILE USA_CO_Golden-NREL.724666_TMY3.epw) +ADD_SIMULATION_TEST(IDF_FILE 2ZoneDataCenterHVAC_wEconomizer.idf EPW_FILE USA_IL_Chicago-OHare.Intl.AP.725300_TMY3.epw) ADD_SIMULATION_TEST(IDF_FILE 1ZoneEvapCooler.idf EPW_FILE USA_CO_Golden-NREL.724666_TMY3.epw) ADD_SIMULATION_TEST(IDF_FILE 1ZoneUncontrolled.idf EPW_FILE USA_CO_Golden-NREL.724666_TMY3.epw) ADD_SIMULATION_TEST(IDF_FILE 1ZoneUncontrolledCondFDWithVariableKat24C.idf EPW_FILE USA_CO_Golden-NREL.724666_TMY3.epw) diff --git a/testfiles/DirectIndirectEvapCoolers.idf b/testfiles/DirectIndirectEvapCoolers.idf index 8654e6b79f1..4b970c9600b 100644 --- a/testfiles/DirectIndirectEvapCoolers.idf +++ b/testfiles/DirectIndirectEvapCoolers.idf @@ -3915,17 +3915,17 @@ No, !- 100% Outdoor Air in Heating 0.0085, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.008, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0.0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0.0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0.0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0.0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -4030,17 +4030,24 @@ EvaporativeCooler:Indirect:ResearchSpecial, FURNACE_PACU_CAV:1_OAIndRDD Evap Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7500, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30.0000, !- Recirculating Water Pump Power Consumption {W} - Autosize, !- Secondary Fan Flow Rate {m3/s} - 0.6000, !- Secondary Fan Total Efficiency - 124.6000, !- Secondary Fan Delta Pressure {Pa} + 0.7500, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0000, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + Autosize, !- Secondary Air Design Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 207.66666666666666, !- Secondary Air Fan Sizing Specific Power + , !- Secondary Fan Power Modifier Curve Name FURNACE_PACU_CAV:1_OAInlet Node, !- Primary Air Inlet Node Name FURNACE_PACU_CAV:1_OAIndRDD Evap Cooler-FURNACE_PACU_CAV:1_OADirect Evap CoolerNode, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9000, !- Dewpoint Effectiveness Factor FURNACE_PACU_CAV:1_OAIndRDD Evap CoolerOA node, !- Secondary Air Inlet Node Name + FURNACE_PACU_CAV:1_OAIndRDD Evap CoolerOA Outlet Node, !- Secondary Air Outlet Node Name FURNACE_PACU_CAV:1_OADirect Evap Cooler-FURNACE_PACU_CAV:1_OAMixing BoxNode, !- Sensor Node Name , !- Relief Air Inlet Node Name , !- Water Supply Storage Tank Name @@ -4050,8 +4057,11 @@ EvaporativeCooler:Direct:ResearchSpecial, FURNACE_PACU_CAV:1_OADirect Evap Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7, !- Cooler Effectiveness - 30.0, !- Recirculating Water Pump Power Consumption {W} + 0.7, !- Cooler Design Effectiveness + , !- Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name FURNACE_PACU_CAV:1_OAIndRDD Evap Cooler-FURNACE_PACU_CAV:1_OADirect Evap CoolerNode, !- Air Inlet Node Name FURNACE_PACU_CAV:1_OADirect Evap Cooler-FURNACE_PACU_CAV:1_OAMixing BoxNode, !- Air Outlet Node Name FURNACE_PACU_CAV:1_OADirect Evap Cooler-FURNACE_PACU_CAV:1_OAMixing BoxNode, !- Sensor Node Name @@ -4078,9 +4088,9 @@ FURNACE_PACU_CAV:1 Supply Equipment Outlet Node, !- Unitary System Air Outlet Node Name AlWAYS_ON, !- Supply Air Fan Operating Mode Schedule Name AUTOSIZE, !- Maximum Supply Air Temperature {C} - AUTOSIZE, !- Supply Air Flow Rate During Cooling Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate During Heating Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate When No Cooling or Heating is Needed {m3/s} + AUTOSIZE, !- Cooling Supply Air Flow Rate {m3/s} + AUTOSIZE, !- Heating Supply Air Flow Rate {m3/s} + AUTOSIZE, !- No Load Supply Air Flow Rate {m3/s} units_gr_lf, !- Controlling Zone or Thermostat Location Fan:OnOff, !- Supply Fan Object Type FURNACE_PACU_CAV:1_Unitary_Package_fan, !- Supply Fan Name @@ -4238,17 +4248,17 @@ No, !- 100% Outdoor Air in Heating 0.0085, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.008, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0.0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0.0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0.0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0.0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -4351,8 +4361,11 @@ EvaporativeCooler:Direct:ResearchSpecial, FURNACE_PACU_CAV:2_OADirect Evap Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7, !- Cooler Effectiveness - 30.0, !- Recirculating Water Pump Power Consumption {W} + 0.7, !- Cooler Design Effectiveness + , !- Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name FURNACE_PACU_CAV:2_OAInlet Node, !- Air Inlet Node Name FURNACE_PACU_CAV:2_OADirect Evap Cooler-FURNACE_PACU_CAV:2_OAMixing BoxNode, !- Air Outlet Node Name FURNACE_PACU_CAV:2_OADirect Evap Cooler-FURNACE_PACU_CAV:2_OAMixing BoxNode, !- Sensor Node Name @@ -4379,9 +4392,9 @@ FURNACE_PACU_CAV:2 Supply Equipment Outlet Node, !- Unitary System Air Outlet Node Name AlWAYS_ON, !- Supply Air Fan Operating Mode Schedule Name AUTOSIZE, !- Maximum Supply Air Temperature {C} - AUTOSIZE, !- Supply Air Flow Rate During Cooling Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate During Heating Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate When No Cooling or Heating is Needed {m3/s} + AUTOSIZE, !- Cooling Supply Air Flow Rate {m3/s} + AUTOSIZE, !- Heating Supply Air Flow Rate {m3/s} + AUTOSIZE, !- No Load Supply Air Flow Rate {m3/s} units_gr_rt, !- Controlling Zone or Thermostat Location Fan:OnOff, !- Supply Fan Object Type FURNACE_PACU_CAV:2_Unitary_Package_fan, !- Supply Fan Name @@ -4539,17 +4552,17 @@ No, !- 100% Outdoor Air in Heating 0.0085, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.008, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0.0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0.0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0.0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0.0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -4654,24 +4667,34 @@ EvaporativeCooler:Indirect:ResearchSpecial, FURNACE_PACU_CAV:3_OAIndRDD Evap Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7500, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30.0000, !- Recirculating Water Pump Power Consumption {W} - Autosize, !- Secondary Fan Flow Rate {m3/s} - 0.6000, !- Secondary Fan Total Efficiency - 124.6000, !- Secondary Fan Delta Pressure {Pa} + 0.7500, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0000, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor W /(m3/s)air + , !- Water Pump Power Modifier Curve Name + Autosize, !- Secondary Air Design Air Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 207.66666666666666, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name FURNACE_PACU_CAV:3_OAInlet Node, !- Primary Air Inlet Node Name FURNACE_PACU_CAV:3_OAIndRDD Evap Cooler-FURNACE_PACU_CAV:3_OADirect Evap CoolerNode, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9000, !- Dewpoint Effectiveness Factor FURNACE_PACU_CAV:3_OAIndRDD Evap CoolerOA node, !- Secondary Air Inlet Node Name + FURNACE_PACU_CAV:3_OAIndRDD Evap CoolerOA Outlet Node, !- Secondary Air Outlet Node Name FURNACE_PACU_CAV:3_OADirect Evap Cooler-FURNACE_PACU_CAV:3_OAMixing BoxNode; !- Sensor Node Name EvaporativeCooler:Direct:ResearchSpecial, FURNACE_PACU_CAV:3_OADirect Evap Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7, !- Cooler Effectiveness - 30.0, !- Recirculating Water Pump Power Consumption {W} + 0.7, !- Cooler Design Effectiveness + , !- Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name FURNACE_PACU_CAV:3_OAIndRDD Evap Cooler-FURNACE_PACU_CAV:3_OADirect Evap CoolerNode, !- Air Inlet Node Name FURNACE_PACU_CAV:3_OADirect Evap Cooler-FURNACE_PACU_CAV:3_OAMixing BoxNode, !- Air Outlet Node Name FURNACE_PACU_CAV:3_OADirect Evap Cooler-FURNACE_PACU_CAV:3_OAMixing BoxNode, !- Sensor Node Name @@ -4698,9 +4721,9 @@ FURNACE_PACU_CAV:3 Supply Equipment Outlet Node, !- Unitary System Air Outlet Node Name AlWAYS_ON, !- Supply Air Fan Operating Mode Schedule Name AUTOSIZE, !- Maximum Supply Air Temperature {C} - AUTOSIZE, !- Supply Air Flow Rate During Cooling Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate During Heating Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate When No Cooling or Heating is Needed {m3/s} + AUTOSIZE, !- Cooling Supply Air Flow Rate {m3/s} + AUTOSIZE, !- Heating Supply Air Flow Rate {m3/s} + AUTOSIZE, !- No Load Supply Air Flow Rate {m3/s} unit_s_g, !- Controlling Zone or Thermostat Location Fan:OnOff, !- Supply Fan Object Type FURNACE_PACU_CAV:3_Unitary_Package_fan, !- Supply Fan Name @@ -4858,17 +4881,17 @@ No, !- 100% Outdoor Air in Heating 0.0085, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.008, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0.0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0.0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0.0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0.0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -4973,24 +4996,34 @@ EvaporativeCooler:Indirect:ResearchSpecial, FURNACE_PACU_CAV:4_OAIndRDD Evap Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7500, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30.0000, !- Recirculating Water Pump Power Consumption {W} - Autosize, !- Secondary Fan Flow Rate {m3/s} - 0.6000, !- Secondary Fan Total Efficiency - 124.6000, !- Secondary Fan Delta Pressure {Pa} + 0.7500, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0000, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + Autosize, !- Secondary Air Design Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 207.66666666666666, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name FURNACE_PACU_CAV:4_OAInlet Node, !- Primary Air Inlet Node Name FURNACE_PACU_CAV:4_OAIndRDD Evap Cooler-FURNACE_PACU_CAV:4_OADirect Evap CoolerNode, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9000, !- Dewpoint Effectiveness Factor FURNACE_PACU_CAV:4_OAIndRDD Evap CoolerOA node, !- Secondary Air Inlet Node Name + FURNACE_PACU_CAV:4_OAIndRDD Evap CoolerOA Outlet Node, !- Secondary Air Outlet Node Name FURNACE_PACU_CAV:4_OADirect Evap Cooler-FURNACE_PACU_CAV:4_OAMixing BoxNode; !- Sensor Node Name EvaporativeCooler:Direct:ResearchSpecial, FURNACE_PACU_CAV:4_OADirect Evap Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7, !- Cooler Effectiveness - 30.0, !- Recirculating Water Pump Power Consumption {W} + 0.7, !- Cooler Design Effectiveness + , !- Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name FURNACE_PACU_CAV:4_OAIndRDD Evap Cooler-FURNACE_PACU_CAV:4_OADirect Evap CoolerNode, !- Air Inlet Node Name FURNACE_PACU_CAV:4_OADirect Evap Cooler-FURNACE_PACU_CAV:4_OAMixing BoxNode, !- Air Outlet Node Name FURNACE_PACU_CAV:4_OADirect Evap Cooler-FURNACE_PACU_CAV:4_OAMixing BoxNode, !- Sensor Node Name @@ -5017,9 +5050,9 @@ FURNACE_PACU_CAV:4 Supply Equipment Outlet Node, !- Unitary System Air Outlet Node Name AlWAYS_ON, !- Supply Air Fan Operating Mode Schedule Name AUTOSIZE, !- Maximum Supply Air Temperature {C} - AUTOSIZE, !- Supply Air Flow Rate During Cooling Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate During Heating Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate When No Cooling or Heating is Needed {m3/s} + AUTOSIZE, !- Cooling Supply Air Flow Rate {m3/s} + AUTOSIZE, !- Heating Supply Air Flow Rate {m3/s} + AUTOSIZE, !- No Load Supply Air Flow Rate {m3/s} unit_n_g, !- Controlling Zone or Thermostat Location Fan:OnOff, !- Supply Fan Object Type FURNACE_PACU_CAV:4_Unitary_Package_fan, !- Supply Fan Name diff --git a/testfiles/DirectIndirectEvapCoolersVSAS.idf b/testfiles/DirectIndirectEvapCoolersVSAS.idf index d654c085249..f8ba161dd4c 100644 --- a/testfiles/DirectIndirectEvapCoolersVSAS.idf +++ b/testfiles/DirectIndirectEvapCoolersVSAS.idf @@ -79,9 +79,9 @@ FURNACE_PACU_CAV:1 Supply Equipment Outlet Node, !- Unitary System Air Outlet Node Name AlWAYS_ON, !- Supply Air Fan Operating Mode Schedule Name AUTOSIZE, !- Maximum Supply Air Temperature {C} - AUTOSIZE, !- Supply Air Flow Rate During Cooling Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate During Heating Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate When No Cooling or Heating is Needed {m3/s} + AUTOSIZE, !- Cooling Supply Air Flow Rate {m3/s} + AUTOSIZE, !- Heating Supply Air Flow Rate {m3/s} + AUTOSIZE, !- No Load Supply Air Flow Rate {m3/s} units_gr_lf, !- Controlling Zone or Thermostat Location Fan:OnOff, !- Supply Fan Object Type FURNACE_PACU_CAV:1_Unitary_Package_fan, !- Supply Fan Name @@ -99,9 +99,9 @@ FURNACE_PACU_CAV:2 Supply Equipment Outlet Node, !- Unitary System Air Outlet Node Name AlWAYS_ON, !- Supply Air Fan Operating Mode Schedule Name AUTOSIZE, !- Maximum Supply Air Temperature {C} - AUTOSIZE, !- Supply Air Flow Rate During Cooling Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate During Heating Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate When No Cooling or Heating is Needed {m3/s} + AUTOSIZE, !- Cooling Supply Air Flow Rate {m3/s} + AUTOSIZE, !- Heating Supply Air Flow Rate {m3/s} + AUTOSIZE, !- No Load Supply Air Flow Rate {m3/s} units_gr_rt, !- Controlling Zone or Thermostat Location Fan:OnOff, !- Supply Fan Object Type FURNACE_PACU_CAV:2_Unitary_Package_fan, !- Supply Fan Name @@ -119,9 +119,9 @@ FURNACE_PACU_CAV:3 Supply Equipment Outlet Node, !- Unitary System Air Outlet Node Name AlWAYS_ON, !- Supply Air Fan Operating Mode Schedule Name AUTOSIZE, !- Maximum Supply Air Temperature {C} - AUTOSIZE, !- Supply Air Flow Rate During Cooling Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate During Heating Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate When No Cooling or Heating is Needed {m3/s} + AUTOSIZE, !- Cooling Supply Air Flow Rate {m3/s} + AUTOSIZE, !- Heating Supply Air Flow Rate {m3/s} + AUTOSIZE, !- No Load Supply Air Flow Rate {m3/s} unit_s_g, !- Controlling Zone or Thermostat Location Fan:OnOff, !- Supply Fan Object Type FURNACE_PACU_CAV:3_Unitary_Package_fan, !- Supply Fan Name @@ -139,9 +139,9 @@ FURNACE_PACU_CAV:4 Supply Equipment Outlet Node, !- Unitary System Air Outlet Node Name AlWAYS_ON, !- Supply Air Fan Operating Mode Schedule Name AUTOSIZE, !- Maximum Supply Air Temperature {C} - AUTOSIZE, !- Supply Air Flow Rate During Cooling Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate During Heating Operation {m3/s} - AUTOSIZE, !- Supply Air Flow Rate When No Cooling or Heating is Needed {m3/s} + AUTOSIZE, !- Cooling Supply Air Flow Rate {m3/s} + AUTOSIZE, !- Heating Supply Air Flow Rate {m3/s} + AUTOSIZE, !- No Load Supply Air Flow Rate {m3/s} unit_n_g, !- Controlling Zone or Thermostat Location Fan:OnOff, !- Supply Fan Object Type FURNACE_PACU_CAV:4_Unitary_Package_fan, !- Supply Fan Name @@ -4480,17 +4480,17 @@ No, !- 100% Outdoor Air in Heating 0.0085, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.008, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0.0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0.0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0.0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0.0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -4595,28 +4595,39 @@ EvaporativeCooler:Indirect:ResearchSpecial, FURNACE_PACU_CAV:1_OAIndRDD Evap Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7500, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30.0000, !- Recirculating Water Pump Power Consumption {W} - Autosize, !- Secondary Fan Flow Rate {m3/s} - 0.6000, !- Secondary Fan Total Efficiency - 124.6000, !- Secondary Fan Delta Pressure {Pa} + 0.7500, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0000, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + Autosize, !- Secondary Air Design Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 207.6666666666666667, !- Secondary Air Fan Sizing Specific Power + , !- Secondary Fan Power Modifier Curve Name FURNACE_PACU_CAV:1_OAInlet Node, !- Primary Air Inlet Node Name FURNACE_PACU_CAV:1_OAIndRDD Evap Cooler-FURNACE_PACU_CAV:1_OADirect Evap CoolerNode, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9000, !- Dewpoint Effectiveness Factor FURNACE_PACU_CAV:1_OAIndRDD Evap CoolerOA node, !- Secondary Air Inlet Node Name + FURNACE_PACU_CAV:1_OAIndRDD Evap CoolerOA Outlet Node, !- Secondary Air Outlet Node Name FURNACE_PACU_CAV:1_OADirect Evap Cooler-FURNACE_PACU_CAV:1_OAMixing BoxNode, !- Sensor Node Name , !- Relief Air Inlet Node Name , !- Water Supply Storage Tank Name 0.2, !- Drift Loss Fraction 3; !- Blowdown Concentration Ratio + EvaporativeCooler:Direct:ResearchSpecial, FURNACE_PACU_CAV:1_OADirect Evap Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7, !- Cooler Effectiveness - 30.0, !- Recirculating Water Pump Power Consumption {W} + 0.7, !- Cooler Design Effectiveness + , !- Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name FURNACE_PACU_CAV:1_OAIndRDD Evap Cooler-FURNACE_PACU_CAV:1_OADirect Evap CoolerNode, !- Air Inlet Node Name FURNACE_PACU_CAV:1_OADirect Evap Cooler-FURNACE_PACU_CAV:1_OAMixing BoxNode, !- Air Outlet Node Name FURNACE_PACU_CAV:1_OADirect Evap Cooler-FURNACE_PACU_CAV:1_OAMixing BoxNode, !- Sensor Node Name @@ -4767,17 +4778,17 @@ No, !- 100% Outdoor Air in Heating 0.0085, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.008, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0.0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0.0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0.0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0.0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -4880,8 +4891,11 @@ EvaporativeCooler:Direct:ResearchSpecial, FURNACE_PACU_CAV:2_OADirect Evap Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7, !- Cooler Effectiveness - 30.0, !- Recirculating Water Pump Power Consumption {W} + 0.7, !- Cooler Design Effectiveness + , !- Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name FURNACE_PACU_CAV:2_OAInlet Node, !- Air Inlet Node Name FURNACE_PACU_CAV:2_OADirect Evap Cooler-FURNACE_PACU_CAV:2_OAMixing BoxNode, !- Air Outlet Node Name FURNACE_PACU_CAV:2_OADirect Evap Cooler-FURNACE_PACU_CAV:2_OAMixing BoxNode, !- Sensor Node Name @@ -5032,17 +5046,17 @@ No, !- 100% Outdoor Air in Heating 0.0085, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.008, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0.0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0.0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0.0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0.0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -5147,24 +5161,34 @@ EvaporativeCooler:Indirect:ResearchSpecial, FURNACE_PACU_CAV:3_OAIndRDD Evap Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7500, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30.0000, !- Recirculating Water Pump Power Consumption {W} - Autosize, !- Secondary Fan Flow Rate {m3/s} - 0.6000, !- Secondary Fan Total Efficiency - 124.6000, !- Secondary Fan Delta Pressure {Pa} + 0.7500, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0000, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor W /(m3/s)air + , !- Water Pump Power Modifier Curve Name + Autosize, !- Secondary Air Design Air Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 207.6666666666666667, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name FURNACE_PACU_CAV:3_OAInlet Node, !- Primary Air Inlet Node Name FURNACE_PACU_CAV:3_OAIndRDD Evap Cooler-FURNACE_PACU_CAV:3_OADirect Evap CoolerNode, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9000, !- Dewpoint Effectiveness Factor FURNACE_PACU_CAV:3_OAIndRDD Evap CoolerOA node, !- Secondary Air Inlet Node Name + FURNACE_PACU_CAV:3_OAIndRDD Evap CoolerOA Outlet Node, !- Secondary Air Outlet Node Name FURNACE_PACU_CAV:3_OADirect Evap Cooler-FURNACE_PACU_CAV:3_OAMixing BoxNode; !- Sensor Node Name EvaporativeCooler:Direct:ResearchSpecial, FURNACE_PACU_CAV:3_OADirect Evap Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7, !- Cooler Effectiveness - 30.0, !- Recirculating Water Pump Power Consumption {W} + 0.7, !- Cooler Design Effectiveness + , !- Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name FURNACE_PACU_CAV:3_OAIndRDD Evap Cooler-FURNACE_PACU_CAV:3_OADirect Evap CoolerNode, !- Air Inlet Node Name FURNACE_PACU_CAV:3_OADirect Evap Cooler-FURNACE_PACU_CAV:3_OAMixing BoxNode, !- Air Outlet Node Name FURNACE_PACU_CAV:3_OADirect Evap Cooler-FURNACE_PACU_CAV:3_OAMixing BoxNode, !- Sensor Node Name @@ -5315,17 +5339,17 @@ No, !- 100% Outdoor Air in Heating 0.0085, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.008, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0.0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0.0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0.0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0.0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -5430,24 +5454,34 @@ EvaporativeCooler:Indirect:ResearchSpecial, FURNACE_PACU_CAV:4_OAIndRDD Evap Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7500, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30.0000, !- Recirculating Water Pump Power Consumption {W} - Autosize, !- Secondary Fan Flow Rate {m3/s} - 0.6000, !- Secondary Fan Total Efficiency - 124.6000, !- Secondary Fan Delta Pressure {Pa} + 0.7500, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0000, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor W /(m3/s)air + , !- Water Pump Power Modifier Curve Name + Autosize, !- Secondary Air Design Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 207.66666666666666, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name FURNACE_PACU_CAV:4_OAInlet Node, !- Primary Air Inlet Node Name FURNACE_PACU_CAV:4_OAIndRDD Evap Cooler-FURNACE_PACU_CAV:4_OADirect Evap CoolerNode, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9000, !- Dewpoint Effectiveness Factor FURNACE_PACU_CAV:4_OAIndRDD Evap CoolerOA node, !- Secondary Air Inlet Node Name + FURNACE_PACU_CAV:4_OAIndRDD Evap CoolerOA Outlet Node, !- Secondary Air Outlet Node Name FURNACE_PACU_CAV:4_OADirect Evap Cooler-FURNACE_PACU_CAV:4_OAMixing BoxNode; !- Sensor Node Name EvaporativeCooler:Direct:ResearchSpecial, FURNACE_PACU_CAV:4_OADirect Evap Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7, !- Cooler Effectiveness - 30.0, !- Recirculating Water Pump Power Consumption {W} + 0.7, !- Cooler Design Effectiveness + , !- Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name FURNACE_PACU_CAV:4_OAIndRDD Evap Cooler-FURNACE_PACU_CAV:4_OADirect Evap CoolerNode, !- Air Inlet Node Name FURNACE_PACU_CAV:4_OADirect Evap Cooler-FURNACE_PACU_CAV:4_OAMixing BoxNode, !- Air Outlet Node Name FURNACE_PACU_CAV:4_OADirect Evap Cooler-FURNACE_PACU_CAV:4_OAMixing BoxNode, !- Sensor Node Name diff --git a/testfiles/ExampleFiles.xls b/testfiles/ExampleFiles.xls index 914350773ba..e3c0ad4391a 100644 Binary files a/testfiles/ExampleFiles.xls and b/testfiles/ExampleFiles.xls differ diff --git a/testfiles/IndEvapCoolerRTUoffice.idf b/testfiles/IndEvapCoolerRTUoffice.idf index 49d1bf86087..e5c9ac3fd14 100644 --- a/testfiles/IndEvapCoolerRTUoffice.idf +++ b/testfiles/IndEvapCoolerRTUoffice.idf @@ -3792,17 +3792,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -3991,17 +3991,24 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN1, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 0.7, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 0.8, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 250, !- Secondary Fan Delta Pressure {Pa} + 0.7, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + 0.8, !- Secondary Air Design Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 357.142857142857, !- Secondary Air Fan Sizing Specific Power + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN1, !- Primary Air Inlet Node Name Evap Cooler Outlet Node ZN1, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN1, !- Secondary Air Inlet Node Name + Purge Air Outlet Node ZN1, !- Secondary Air Outlet Node Name Air Loop Outlet Node ZN1,!- Sensor Node Name ; !- Relief Air Inlet Node Name @@ -4116,17 +4123,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -4315,17 +4322,24 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN3, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 0.7, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 1.0, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 250, !- Secondary Fan Delta Pressure {Pa} + 0.7, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30, !- Recirculating Water Pump Design Power{W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + 1.0, !- Secondary Air Design Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 357.142857142857, !- Secondary Air Fan Sizing Specific Power + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN3, !- Primary Air Inlet Node Name Evap Cooler Outlet Node ZN3, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN3, !- Secondary Air Inlet Node Name + Purge Air Outlet Node ZN3, !- Secondary Air Outlet Node Name Air Loop Outlet Node ZN3,!- Sensor Node Name ; !- Relief Air Inlet Node Name @@ -4440,17 +4454,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -4639,17 +4653,24 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN5, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 0.7, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 1.4, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 250, !- Secondary Fan Delta Pressure {Pa} + 0.7, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30, !- Recirculating Water Pump Design Power{W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + 1.4, !- Secondary Air Design Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 357.142857142857, !- Secondary Air Fan Sizing Specific Power + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN5, !- Primary Air Inlet Node Name Evap Cooler Outlet Node ZN5, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN5, !- Secondary Air Inlet Node Name + Purge Air Outlet Node ZN5, !- Secondary Air Outlet Node Name Air Loop Outlet Node ZN5,!- Sensor Node Name ; !- Relief Air Inlet Node Name @@ -4764,17 +4785,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -4963,17 +4984,24 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN7, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 0.7, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 0.8, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 250, !- Secondary Fan Delta Pressure {Pa} + 0.7, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30, !- Recirculating Water Pump Design Power{W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + 0.8, !- Secondary Air Design Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 357.142857142857, !- Secondary Air Fan Sizing Specific Power + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN7, !- Primary Air Inlet Node Name Evap Cooler Outlet Node ZN7, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN7, !- Secondary Air Inlet Node Name + Purge Air Outlet Node ZN7, !- Secondary Air Outlet Node Name Air Loop Outlet Node ZN7,!- Sensor Node Name ; !- Relief Air Inlet Node Name @@ -5088,17 +5116,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -5287,17 +5315,24 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN9, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 0.7, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 1.1, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 250, !- Secondary Fan Delta Pressure {Pa} + 0.7, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30, !- Recirculating Water Pump Design Power{W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + 1.1, !- Secondary Air Design Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 357.142857142857, !- Secondary Air Fan Sizing Specific Power + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN9, !- Primary Air Inlet Node Name Evap Cooler Outlet Node ZN9, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN9, !- Secondary Air Inlet Node Name + Purge Air Outlet Node ZN9, !- Secondary Air Outlet Node Name Air Loop Outlet Node ZN9,!- Sensor Node Name ; !- Relief Air Inlet Node Name @@ -5412,17 +5447,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -5611,17 +5646,24 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN11, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 0.7, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 0.9, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 250, !- Secondary Fan Delta Pressure {Pa} + 0.7, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30, !- Recirculating Water Pump Design Power{W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + 0.9, !- Secondary Air Design Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 357.142857142857, !- Secondary Air Fan Sizing Specific Power + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN11, !- Primary Air Inlet Node Name Evap Cooler Outlet Node ZN11, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN11, !- Secondary Air Inlet Node Name + Purge Air Outlet Node ZN11, !- Secondary Air Outlet Node Name Air Loop Outlet Node ZN11, !- Sensor Node Name ; !- Relief Air Inlet Node Name @@ -5736,17 +5778,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -5935,17 +5977,24 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN13, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 0.7, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 1.2, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 250, !- Secondary Fan Delta Pressure {Pa} + 0.7, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30, !- Recirculating Water Pump Design Power{W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + 1.2, !- Secondary Air Design Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 357.142857142857, !- Secondary Air Fan Sizing Specific Power + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN13, !- Primary Air Inlet Node Name Evap Cooler Outlet Node ZN13, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN13, !- Secondary Air Inlet Node Name + Purge Air Outlet Node ZN13, !- Secondary Air Outlet Node Name Air Loop Outlet Node ZN13, !- Sensor Node Name ; !- Relief Air Inlet Node Name @@ -6060,17 +6109,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -6259,17 +6308,24 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN15, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 0.7, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 1.5, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 250, !- Secondary Fan Delta Pressure {Pa} + 0.7, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30, !- Recirculating Water Pump Design Power{W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + 1.5, !- Secondary Air Design Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 357.142857142857, !- Secondary Air Fan Sizing Specific Power + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN15, !- Primary Air Inlet Node Name Evap Cooler Outlet Node ZN15, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN15, !- Secondary Air Inlet Node Name + Purge Air Outlet Node ZN15, !- Secondary Air Outlet Node Name Air Loop Outlet Node ZN15, !- Sensor Node Name ; !- Relief Air Inlet Node Name @@ -6384,17 +6440,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -6583,17 +6639,24 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN17, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 0.7, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 0.9, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 250, !- Secondary Fan Delta Pressure {Pa} + 0.7, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30, !- Recirculating Water Pump Design Power{W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + 0.9, !- Secondary Air Design Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 357.142857142857, !- Secondary Air Fan Sizing Specific Power + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN17, !- Primary Air Inlet Node Name Evap Cooler Outlet Node ZN17, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN17, !- Secondary Air Inlet Node Name + Purge Air Outlet Node ZN17, !- Secondary Air Outlet Node Name Air Loop Outlet Node ZN17, !- Sensor Node Name ; !- Relief Air Inlet Node Name @@ -6708,17 +6771,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -6907,17 +6970,24 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN19, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 0.7, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 1.8, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 250, !- Secondary Fan Delta Pressure {Pa} + 0.7, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30, !- Recirculating Water Pump Design Power{W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + 1.8, !- Secondary Air Design Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 357.142857142857, !- Secondary Air Fan Sizing Specific Power + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN19, !- Primary Air Inlet Node Name Evap Cooler Outlet Node ZN19, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN19, !- Secondary Air Inlet Node Name + Purge Air Outlet Node ZN19, !- Secondary Air Outlet Node Name Air Loop Outlet Node ZN19, !- Sensor Node Name ; !- Relief Air Inlet Node Name diff --git a/testfiles/ReliefIndEvapCoolerRTUoffice.idf b/testfiles/ReliefIndEvapCoolerRTUoffice.idf index 0d7a595e739..2ef6f73e29b 100644 --- a/testfiles/ReliefIndEvapCoolerRTUoffice.idf +++ b/testfiles/ReliefIndEvapCoolerRTUoffice.idf @@ -3796,17 +3796,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -3995,19 +3995,29 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN1, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 1.2, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 0.8, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 300, !- Secondary Fan Delta Pressure {Pa} + 1.2, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Power Consumption {W} + , !- Water Pump Power Sizing Factor W /(m3/s)air + , !- Water Pump Power Modifier Curve Name + 0.8, !- Secondary Air Design Air Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 428.571428571429, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN1, !- Primary Air Inlet Node Name - Evap Cooler Outlet Node ZN1, !- Primary Air Outlet Node Name - , !- Control Type + Evap Cooler Outlet Node ZN1, !- Primary Air Outlet Node Name + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN1, !- Secondary Air Inlet Node Name - Air Loop Outlet Node ZN1,!- Sensor Node Name - Relief Air Outlet Node ZN1; !- Relief Air Inlet Node Name + Purge Air Inlet ZN1 Outlet Node, !- Secondary Air Outlet Node Name + Air Loop Outlet Node ZN1, !- Sensor Node Name + Relief Air Outlet Node ZN1, !- Relief Air Inlet Node Name + , !- Water Supply Storage Tank Name + , !- Drift Loss Fraction + ; !- Blowdown Concentration Ratio Coil:Cooling:DX:SingleSpeed, ACDXCoil ZN1, !- Name @@ -4120,17 +4130,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -4319,19 +4329,29 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN3, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 1.2, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 1.0, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 300, !- Secondary Fan Delta Pressure {Pa} + 1.2, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Power Consumption {W} + , !- Water Pump Power Sizing Factor W /(m3/s)air + , !- Water Pump Power Modifier Curve Name + 1.0, !- Secondary Air Design Air Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 428.571428571429, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN3, !- Primary Air Inlet Node Name - Evap Cooler Outlet Node ZN3, !- Primary Air Outlet Node Name - , !- Control Type + Evap Cooler Outlet Node ZN3, !- Primary Air Outlet Node Name + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN3, !- Secondary Air Inlet Node Name - Air Loop Outlet Node ZN3,!- Sensor Node Name - Relief Air Outlet Node ZN3; !- Relief Air Inlet Node Name + Purge Air Inlet ZN3 Outlet Node, !- Secondary Air Outlet Node Name + Air Loop Outlet Node ZN3, !- Sensor Node Name + Relief Air Outlet Node ZN3, !- Relief Air Inlet Node Name + , !- Water Supply Storage Tank Name + , !- Drift Loss Fraction + ; !- Blowdown Concentration Ratio Coil:Cooling:DX:SingleSpeed, ACDXCoil ZN3, !- Name @@ -4444,17 +4464,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -4643,19 +4663,29 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN5, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 1.2, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 1.4, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 300, !- Secondary Fan Delta Pressure {Pa} + 1.2, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Power Consumption {W} + , !- Water Pump Power Sizing Factor W /(m3/s)air + , !- Water Pump Power Modifier Curve Name + 1.4, !- Secondary Air Design Air Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 428.571428571429, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN5, !- Primary Air Inlet Node Name - Evap Cooler Outlet Node ZN5, !- Primary Air Outlet Node Name - , !- Control Type + Evap Cooler Outlet Node ZN5, !- Primary Air Outlet Node Name + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN5, !- Secondary Air Inlet Node Name - Air Loop Outlet Node ZN5,!- Sensor Node Name - Relief Air Outlet Node ZN5; !- Relief Air Inlet Node Name + Purge Air Inlet ZN5 Outlet Node, !- Secondary Air Outlet Node Name + Air Loop Outlet Node ZN5, !- Sensor Node Name + Relief Air Outlet Node ZN5, !- Relief Air Inlet Node Name + , !- Water Supply Storage Tank Name + , !- Drift Loss Fraction + ; !- Blowdown Concentration Ratio Coil:Cooling:DX:SingleSpeed, ACDXCoil ZN5, !- Name @@ -4768,17 +4798,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -4967,19 +4997,29 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN7, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 1.2, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 0.8, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 300, !- Secondary Fan Delta Pressure {Pa} + 1.2, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Power Consumption {W} + , !- Water Pump Power Sizing Factor W /(m3/s)air + , !- Water Pump Power Modifier Curve Name + 0.8, !- Secondary Air Design Air Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 428.571428571429, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN7, !- Primary Air Inlet Node Name Evap Cooler Outlet Node ZN7, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN7, !- Secondary Air Inlet Node Name - Air Loop Outlet Node ZN7,!- Sensor Node Name - Relief Air Outlet Node ZN7; !- Relief Air Inlet Node Name + Purge Air Inlet ZN7 Outlet Node, !- Secondary Air Outlet Node Name + Air Loop Outlet Node ZN7, !- Sensor Node Name + Relief Air Outlet Node ZN7, !- Relief Air Inlet Node Name + , !- Water Supply Storage Tank Name + , !- Drift Loss Fraction + ; !- Blowdown Concentration Ratio Coil:Cooling:DX:SingleSpeed, ACDXCoil ZN7, !- Name @@ -5092,17 +5132,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -5291,19 +5331,29 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN9, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 1.2, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 1.1, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 300, !- Secondary Fan Delta Pressure {Pa} + 1.2, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Power Consumption {W} + , !- Water Pump Power Sizing Factor W /(m3/s)air + , !- Water Pump Power Modifier Curve Name + 1.1, !- Secondary Air Design Air Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 428.571428571429, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN9, !- Primary Air Inlet Node Name Evap Cooler Outlet Node ZN9, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN9, !- Secondary Air Inlet Node Name - Air Loop Outlet Node ZN9,!- Sensor Node Name - Relief Air Outlet Node ZN9; !- Relief Air Inlet Node Name + Purge Air Inlet ZN9 Outlet Node, !- Secondary Air Outlet Node Name + Air Loop Outlet Node ZN9, !- Sensor Node Name + Relief Air Outlet Node ZN9, !- Relief Air Inlet Node Name + , !- Water Supply Storage Tank Name + , !- Drift Loss Fraction + ; !- Blowdown Concentration Ratio Coil:Cooling:DX:SingleSpeed, ACDXCoil ZN9, !- Name @@ -5400,7 +5450,7 @@ 0.0, !- Outdoor Air Flow per Zone Floor Area {m3/s-m2} ; !- Outdoor Air Flow per Zone {m3/s} - Sizing:System, + Sizing:System, Direct DX air Loop ZN11, !- AirLoop Name sensible, !- Type of Load to Size On autosize, !- Design Outdoor Air Flow Rate {m3/s} @@ -5416,17 +5466,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -5613,21 +5663,31 @@ Air Loop Outlet Node ZN11; !- Temperature Setpoint Node Name EvaporativeCooler:Indirect:ResearchSpecial, - Indirect Evap ZN11, !- Name + Indirect Evap ZN11, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 1.2, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 0.9, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 300, !- Secondary Fan Delta Pressure {Pa} + 1.2, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Power Consumption {W} + , !- Water Pump Power Sizing Factor W /(m3/s)air + , !- Water Pump Power Modifier Curve Name + 0.9, !- Secondary Air Design Air Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 428.571428571429, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN11, !- Primary Air Inlet Node Name - Evap Cooler Outlet Node ZN11, !- Primary Air Outlet Node Name - , !- Control Type + Evap Cooler Outlet Node ZN11, !- Primary Air Outlet Node Name + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor - Purge Air Inlet ZN11, !- Secondary Air Inlet Node Name - Air Loop Outlet Node ZN11, !- Sensor Node Name - Relief Air Outlet Node ZN11; !- Relief Air Inlet Node Name + Purge Air Inlet ZN11, !- Secondary Air Inlet Node Name + Purge Air Inlet ZN11 Outlet Node, !- Secondary Air Outlet Node Name + Air Loop Outlet Node ZN11, !- Sensor Node Name + Relief Air Outlet Node ZN11, !- Relief Air Inlet Node Name + , !- Water Supply Storage Tank Name + , !- Drift Loss Fraction + ; !- Blowdown Concentration Ratio Coil:Cooling:DX:SingleSpeed, ACDXCoil ZN11, !- Name @@ -5740,17 +5800,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -5939,19 +5999,29 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN13, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 1.2, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 1.2, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 300, !- Secondary Fan Delta Pressure {Pa} + 1.2, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Power Consumption {W} + , !- Water Pump Power Sizing Factor W /(m3/s)air + , !- Water Pump Power Modifier Curve Name + 1.2, !- Secondary Air Design Air Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 428.571428571429, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN13, !- Primary Air Inlet Node Name - Evap Cooler Outlet Node ZN13, !- Primary Air Outlet Node Name - , !- Control Type + Evap Cooler Outlet Node ZN13, !- Primary Air Outlet Node Name + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN13, !- Secondary Air Inlet Node Name - Air Loop Outlet Node ZN13, !- Sensor Node Name - Relief Air Outlet Node ZN13; !- Relief Air Inlet Node Name + Purge Air Inlet ZN13 Outlet Node, !- Secondary Air Outlet Node Name + Air Loop Outlet Node ZN13, !- Sensor Node Name + Relief Air Outlet Node ZN13, !- Relief Air Inlet Node Name + , !- Water Supply Storage Tank Name + , !- Drift Loss Fraction + ; !- Blowdown Concentration Ratio Coil:Cooling:DX:SingleSpeed, ACDXCoil ZN13, !- Name @@ -6064,17 +6134,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -6263,19 +6333,29 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN15, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 1.2, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 1.5, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 300, !- Secondary Fan Delta Pressure {Pa} + 1.2, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Power Consumption {W} + , !- Water Pump Power Sizing Factor W /(m3/s)air + , !- Water Pump Power Modifier Curve Name + 1.5, !- Secondary Air Design Air Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 428.571428571429, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN15, !- Primary Air Inlet Node Name - Evap Cooler Outlet Node ZN15, !- Primary Air Outlet Node Name - , !- Control Type + Evap Cooler Outlet Node ZN15, !- Primary Air Outlet Node Name + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN15, !- Secondary Air Inlet Node Name - Air Loop Outlet Node ZN15, !- Sensor Node Name - Relief Air Outlet Node ZN15; !- Relief Air Inlet Node Name + Purge Air Inlet ZN15 Outlet Node, !- Secondary Air Outlet Node Name + Air Loop Outlet Node ZN15, !- Sensor Node Name + Relief Air Outlet Node ZN15, !- Relief Air Inlet Node Name + , !- Water Supply Storage Tank Name + , !- Drift Loss Fraction + ; !- Blowdown Concentration Ratio Coil:Cooling:DX:SingleSpeed, ACDXCoil ZN15, !- Name @@ -6388,17 +6468,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -6587,19 +6667,29 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN17, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 1.2, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 0.9, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 300, !- Secondary Fan Delta Pressure {Pa} + 1.2, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Power Consumption {W} + , !- Water Pump Power Sizing Factor W /(m3/s)air + , !- Water Pump Power Modifier Curve Name + 0.9, !- Secondary Air Design Air Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 428.571428571429, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN17, !- Primary Air Inlet Node Name - Evap Cooler Outlet Node ZN17, !- Primary Air Outlet Node Name - , !- Control Type + Evap Cooler Outlet Node ZN17, !- Primary Air Outlet Node Name + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN17, !- Secondary Air Inlet Node Name - Air Loop Outlet Node ZN17, !- Sensor Node Name - Relief Air Outlet Node ZN17; !- Relief Air Inlet Node Name + Purge Air Inlet ZN17 Outlet Node, !- Secondary Air Outlet Node Name + Air Loop Outlet Node ZN17, !- Sensor Node Name + Relief Air Outlet Node ZN17, !- Relief Air Inlet Node Name + , !- Water Supply Storage Tank Name + , !- Drift Loss Fraction + ; !- Blowdown Concentration Ratio Coil:Cooling:DX:SingleSpeed, ACDXCoil ZN17, !- Name @@ -6712,17 +6802,17 @@ NO, !- 100% Outdoor Air in Heating 0.008, !- Central Cooling Design Supply Air Humidity Ratio {kgWater/kgDryAir} 0.004, !- Central Heating Design Supply Air Humidity Ratio {kgWater/kgDryAir} - DesignDay, !- Cooling Design Air Flow Method - 0, !- Cooling Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Cooling Operation {m3/s-m2} - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} - DesignDay, !- Heating Design Air Flow Method - 0, !- Heating Design Air Flow Rate {m3/s} - , !- Supply Air Flow Rate Per Floor Area During Heating Operation {m3/s-m2} - , !- Fraction of Autosized Design Heating Supply Air Flow Rate - , !- Fraction of Autosized Design Cooling Supply Air Flow Rate - , !- Design Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} + DesignDay, !- Cooling Supply Air Flow Rate Method + 0, !- Cooling Supply Air Flow Rate {m3/s} + , !- Cooling Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Cooling Fraction of Autosized Cooling Supply Air Flow Rate + , !- Cooling Supply Air Flow Rate Per Unit Cooling Capacity {m3/s-W} + DesignDay, !- Heating Supply Air Flow Rate Method + 0, !- Heating Supply Air Flow Rate {m3/s} + , !- Heating Supply Air Flow Rate Per Floor Area {m3/s-m2} + , !- Heating Fraction of Autosized Heating Supply Air Flow Rate + , !- Heating Fraction of Autosized Cooling Supply Air Flow Rate + , !- Heating Supply Air Flow Rate Per Unit Heating Capacity {m3/s-W} , !- System Outdoor Air Method 1.0, !- Zone Maximum Outdoor Air Fraction {dimensionless} CoolingDesignCapacity, !- Cooling Design Capacity Method @@ -6911,19 +7001,29 @@ EvaporativeCooler:Indirect:ResearchSpecial, Indirect Evap ZN19, !- Name On_Except_Winter_Night, !- Availability Schedule Name - 1.2, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 30, !- Recirculating Water Pump Power Consumption {W} - 1.8, !- Secondary Fan Flow Rate {m3/s} - 0.7, !- Secondary Fan Total Efficiency - 300, !- Secondary Fan Delta Pressure {Pa} + 1.2, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 30.0, !- Recirculating Water Pump Power Consumption {W} + , !- Water Pump Power Sizing Factor W /(m3/s)air + , !- Water Pump Power Modifier Curve Name + 1.8, !- Secondary Air Design Air Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 428.571428571429, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name Mixed Air Node ZN19, !- Primary Air Inlet Node Name - Evap Cooler Outlet Node ZN19, !- Primary Air Outlet Node Name - , !- Control Type + Evap Cooler Outlet Node ZN19, !- Primary Air Outlet Node Name + autosize, !- Primary Design Air Flow Rate 0.9, !- Dewpoint Effectiveness Factor Purge Air Inlet ZN19, !- Secondary Air Inlet Node Name - Air Loop Outlet Node ZN19, !- Sensor Node Name - Relief Air Outlet Node ZN19; !- Relief Air Inlet Node Name + Purge Air Inlet ZN19 Outlet Node, !- Secondary Air Outlet Node Name + Air Loop Outlet Node ZN19, !- Sensor Node Name + Relief Air Outlet Node ZN19, !- Relief Air Inlet Node Name + , !- Water Supply Storage Tank Name + , !- Drift Loss Fraction + ; !- Blowdown Concentration Ratio Coil:Cooling:DX:SingleSpeed, ACDXCoil ZN19, !- Name diff --git a/testfiles/StripMallZoneEvapCooler.idf b/testfiles/StripMallZoneEvapCooler.idf index 4d6d874e509..3794c073b27 100644 --- a/testfiles/StripMallZoneEvapCooler.idf +++ b/testfiles/StripMallZoneEvapCooler.idf @@ -4164,8 +4164,11 @@ EvaporativeCooler:Direct:ResearchSpecial, LGstore1 Direct Evaporative Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7, !- Cooler Effectiveness + 0.7, !- Cooler Design Effectiveness + , !- Effectiveness Flow Ratio Modifier Curve Name 55.0, !- Recirculating Water Pump Power Consumption {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name LGstore1 Indirect Outlet Node, !- Air Inlet Node Name LGstore1 Inlet Node, !- Air Outlet Node Name LGstore1 Inlet Node, !- Sensor Node Name @@ -4397,8 +4400,11 @@ EvaporativeCooler:Direct:ResearchSpecial, SMstore4 Evaporative Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7, !- Cooler Effectiveness + 0.7, !- Cooler Design Effectiveness + , !- Effectiveness Flow Ratio Modifier Curve Name 55.0, !- Recirculating Water Pump Power Consumption {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name SMstore4 Fan outlet, !- Air Inlet Node Name SMstore4 Inlet Node, !- Air Outlet Node Name SMstore4 Inlet Node, !- Sensor Node Name @@ -4450,17 +4456,24 @@ EvaporativeCooler:Indirect:ResearchSpecial, SMstore5 Evaporative Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7500, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio + 0.7500, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name 55.0000, !- Recirculating Water Pump Power Consumption {W} - 1.0, !- Secondary Fan Flow Rate {m3/s} - 0.6000, !- Secondary Fan Total Efficiency - 124.6000, !- Secondary Fan Delta Pressure {Pa} + , !- Water Pump Power Sizing Factor W /(m3/s)air + , !- Water Pump Power Modifier Curve Name + 1.0, !- Secondary Air Design Air Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 207.6666666666666667, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name SMstore5 Fan outlet, !- Primary Air Inlet Node Name SMstore5 Inlet Node, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9000, !- Dewpoint Effectiveness Factor SMstore5 Evap Cooler OA node, !- Secondary Air Inlet Node Name + SMstore5 Evap Cooler OA Outlet Node, !- Secondary Air Outlet Node Name SMstore5 Inlet Node, !- Sensor Node Name , !- Relief Air Inlet Node Name , !- Water Supply Storage Tank Name @@ -4626,31 +4639,42 @@ EvaporativeCooler:Indirect:ResearchSpecial, SMstore8 Indirect Evaporative Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7500, !- Cooler Maximum Effectiveness - , !- Cooler Flow Ratio - 55.0000, !- Recirculating Water Pump Power Consumption {W} - 1.0, !- Secondary Fan Flow Rate {m3/s} - 0.6000, !- Secondary Fan Total Efficiency - 124.6000, !- Secondary Fan Delta Pressure {Pa} + 0.7500, !- Cooler Wetbulb Design Effectiveness + , !- Wetbulb Effectiveness Flow Ratio Modifier Curve Name + , !- Cooler Drybulb Design Effectiveness + , !- Drybulb Effectiveness Flow Ratio Modifier Curve Name + 55.0000, !- Recirculating Water Pump Design Power {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name + 1.0, !- Secondary Air Design Air Flow Rate {m3/s} + 1.0, !- Secondary Air Flow Sizing Factor + autosize, !- Secondary Air Fan Design Power + 207.6666666666666667, !- Secondary Air Fan Sizing Specific Power W /(m3/s) + , !- Secondary Fan Power Modifier Curve Name SMstore8 Fan outlet, !- Primary Air Inlet Node Name SMstore8 Indirect Outlet Node, !- Primary Air Outlet Node Name - , !- Control Type + autosize, !- Primary Design Air Flow Rate 0.9000, !- Dewpoint Effectiveness Factor SMstore8 Evap Cooler OA node, !- Secondary Air Inlet Node Name + SMstore8 Evap Cooler OA Outlet Node, !- Secondary Air Outlet Node Name SMstore8 Inlet Node, !- Sensor Node Name , !- Relief Air Inlet Node Name , !- Water Supply Storage Tank Name 0.2, !- Drift Loss Fraction 3; !- Blowdown Concentration Ratio + OutdoorAir:Node, SMstore8 Evap Cooler OA node; !- Name EvaporativeCooler:Direct:ResearchSpecial, SMstore8 Direct Evaporative Cooler, !- Name ALWAYS_ON, !- Availability Schedule Name - 0.7, !- Cooler Effectiveness + 0.7, !- Cooler Design Effectiveness + , !- Effectiveness Flow Ratio Modifier Curve Name 55.0, !- Recirculating Water Pump Power Consumption {W} + , !- Water Pump Power Sizing Factor + , !- Water Pump Power Modifier Curve Name SMstore8 Indirect Outlet Node, !- Air Inlet Node Name SMstore8 Inlet Node, !- Air Outlet Node Name SMstore8 Inlet Node, !- Sensor Node Name diff --git a/testfiles/emall.list b/testfiles/emall.list index 9107bd1174c..963a95bd6c6 100644 --- a/testfiles/emall.list +++ b/testfiles/emall.list @@ -49,6 +49,8 @@ LgOffVAVusingBasement USA_IL_Chicago-OHare.Intl.AP.725300_TMY3 1ZoneUncontrolledFourAlgorithms USA_CO_Golden-NREL.724666_TMY3 1ZoneUncontrolledResLayers USA_CO_Golden-NREL.724666_TMY3 1ZoneWith14ControlledHeat-CoolPanels USA_CO_Golden-NREL.724666_TMY3 +1ZoneDataCenterCRAC_wPumpedDXCoolingCoil USA_CO_Golden-NREL.724666_TMY3 +2ZoneDataCenterHVAC_wEconomizer USA_IL_Chicago-OHare.Intl.AP.725300_TMY3 4ZoneWithShading_Simple_1 4ZoneWithShading_Simple_2 5Zone_Transformer USA_IL_Chicago-OHare.Intl.AP.725300_TMY3 diff --git a/tst/EnergyPlus/unit/CMakeLists.txt b/tst/EnergyPlus/unit/CMakeLists.txt index 11923c8913a..77e29813d22 100644 --- a/tst/EnergyPlus/unit/CMakeLists.txt +++ b/tst/EnergyPlus/unit/CMakeLists.txt @@ -6,6 +6,7 @@ set( test_src DataPlant.unit.cc DataZoneEquipment.unit.cc DXCoils.unit.cc + EvaporativeCoolers.unit.cc ExteriorEnergyUse.unit.cc FluidCoolers.unit.cc GroundHeatExchangers.unit.cc @@ -28,12 +29,6 @@ set( test_src ) set( test_dependencies energyplusapi -# objexx -# sqlite -# bcvtb -# epexpat -# epfmiimport -# DElight ) if(CMAKE_HOST_UNIX) @@ -43,6 +38,6 @@ if(CMAKE_HOST_UNIX) endif() # Executable name will be EnergyPlus_tests -# Execute EnergyPlus_tests --help for options using gtest runner -# Execute EnergyPlus_tests with no arguments to run all tests +# Execute energyplus_tests --help for options using gtest runner +# Execute energyplus_tests with no arguments to run all tests CREATE_TEST_TARGETS( energyplus "${test_src}" "${test_dependencies}" ) diff --git a/tst/EnergyPlus/unit/EvaporativeCoolers.unit.cc b/tst/EnergyPlus/unit/EvaporativeCoolers.unit.cc new file mode 100644 index 00000000000..065fb4b1748 --- /dev/null +++ b/tst/EnergyPlus/unit/EvaporativeCoolers.unit.cc @@ -0,0 +1,210 @@ +// EnergyPlus::Evaporative Cooler Unit Tests + +// Google Test Headers +#include + +// EnergyPlus Headers +#include +#include +#include +#include + +using namespace EnergyPlus; +using namespace EnergyPlus::CurveManager; +using namespace EnergyPlus::DataEnvironment; +using namespace EnergyPlus::Psychrometrics; + +// This could almost definitely benefit from some improvements such as a fixture to only do init once, +// but I've never used those and am just interested in stubbing this out for now + +TEST( EvaporativeCoolers, CalcSecondaryAirOutletCondition ) +{ + + EvaporativeCoolers::EvapCond.allocate( 1 ); + int const EvapCoolNum( 1 ); + EvaporativeCoolers::EvapCond( EvapCoolNum ).SecInletEnthalpy = 42000.0; + + // set up arguments + int OperatingMode( EvaporativeCoolers::None ); + Real64 AirMassFlowSec( 0.0 ); + Real64 const EDBTSec( 20.0 ); + Real64 const EWBTSec( 15.0 ); + Real64 const EHumRatSec( 0.0085 ); + Real64 QHXTotal( 0.0 ); + Real64 QHXLatent( 0.0 ); + + // make the call for zero secondary air flow rate + EvaporativeCoolers::CalcSecondaryAirOutletCondition( + EvapCoolNum, + OperatingMode, + AirMassFlowSec, + EDBTSec, + EWBTSec, + EHumRatSec, + QHXTotal, + QHXLatent + ); + + // check outputs for evap cooler set off + EXPECT_DOUBLE_EQ( EvaporativeCoolers::EvapCond( EvapCoolNum ).SecOutletEnthalpy, EvaporativeCoolers::EvapCond( EvapCoolNum ).SecInletEnthalpy ); + EXPECT_DOUBLE_EQ( 0.0, QHXLatent ); + + + // dry operating mode and non zero secondary air flow rate + OperatingMode = EvaporativeCoolers::DryFull; + AirMassFlowSec = 2.0; + QHXTotal = 10206.410750000941; + + InitializePsychRoutines(); + + // make the call for dry operating mode + EvaporativeCoolers::CalcSecondaryAirOutletCondition( + EvapCoolNum, + OperatingMode, + AirMassFlowSec, + EDBTSec, + EWBTSec, + EHumRatSec, + QHXTotal, + QHXLatent + ); + + // check outputs for dry operating condition + EXPECT_DOUBLE_EQ( 25.0, EvaporativeCoolers::EvapCond( EvapCoolNum ).SecOutletTemp ); + EXPECT_DOUBLE_EQ( 0.0, QHXLatent ); + + + // wet operating mode and non zero secondary air flow rate + OperatingMode = EvaporativeCoolers::WetFull; + AirMassFlowSec = 2.0; + QHXTotal = 10206.410750000941; + + // make the call for wet operating condition + EvaporativeCoolers::CalcSecondaryAirOutletCondition( + EvapCoolNum, + OperatingMode, + AirMassFlowSec, + EDBTSec, + EWBTSec, + EHumRatSec, + QHXTotal, + QHXLatent + ); + + // check outputs for wet operating condition + EXPECT_DOUBLE_EQ( 20.0, EvaporativeCoolers::EvapCond( EvapCoolNum ).SecOutletTemp ); + EXPECT_DOUBLE_EQ( 47103.205375000471, EvaporativeCoolers::EvapCond( EvapCoolNum ).SecOutletEnthalpy ); + EXPECT_DOUBLE_EQ( QHXTotal, QHXLatent ); + + EvaporativeCoolers::EvapCond.deallocate(); + +} + +TEST( EvaporativeCoolers, CalcIndirectRDDEvapCoolerOutletTemp ) +{ + + OutBaroPress = 101325.0; + EvaporativeCoolers::EvapCond.allocate( 1 ); + int const EvapCoolNum( 1 ); + EvaporativeCoolers::EvapCond( EvapCoolNum ).InletMassFlowRate = 1.0; + EvaporativeCoolers::EvapCond( EvapCoolNum ).InletTemp = 24.0; + EvaporativeCoolers::EvapCond( EvapCoolNum ).InletHumRat = 0.013; + EvaporativeCoolers::EvapCond( EvapCoolNum ).DryCoilMaxEfficiency = 0.8; + + // set up arguments + int DryOrWetOperatingMode( EvaporativeCoolers::DryFull ); + Real64 const AirMassFlowSec( 1.0 ); + Real64 const EDBTSec( 14.0 ); + Real64 const EWBTSec( 11.0 ); + Real64 const EHumRatSec( 0.0075 ); + + // testing full capacity in dry operating mode + EvaporativeCoolers::CalcIndirectRDDEvapCoolerOutletTemp( + EvapCoolNum, + DryOrWetOperatingMode, + AirMassFlowSec, + EDBTSec, + EWBTSec, + EHumRatSec ); + + EXPECT_DOUBLE_EQ( 16.0, EvaporativeCoolers::EvapCond( EvapCoolNum ).OutletTemp ); + + // testing full capacity in wet operating mode + DryOrWetOperatingMode = EvaporativeCoolers::WetFull; + EvaporativeCoolers::EvapCond( EvapCoolNum ).WetCoilMaxEfficiency = 0.75; + + EvaporativeCoolers::CalcIndirectRDDEvapCoolerOutletTemp( + EvapCoolNum, + DryOrWetOperatingMode, + AirMassFlowSec, + EDBTSec, + EWBTSec, + EHumRatSec ); + + EXPECT_DOUBLE_EQ( 14.25, EvaporativeCoolers::EvapCond( EvapCoolNum ).OutletTemp ); + + EvaporativeCoolers::EvapCond.deallocate( ); + +} + +TEST( EvaporativeCoolers, IndEvapCoolerPower ) +{ + + using CurveManager::Quadratic; + + int CurveNum; + + EvaporativeCoolers::EvapCond.allocate( 1 ); + int const EvapCoolNum( 1 ); + EvaporativeCoolers::EvapCond( EvapCoolNum ).IndirectFanPower = 200.0; + EvaporativeCoolers::EvapCond( EvapCoolNum ).IndirectRecircPumpPower = 100.0; + + // set up arguments + int DryWetMode( EvaporativeCoolers::DryFull ); + Real64 FlowRatio( 1.0 ); + + CurveNum = 1; + EvaporativeCoolers::EvapCond( EvapCoolNum ).FanPowerModifierCurveIndex = CurveNum; + + NumCurves = 1; + PerfCurve.allocate( 1 ); + PerfCurve( CurveNum ).CurveType = Quadratic; + PerfCurve( CurveNum ).ObjectType = CurveType_Quadratic; + PerfCurve( CurveNum ).InterpolationType = EvaluateCurveToLimits; + PerfCurve( CurveNum ).Coeff1 = 0.0; + PerfCurve( CurveNum ).Coeff2 = 1.0; + PerfCurve( CurveNum ).Coeff3 = 0.0; + PerfCurve( CurveNum ).Coeff4 = 0.0; + PerfCurve( CurveNum ).Coeff5 = 0.0; + PerfCurve( CurveNum ).Coeff6 = 0.0; + PerfCurve( CurveNum ).Var1Min = 0.0; + PerfCurve( CurveNum ).Var1Max = 1.0; + PerfCurve( CurveNum ).Var2Min = 0; + PerfCurve( CurveNum ).Var2Max = 0; + + // make the call for dry full load operating condition + EvaporativeCoolers::EvapCond( EvapCoolNum ).EvapCoolerPower = EvaporativeCoolers::IndEvapCoolerPower( + EvapCoolNum, + DryWetMode, + FlowRatio ); + + // check outputs for dry full load operating condition + EXPECT_EQ( 200.0, EvaporativeCoolers::EvapCond( EvapCoolNum ).EvapCoolerPower ); + + // set up arguments for wet modulated operating condition + DryWetMode = EvaporativeCoolers::WetModulated; + FlowRatio = 0.5; + EvaporativeCoolers::EvapCond( EvapCoolNum ).PartLoadFract = 0.5; + + // make the call for wet modulated operating condition + EvaporativeCoolers::EvapCond( EvapCoolNum ).EvapCoolerPower = EvaporativeCoolers::IndEvapCoolerPower( + EvapCoolNum, + DryWetMode, + FlowRatio ); + + // check outputs for wet modulated operating condition + EXPECT_EQ( 150.0, EvaporativeCoolers::EvapCond( EvapCoolNum ).EvapCoolerPower ); + + EvaporativeCoolers::EvapCond.deallocate( ); + PerfCurve.deallocate( ); +} diff --git a/tst/EnergyPlus/unit/PurchasedAirManager.unit.cc b/tst/EnergyPlus/unit/PurchasedAirManager.unit.cc index beb17feafcb..5a87b9ced9a 100644 --- a/tst/EnergyPlus/unit/PurchasedAirManager.unit.cc +++ b/tst/EnergyPlus/unit/PurchasedAirManager.unit.cc @@ -40,6 +40,7 @@ TEST( SizePurchasedAirTest, Test1 ) ZoneEqSizing.allocate( 1 ); CurZoneEqNum = 1; ZoneEqSizing( CurZoneEqNum ).SizingMethod.allocate( 24 ); + CurSysNum = 0; FinalZoneSizing.allocate(1); FinalZoneSizing( CurZoneEqNum ).DesHeatVolFlow = 1.0;