Refrigeration Compressor Energy Use subcooling not using correct enthalpy for capacity correction
This is my post in github describing this bug:
https://github.com/NREL/EnergyPlus/is...
The short version here is that the subcooler in the refrigeration module does not work correctly as the compressor is coded with an equation that uses the incorrect enthalpy. This is the equation from the documentation:
And this is the references of the numbers in the refrigeration cycle:
So h_4 is the enthalpy AFTER an optional subcooler of any kind. But in the transcritical refrigeration cycle there is a subcooler (As a suction line heat exchanger, in my case I am modifying it to get a mechanical subcooler). This subcooler uses the two following lines of code for the capacity corrected:
TotalEnthalpyChangeActualMT = this->HCompInHP - GasCooler(this->GasCoolerNum(1)).HGasCoolerOut;
CapacityCorrectionMT = MassCorrectionMT * TotalEnthalpyChangeActualMT / CaseEnthalpyChangeRatedMT;
As you can see, HGasCoolerout is not h_4, its h_3b. Thus the effect of this bug is not getting any change in the capacity nor electricity consumption when using the subcooler of the transcritical cycle.
The fix is simple as in another part of the code the massflow is correctly calculated using h_4 as:
GasCooler(this->GasCoolerNum(1)).HGasCoolerOut + this->DelHSubcoolerDis
Where "DelHSubcoolerDis" is the removal of heat (in J/kg) that the subcooler applies after the Gas Cooler.
If anyone has used the transcritical cycle gas cooler and found, or not, this issue, I am glad to get feedback out of it or to offer this issue overview and what I think fixes it.