CONTINUOUS_MODEL CCSIM ABSTRACT " Purpose: This NMF model is to model a counterflow crossflow cooling coil. The model accounts for condensation on the outside surface. Three conditions are possible: all wet, partially wet or all dry. Limits: General application is for heat exchanger with four or more rows in a counterflow configuration. Approximates part-wet operation as either fully wet or fully dry. Constant UA. Reference: ASHRAE HVAC 2 TOOLKIT pages 4-49 - 4-58 Date: April 10, 1997 rev 1.0 Made by: Jari Hyttinen Call: ENTHAL ENTHSAT HUMTH DRYBULB DEWPNT UAHX BYPASS DRYCOIL WETCOIL Rev. CoilDry mode is introduced and some recontruction has been done. History (in reverse order): 011019 LEn Bug in linear relation between massflow and pressure. Coefficient k_lin changed from SQRT(dP0*k) to 1.0/SQRT(dP0*k). " EQUATIONS TDewPt := DEWPNT (WAirIn); CALL DRYCOIL(MLiq,TLiqIn,MAir,TAirIn,WAirIn, UATot,ConfigHX,dryTLiqOut,dryTAirOut, dryWAirOut,dryQTot,ErrStat3); IF ErrStat3 > 0.5 THEN CALL NMF_ERROR ("DRYCOIL calculation failed") END_IF; CALL WETCOIL (MLiq,TLiqIn,MAir,TAirIn,WAirIn, UAInt,UAExt,ConfigHX,TLiq,TAir,WAir, QTot,QSen,FWet,TSurfEnt,ErrStat4); IF ErrStat4 > 0.5 THEN CALL NMF_ERROR ("WETCOIL calculation failed") END_IF; TAirOut = CoilDry * dryTAirOut + (1-CoilDry) * TAir; TLiqOut = CoilDry * dryTLiqOut + (1-CoilDry) * TLiq; QTotOut := CoilDry * dryQTot + (1-CoilDry) * QTot; QSenOut := CoilDry * dryQTot + (1-CoilDry) * QSen; WAirOut = CoilDry * dryWAirOut + (1-CoilDry) * WAir; FWetOut := CoilDry * 0 + (1-CoilDry) * FWet; /* Pressure related */ dP := PAirIn - PAirOut; MAir = IF LINEARIZE(1) THEN dP/k ELSE_IF dP < dP0 THEN k_lin * dP ELSE SQRT(dP/k) END_IF; /* Pollutation related */ /* Mode */ CoilDry:= IF ((TDewPt < TLiqIn) OR (Event(G0,TDewPt - TSurfEnt) < 0 AND (dryQTot > QTot))) THEN 1 ELSE 0 END_IF; LINKS /* type name variables .... */ UniAir AirFlowIn PAirIn, POS_IN mAir, TAirIn, XAir, WAirIn; UniAir AirFlowOut PAirOut, POS_OUT mAir, TAirOut, XAir, WAirOut; PMT LiqFlowIn PLiq, POS_IN mLiq, TLiqIn; PMT LiqFlowOut PLiq, POS_OUT mLiq, TLiqOut; VARIABLES /* type name role def min max description*/ Pressure PAirIn IN 101300 SMALL BIG "Pressure of entering air" Pressure PAirOut OUT 101299 SMALL BIG "Pressure of leaving air" Pressure PLiq IN 1000 SMALL BIG "Pressure of liquid" MassFlow mAir IN 3.2 0 BIG "Dry air massflow rate" MassFlow mLiq IN 4.2 0 BIG "Liquid massflow rate" Temp TAirIn IN 25 ABS_ZERO BIG "Temp of entering air" Temp TAir LOC 11.029 ABS_ZERO BIG "Temp of leaving air" Temp TLiqIn IN 5.556 ABS_ZERO BIG "Temp of entering liquid" Temp TLiq LOC 9.166 ABS_ZERO BIG "Temp of leaving liquid" HumRatio WAirIn IN 0.01 0 BIG "Humidity ratio of entering air" HumRatio WAir LOC 0.008 0 BIG "Humidity ratio of leaving air" HeatFlux QTot LOC 63345 0 BIG "Total heat transfer rate" HeatFlux QSen LOC 45823 0 BIG "Sensible heat transfer rate" Fraction_y XAir IN 0 0 BIG "Pollutant fraction" Fraction_y FWet LOC 1 0 BIG "Fraction of surface area wet" Temp TAirOut OUT 11.02 ABS_ZERO BIG "Temp of leaving air, output" Temp TLiqOut OUT 9.16 ABS_ZERO BIG "Temp of leaving liquid, output" HeatFlux QTotOut LOC 63345 0 BIG "Total heat transfer rate, output" HeatFlux QSenOut LOC 45823 0 BIG "Sensible heat transfer rate, output" HumRatio WAirOut OUT 0.008 SMALL BIG "Humidity ratio of leaving air, output" Fraction FWetOut LOC 1 0 BIG "Fraction of surface area wet" Pressure dP LOC 1 SMALL BIG "Pressure difference of air stream" Temp TDewPt LOC 13.88 ABS_ZERO BIG "Dewpoint Temperature" Temp TSurfEnt LOC 14.20 ABS_ZERO BIG "Coil surface temp at air entrance" Temp dryTAirOut LOC 9.58 ABS_ZERO BIG "Temp of leaving air in dry coil" Temp dryTLiqOut LOC 8.43 ABS_ZERO BIG "Temp of leaving liquid in dry coil" HumRatio dryWAirOut LOC .01 0 BIG "Humidity ratio of leaving air in dry coil" HeatFlux dryQTot LOC 50516 0 BIG "Total heat transfer rate in dry coil" Factor ErrStat3 LOC 0 0 1 "Error status indicator" Factor ErrStat4 LOC 0 0 1 "Error status indicator" Generic CoilDry A_S 0 0 1 "Coil status indicator (=1 if coil is dry)" GENERIC G0 A_S 0 0 1 "Memory of coil status" PARAMETERS /* type name role def min max description */ HeatCapM cpLiq S_P 4187 SMALL BIG "Liquid specific heat" Factor ConfigHX S_P 1 0 6 "Coil configuration 0 independent of configuration 1 counterflow 2 parallel flow 3 cross flow, both streams unmixed 4 cross flow, both streams mixed 5 cross flow, stream 1 unmixed 6 cross flow, stream 2 unmixed" HeatFlux QTotRat S_P 88000 -BIG BIG "Total heat transfer at rating" HeatFlux QSenRat S_P 66000 -BIG BIG "Sensible heat transfer at rating" MassFlow MLiqRat S_P 4.2 SMALL BIG "Liquid mass flow at rating" Temp TLiqRat S_P 5.5556 ABS_ZERO BIG "Entering water temp at rating" MassFlow MAirRat S_P 6.4 SMALL BIG "Dry air mass flow at rating" Temp TAirRat S_P 26.6667 ABS_ZERO BIG "Inlet air temp at rating" HumRatio WAirRat S_P .0112 SMALL BIG "Inlet air humidity ratio at rating" Factor ErrStat1 C_P 0 0 1 "Error status indicator" Factor ErrStat2 C_P 0 0 1 "Error status indicator" Enthalpy hAirRat C_P 55377 -BIG BIG "Inlet air enthalpy at rating" Enthalpy hLiqRatSat C_P 19845 -BIG BIG "Saturated enthalpy at liquid temp" Enthalpy hAirLvgRat C_P 41627 -BIG BIG "Outlet air enthalpy at rating" HumRatio WAirLvgRat C_P .985E-2 0 BIG "Outlet air humidity ratio at rating" Temp TAirLvgRat C_P 16.59 ABS_ZERO BIG "Outlet air temp at rating" Temp TDewRat C_P 15.6 ABS_ZERO BIG "Inlet air dewpoint at rating" HeatCapM cpSat C_P 2406 SMALL BIG "Specifig heat of saturated air" CapRate capAirH C_P 6.4 SMALL BIG "Enthalpy-based air-side capacity rate" CapRate capLiqH C_P 7.308 SMALL BIG "Enthalpy-based liquid-side capacity rate" HeatCond UAH C_P 3.889 0 BIG "Enthalpy-based overall heat transfer coefficient" Temp TAdpRat C_P 12.87 ABS_ZERO BIG "Apparatus dewpoint temperature" HumRatio WAdpRat C_P .935E-2 0 BIG "Apparatus dewpoint humidity ratio" Enthalpy hAdpRat C_P 36553 -BIG BIG "Air enthalpy at apparatus dewpoint" Factor bfRat C_P .2695 0 BIG "Bypass factor" HeatCond UAExt C_P 8467 SMALL BIG "Overall external UA/total external area" HeatCond UAInt C_P 17401 SMALL BIG "Overall internal UA/total external area" HeatCond UATot C_P 5696 SMALL BIG "Overall heat transfer coefficient" /* Pressure related */ Pressure dPRate S_P 60 SMALL BIG "Pressure difference at given rate" Pressure dP0 S_P .1 SMALL BIG "Limit for linear flow" Generic k C_P .5905 SMALL BIG "Powerlaw coefficient" Generic k_lin C_P .243 SMALL BIG "Laminar coefficient" PARAMETER_PROCESSING /* Calculate properties of air and liquid at rating */ hAirRat := ENTHAL (TAirRat,WAirRat); hLiqRatSat := ENTHSAT (TLiqRat); /* Calculate leaving air states at rating */ hAirLvgRat := hAirRat-QTotRat/MAirRat; wAirLvgRat := HUMTH (TAirRat,(hAirRat-(QTotRat-QSenRat)/MAirRat)); tAirLvgRat := DRYBULB (hAirLvgRat,wAirLvgRat); /* Estimate cpSat using inlet air dewpoint and water temp */ TDewRat := DEWPNT (WAirRat); cpSat := (ENTHSAT (TDewRat)-hLiqRatSat)/(TDewRat-TLiqRat); /* Calculate overall heat transfer coefficient */ capAirH := mAirRat; CapLiqH := mLiqRat*CpLiq/cpSat; UAH := UAHX (capAirH,hAirRat,capLiqH,hLiqRatSat,QTotRat,ConfigHX,ErrStat1); IF ErrStat1 > 0.5 THEN CALL NMF_ERROR ("UA calculation failed") END_IF; /* Determine air-side coefficient, UAExt, assuming that the surface */ /* temperature is at the apparatus dewpoint temperature */ CALL BYPASS (TAirRat,WAirRat,TAirLvgRat,WAirLvgRat, TAdpRat,WAdpRat,bfRat,ErrStat2); IF ErrStat2 > 0.5 THEN CALL NMF_ERROR ("BYPASS calculation failed") END_IF; hAdpRat := ENTHAL (TAdpRat,WAdpRat); UAExt := IF hAdpRat > hLiqRatSat THEN -LOG(bfRat)*(mAirRat*Cp_Air + WAirRat*Cp_Vap) ELSE UAH*Cp_Air END_IF; /* Calculate liquid-side coefficient, UAInt, from enthalpy-based */ /* overall coefficient and air-side coefficient */ UAInt := cpSat/(1/UAH - Cp_Air/UAExt); UATot := 1/(1/UAExt + 1/UAInt); /* Pressure related */ k:= dPRate / (MAirRat)**2 ; /* k_lin:= SQRT(dP0*k) ; */ k_lin:= 1.0/SQRT(dP0*k) ; END_MODEL