Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Coil leaving air humidity ratio in Coil Sizing Summary shows wrong unit (temperature) #7571

Merged
merged 15 commits into from
Jan 12, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion idd/Energy+.idd.in
Original file line number Diff line number Diff line change
Expand Up @@ -355,7 +355,6 @@
! hr
! J/J
! kg/kg
! kg-H2O/kg-air
! kgWater/kgDryAir
! kmol
! kmol/s
Expand Down
14 changes: 7 additions & 7 deletions src/EnergyPlus/DXCoils.cc
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@ namespace DXCoils {
Real64 const RatedOutdoorWetBulbTempHeat(6.11); // 6.11 C or 43F
Real64 const RatedInletWetBulbTempHeat(15.55); // 15.55 or 60F

Real64 const DryCoilOutletHumRatioMin(0.00001); // dry coil outlet minimum hum ratio kgH2O/kgdry air
Real64 const DryCoilOutletHumRatioMin(0.00001); // dry coil outlet minimum hum ratio kgWater/kgDryAir

// Curve Types
int const Linear(1);
Expand Down Expand Up @@ -9272,8 +9272,8 @@ namespace DXCoils {
if (DXCoil(DXCoilNum).CondenserType(Mode) == EvapCooled) {
//******************
// WATER CONSUMPTION IN m3 OF WATER FOR DIRECT
// H2O [m3/sec] = Delta W[KgH2O/Kg air]*Mass Flow Air[Kg air]
// /RhoWater [kg H2O/m3 H2O]
// H2O [m3/s] = Delta W[kgWater/kgDryAir]*Mass Flow Air[kgDryAir/s]
// /RhoWater [kgWater/m3]
//******************
RhoWater = RhoH2O(OutdoorDryBulb);
DXCoil(DXCoilNum).EvapWaterConsumpRate =
Expand Down Expand Up @@ -10955,8 +10955,8 @@ namespace DXCoils {
if (DXCoil(DXCoilNum).CondenserType(Mode) == EvapCooled) {
//******************
// WATER CONSUMPTION IN m3 OF WATER FOR DIRECT
// H2O [m3/sec] = Delta W[KgH2O/Kg air]*Mass Flow Air[Kg air]
// /RhoWater [kg H2O/m3 H2O]
// H2O [m3/s] = Delta W[kgWater/kgDryAir]*Mass Flow Air[kgDryAir/s]
// /RhoWater [kgWater/m3]
//******************
RhoWater = RhoH2O(OutdoorDryBulb);
DXCoil(DXCoilNum).EvapWaterConsumpRate = (CondInletHumRat - OutdoorHumRat) * CondAirMassFlow / RhoWater;
Expand Down Expand Up @@ -12463,8 +12463,8 @@ namespace DXCoils {
if (DXCoil(DXCoilNum).CondenserType(DXMode) == EvapCooled) {
//******************
// WATER CONSUMPTION IN m3 OF WATER FOR DIRECT
// H2O [m3/sec] = Delta W[KgH2O/Kg air]*Mass Flow Air[Kg air]
// /RhoWater [kg H2O/m3 H2O]
// H2O [m3/s] = Delta W[kgWater/kgDryAir]*Mass Flow Air[kgDryAir/s]
// /RhoWater [kgWater/m3]
//******************
RhoWater = RhoH2O(OutdoorDryBulb);
DXCoil(DXCoilNum).EvapWaterConsumpRate = (CondInletHumRat - OutdoorHumRat) * CondAirMassFlow / RhoWater;
Expand Down
2 changes: 1 addition & 1 deletion src/EnergyPlus/DXCoils.hh
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ namespace DXCoils {
extern Real64 const RatedOutdoorWetBulbTempHeat; // 6.11 C or 43F
extern Real64 const RatedInletWetBulbTempHeat; // 15.55 or 60F

extern Real64 const DryCoilOutletHumRatioMin; // dry coil outlet minimum hum ratio kgH2O/kgdry air
extern Real64 const DryCoilOutletHumRatioMin; // dry coil outlet minimum hum ratio kgWater/kgDryAir

// Curve Types
extern int const Linear;
Expand Down
4 changes: 2 additions & 2 deletions src/EnergyPlus/DataGenerators.hh
Original file line number Diff line number Diff line change
Expand Up @@ -164,14 +164,14 @@ namespace DataGenerators {
Real64 PfuelCompEl; // fuel compressor power
Real64 QskinLoss; // pumping losses for zone
Real64 CO2ProductGasCoef; // molar multiplier for stoic products of this fuel
Real64 H20ProductGasCoef; // molar multiplier for stoic products of this fuel
Real64 H2OProductGasCoef; // molar multiplier for stoic products of this fuel

// Default Constructor
GeneratorFuelSupplyDataStruct()
: FuelTempMode(0), FuelTypeMode(0), NodeNum(0), SchedNum(0), CompPowerCurveID(0), CompPowerLossFactor(0.0), ConstitName(14),
ConstitMolalFract(14, 0.0), GasLibID(14, 0), LHV(0.0), LHVJperkg(0.0), LHVliquid(0.0), HHV(0.0), MW(0.0), eCO2(0.0),
KmolPerSecToKgPerSec(0.0), StoicOxygenRate(0.0), TfuelIntoCompress(0.0), TfuelIntoFCPM(0.0), PfuelCompEl(0.0), QskinLoss(0.0),
CO2ProductGasCoef(0.0), H20ProductGasCoef(0.0)
CO2ProductGasCoef(0.0), H2OProductGasCoef(0.0)
{
}
};
Expand Down
20 changes: 10 additions & 10 deletions src/EnergyPlus/DataSizing.hh
Original file line number Diff line number Diff line change
Expand Up @@ -338,8 +338,8 @@ namespace DataSizing {
Real64 HeatDesTemp; // zone design heating supply air temperature [C]
Real64 CoolDesTempDiff; // zone design cooling supply air temperature difference [deltaC]
Real64 HeatDesTempDiff; // zone design heating supply air temperature difference [deltaC]
Real64 CoolDesHumRat; // zone design cooling supply air humidity ratio [kg-H2O/kg-air]
Real64 HeatDesHumRat; // zone design heating supply air humidity ratio [kg-H2O/kg-air]
Real64 CoolDesHumRat; // zone design cooling supply air humidity ratio [kgWater/kgDryAir]
Real64 HeatDesHumRat; // zone design heating supply air humidity ratio [kgWater/kgDryAir]
std::string DesignSpecOAObjName; // name of the design specification outdoor air object
int OADesMethod; // choice of how to calculate minimum outside air;
// 1 = m3/s per person; 2 = m3/s per zone; 3 = m3/s per zone area;
Expand Down Expand Up @@ -409,8 +409,8 @@ namespace DataSizing {
Real64 HeatDesTemp; // zone design heating supply air temperature [C]
Real64 CoolDesTempDiff; // zone design cooling supply air temperature difference [deltaC]
Real64 HeatDesTempDiff; // zone design heating supply air temperature difference [deltaC]
Real64 CoolDesHumRat; // zone design cooling supply air humidity ratio [kg-H2O/kg-air]
Real64 HeatDesHumRat; // zone design heating supply air humidity ratio [kg-H2O/kg-air]
Real64 CoolDesHumRat; // zone design cooling supply air humidity ratio [kgWater/kgDryAir]
Real64 HeatDesHumRat; // zone design heating supply air humidity ratio [kgWater/kgDryAir]
int ZoneDesignSpecOAIndex; // index to DesignSpecification:OutdoorAir object
int OADesMethod; // choice of how to calculate minimum outside air;
// 1 = m3/s per person; 2 = m3/s per zone; 3 = m3/s per zone area;
Expand Down Expand Up @@ -569,15 +569,15 @@ namespace DataSizing {
Real64 DOASLatAdd; // current latent heat addition rate from DOAS supply air [W]
Real64 DOASSupMassFlow; // current mass flow rate of DOAS supply air [kg/s]
Real64 DOASSupTemp; // current DOAS supply air temperature [C]
Real64 DOASSupHumRat; // current DOAS supply air humidity ratio [kg H2O / kg dry air]
Real64 DOASSupHumRat; // current DOAS supply air humidity ratio [kgWater/kgDryAir]
Real64 DOASTotCoolLoad; // current total cooling load imposed by DOAS supply air [W]
Array1D<Real64> DOASHeatLoadSeq; // daily sequence of zone DOAS heating load (zone time step) [W]
Array1D<Real64> DOASCoolLoadSeq; // daily sequence of zone DOAS cooling load (zone time step) [W]
Array1D<Real64> DOASHeatAddSeq; // daily sequence of zone DOAS heat addition rate (zone time step) [W]
Array1D<Real64> DOASLatAddSeq; // daily sequence of zone DOAS latent heat addition rate (zone time step) [W]
Array1D<Real64> DOASSupMassFlowSeq; // daily sequence of zone DOAS supply mass flow rate (zone time step) [Kg/s]
Array1D<Real64> DOASSupTempSeq; // daily sequence of zone DOAS supply temperature (zone time step) [C]
Array1D<Real64> DOASSupHumRatSeq; // daily sequence of zone DOAS supply humidity ratio (zone time step) [kg H2O / kg dry air]
Array1D<Real64> DOASSupHumRatSeq; // daily sequence of zone DOAS supply humidity ratio (zone time step) [kgWater/kgDryAir]
Array1D<Real64> DOASTotCoolLoadSeq; // daily sequence of zone DOAS total cooling load (zone time step) [W]

// Default Constructor
Expand Down Expand Up @@ -664,9 +664,9 @@ namespace DataSizing {
Real64 OAVolFlow; // design outside air flow for zone equipment unit [m3/s]
Real64 ATMixerVolFlow; // design ventilation air flow rate from air terminal mixer (central DOAS) [m3/s]
Real64 ATMixerCoolPriDryBulb; // design ventilation drybulb temperature from air terminal mixer during cooling (central DOAS) [C]
Real64 ATMixerCoolPriHumRat; // design ventilation humidity ratio from air terminal mixer during cooling (central DOAS) [kgH20/kgDryAir]
Real64 ATMixerCoolPriHumRat; // design ventilation humidity ratio from air terminal mixer during cooling (central DOAS) [kgWater/kgDryAir]
Real64 ATMixerHeatPriDryBulb; // design ventilation drybulb temperature from air terminal mixer during heating (central DOAS) [C]
Real64 ATMixerHeatPriHumRat; // design ventilation humidity ratio from air terminal mixer during heating (central DOAS) [kgH20/kgDryAir]
Real64 ATMixerHeatPriHumRat; // design ventilation humidity ratio from air terminal mixer during heating (central DOAS) [kgWater/kgDryAir]
Real64 DesCoolingLoad; // design cooling load used for zone equipment [W]
Real64 DesHeatingLoad; // design heating load used for zone equipment [W]
Real64 CoolingAirVolFlow; // design cooling air vol flow rate for equipment[m3/s]
Expand All @@ -691,9 +691,9 @@ namespace DataSizing {
: AirVolFlow(0.0), MaxHWVolFlow(0.0), MaxCWVolFlow(0.0), OAVolFlow(0.0),
ATMixerVolFlow(0.0), // design ventilation air flow rate from air terminal mixer (central DOAS) [m3/s]
ATMixerCoolPriDryBulb(0.0), // design air terminal mixer cooling outlet temperature [C]
ATMixerCoolPriHumRat(0.0), // design air terminal mixer cooling outlet humidity ratio [kgH20/kgDryAir]
ATMixerCoolPriHumRat(0.0), // design air terminal mixer cooling outlet humidity ratio [kgWater/kgDryAir]
ATMixerHeatPriDryBulb(0.0), // design air terminal mixer heating outlet temperature [C]
ATMixerHeatPriHumRat(0.0), // design air terminal mixer heating outlet humidity ratio [kgH20/kgDryAir]
ATMixerHeatPriHumRat(0.0), // design air terminal mixer heating outlet humidity ratio [kgWater/kgDryAir]
DesCoolingLoad(0.0), // design cooling load used for zone equipment [W]
DesHeatingLoad(0.0), // design heating load used for zone equipment [W]
CoolingAirVolFlow(0.0), // design cooling air vol flow rate for equipment[m3/s]
Expand Down
2 changes: 1 addition & 1 deletion src/EnergyPlus/EconomicLifeCycleCost.cc
Original file line number Diff line number Diff line change
Expand Up @@ -2559,7 +2559,7 @@ namespace EconomicLifeCycleCost {
columnHead(8) = "cons";
columnHead(9) = "slvg";
columnHead(10) = "oCap";
columnHead(11) = "H20";
columnHead(11) = "H2O";
columnHead(12) = "ene";
columnHead(13) = "tEne";
columnHead(14) = "tOpr";
Expand Down
22 changes: 11 additions & 11 deletions src/EnergyPlus/EvaporativeCoolers.cc
Original file line number Diff line number Diff line change
Expand Up @@ -1739,8 +1739,8 @@ namespace EvaporativeCoolers {
EvapCond(EvapCoolNum).EvapCoolerPower += PartLoadRatio * EvapCond(EvapCoolNum).RecircPumpPower;
//******************
// WATER CONSUMPTION IN m3 OF WATER FOR DIRECT
// H2O [m3/sec] = Delta W[KgH2O/Kg air]*Mass Flow Air[Kg air]
// /RhoWater [kg H2O/m3 H2O]
// H2O [m3/s] = Delta W[kgWater/kDryAir]*Mass Flow Air[kgDryAir/s]
// /RhoWater [kgWater/m3]
//******************
RhoWater = RhoH2O(EvapCond(EvapCoolNum).OutletTemp);
EvapCond(EvapCoolNum).EvapWaterConsumpRate =
Expand Down Expand Up @@ -1897,9 +1897,9 @@ namespace EvaporativeCoolers {
EvapCond(EvapCoolNum).EvapCoolerPower += PartLoadRatio * EvapCond(EvapCoolNum).IndirectRecircPumpPower;

//******************
// WATER CONSUMPTION IN LITERS OF WATER FOR DIRECT
// H2O [m3/sec] = Delta W[KgH2O/Kg air]*Mass Flow Air[Kg air]
// /RhoWater [kg H2O/m3 H2O]
// WATER CONSUMPTION IN m3 OF WATER FOR DIRECT
// H2O [m3/s] = Delta W[kgWater/kgDryAir]*Mass Flow Air[kgDryAir/s]
// /RhoWater [kgWater/m3]
//******************
RhoWater = RhoH2O(TDBSec);
RhoAir =
Expand Down Expand Up @@ -2054,8 +2054,8 @@ namespace EvaporativeCoolers {
EvapCond(EvapCoolNum).EvapCoolerPower += PartLoadRatio * EvapCond(EvapCoolNum).IndirectRecircPumpPower;

//******************
// 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])
// WATER CONSUMPTION IN m3 OF WATER FOR Wet InDIRECT
// H2O [m3/s] = (QHX [J/s])/(2,500,000 [J/kgWater] * RhoWater [kgWater/m3])
//******************
//***** FIRST calculate the heat exchange on the primary air side**********
RhoAir = PsyRhoAirFnPbTdbW(OutBaroPress, EvapCond(EvapCoolNum).InletTemp, EvapCond(EvapCoolNum).InletHumRat);
Expand Down Expand Up @@ -2397,8 +2397,8 @@ namespace EvaporativeCoolers {

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])
// WATER CONSUMPTION IN m3 OF WATER FOR Wet InDIRECT
// H2O [m3/s] = (QHX [J/s])/(2,500,000 [J/kgWater] * RhoWater [kgWater/m3])
//******************
//***** FIRST calculate the heat exchange on the primary air side**********
RhoAir = PsyRhoAirFnPbTdbW(OutBaroPress, EvapCond(EvapCoolNum).InletTemp, EvapCond(EvapCoolNum).InletHumRat);
Expand Down Expand Up @@ -3373,8 +3373,8 @@ namespace EvaporativeCoolers {
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]
// /RhoWater [kg H2O/m3 H2O]
// H2O [m3/s] = Delta W[kgWater/kgDryAir]*Mass Flow Air[kgDryAir]
// /RhoWater [kgWater/m3]
//******************
RhoWater = RhoH2O(EvapCond(EvapCoolNum).OutletTemp);
EvapVdot = (EvapCond(EvapCoolNum).OutletHumRat - EvapCond(EvapCoolNum).InletHumRat) * EvapCond(EvapCoolNum).InletMassFlowRate / RhoWater;
Expand Down
14 changes: 7 additions & 7 deletions src/EnergyPlus/FuelCellElectricGenerator.cc
Original file line number Diff line number Diff line change
Expand Up @@ -1696,13 +1696,13 @@ namespace FuelCellElectricGenerator {
Real64 NdotCO2ProdGas = this->FCPM.NdotFuel * DataGenerators::FuelSupply(this->FuelSupNum).CO2ProductGasCoef;

// Water from reaction
Real64 NdotH20ProdGas = this->FCPM.NdotFuel * DataGenerators::FuelSupply(this->FuelSupNum).H20ProductGasCoef;
Real64 NdotH2OProdGas = this->FCPM.NdotFuel * DataGenerators::FuelSupply(this->FuelSupNum).H2OProductGasCoef;

// set product gas constituent fractions (assume five usual components)
Real64 NdotCO2 = 0.0; // temp CO2 molar rate coef product gas stream
Real64 NdotN2 = 0.0; // temp Nitrogen rate coef product gas stream
Real64 Ndot02 = 0.0; // temp Oxygen rate coef product gas stream
Real64 NdotH20 = 0.0; // temp Water rate coef product gas stream
Real64 NdotH2O = 0.0; // temp Water rate coef product gas stream
Real64 NdotAr = 0.0; // temp Argon rate coef product gas stream

// Product gas constituents are fixed (not a user defined thing)
Expand All @@ -1725,8 +1725,8 @@ namespace FuelCellElectricGenerator {
Ndot02 = NdotExcessAir * this->AirSup.ConstitMolalFract(thisGas);

} else if (SELECT_CASE_var == 4) {
// all the H20 coming in plus the new H20 from reactions and the H20 from water used in reforming
NdotH20 = NdotH20ProdGas + this->AirSup.ConstitMolalFract(thisGas) * this->FCPM.NdotAir;
// all the H2O coming in plus the new H2O from reactions and the H2O from water used in reforming
NdotH2O = NdotH2OProdGas + this->AirSup.ConstitMolalFract(thisGas) * this->FCPM.NdotAir;

} else if (SELECT_CASE_var == 5) {
// all the argon coming in.
Expand All @@ -1737,7 +1737,7 @@ namespace FuelCellElectricGenerator {
}
}

this->FCPM.NdotProdGas = NdotCO2 + NdotN2 + Ndot02 + NdotH20 + NdotAr;
this->FCPM.NdotProdGas = NdotCO2 + NdotN2 + Ndot02 + NdotH2O + NdotAr;

// now that we have the total, figure molar fractions

Expand All @@ -1749,8 +1749,8 @@ namespace FuelCellElectricGenerator {
// all the oxygen in the excess air stream
this->FCPM.ConstitMolalFract(3) = Ndot02 / this->FCPM.NdotProdGas;

// all the H20 comming in plus the new H20 from reactions and the H20 from water used in reforming
this->FCPM.ConstitMolalFract(4) = NdotH20 / this->FCPM.NdotProdGas;
// all the H2O comming in plus the new H2O from reactions and the H2O from water used in reforming
this->FCPM.ConstitMolalFract(4) = NdotH2O / this->FCPM.NdotProdGas;

// all the argon coming in.
this->FCPM.ConstitMolalFract(5) = NdotAr / this->FCPM.NdotProdGas;
Expand Down
2 changes: 1 addition & 1 deletion src/EnergyPlus/FuelCellElectricGenerator.hh
Original file line number Diff line number Diff line change
Expand Up @@ -413,7 +413,7 @@ namespace FuelCellElectricGenerator {
Real64 HXenergy; // energy from gas stream to water [J]
Real64 THXexh; // temperature of exhaust gases leaving heat exchanger.
Real64 WaterVaporFractExh; // water vapor fraction in exhaust gas stream
// relative to water vapor entering HX (NdotH20/Ndoaux-mix)
// relative to water vapor entering HX (NdotH2O/Ndoaux-mix)
Real64 CondensateRate; // water condensation rate [kmol/s]
int SeqSubstIterations; // number of iterations in SOFC loop
int RegulaFalsiIterations; // number of iterations in Tproduct gas solving
Expand Down
Loading